Skip to main content

This content has been archived and is no longer being updated. Links may not function; however, this content may be relevant to outdated versions of the product.

Support Article

Unable to start multiple instances of VBD and GG on same system

SA-2158

Summary



After upgrading to DSM PRPC v6.2SP2, user has noticed VBD deployment failing.

User has raised following additional queries -
1. Why is “/vbd” has context-root specified in application.xml however in weblogic.xml it is "/cxvbd" ?
2. Why GridKer%null are we missing any settings?
3. Is [NamingHelper] JNDI InitialContext properties supposed to be empty{}?
4. Why the actual record contains no records?
5. Why the vbdDataSource has been closed?

Error Messages



Following error occurred during activation of changes -
[16:19:03,570][INFO ][gridgain-#9%null%][ActualsDataSource] Actuals data source now contains 0 records
<2014-09-26 16:23:24,939> <Info> <Health> <BEA-310002> <86% of the total memory in the server is free>
<2014-09-26 16:25:57,573> <Info> <JDBC> <BEA-001128> <Connection for pool "vbdDataSource" has been closed.>

Steps to Reproduce



User upgraded the deployment environment which appears to have gone well.
A few days later they had restarted the server and VBD could not start.

Root Cause



From the log files, it was evident that user was running multiple VBD instances and GG nodes on the same system.

Resolution



When running multiple instances of VBD GG on the same system, user will have to update jgroups.xml in both the VBD .ear file and the GG node; then deploy and start the VBD Application and then the GG nodes.

User updated the jgroups.xml file with the system IP address and deployed the VBD .ear file and then started the GG nodes.

 
Following were the answers to the queries raised by the user –

1. Why is “/vbd” has context-root specified in application.xml however in weblogic.xml it is "/cxvbd" ?
 
Deployment descriptor for VBD is /cxvbd and hence it was configured the same in weblogic.xml
Context root for the application VBd is /vbd and hence the same was configured in application.xml
 

2. Why GridKer%null are we missing any settings?

 GridKer%null is an expected behaviour and GridGain is a third party tool used by VBD
(due to the initialization in the GridaGain "private GridResourceBasicInjector<GridKernal> gridInjector = null;")

3. Is [NamingHelper] JNDI InitialContext properties supposed to be empty{}?
 
The JNDI Initial context properties were not empty (JNDI_NAME, DRIVER_NAME and URI were loaded properly).
 
4. Why the actual record contains no records?
 
Following query will be executed during initialization of the GridGain - 
 
 SELECT NEW com.pega.decision.dedo.IDSData(fact.factResponseId,prop.identifier,r esp.response,resp.behaviour,fact.numOffers,fact.date,cusSubSegment.name,cusSegment.name,app.fqn,fact.priority,channel.fqn,fact.caseId,fact.externalId)
FROM com.pega.decision.dedo.r a.Response AS resp,
  com.pega.decision.dedo.ra.FactResponse AS fact,
  com.pega.decision.dedo.ra.Proposition  AS prop,
  com.pega.decision.dedo.internal.is.persist.Customer cusSegment,
  com. pega.decision.dedo.internal.is.persist.Customer cusSubSegment,
  com.pega.decision.dedo.internal.is.persist.Application app,
  com.pega.decision.dedo.internal.is.persist.Channel channel
WHERE fact.responseId    = resp.responseId
AND fact.propositionId   = prop.propositionId
AND cusSubSegment.id     = fact.segmentId
AND cusSubSegment.parent = cusSegment.id
AND app.id               = fact .userId
AND channel.id           = fact.channelId
AND fact.lastOffered     = :lastOffered
AND fact.caseId         IN (:caseIds)
ORDER BY fact.caseId DESC,
  fact.date DESC

If there are no matching records found you would get message "Actuals data source now contains 0 records".

5. Why the vbdDataSource has been closed ?

The number of seconds a WebLogic Server instance waits between attempts when testing unused connections. (requires that you specify a Test Table Name.) Connections that fail the test are closed and reopened to re-establish a valid physical connection. If the test fails again, the connection is closed. In the context of multi data sources, this attribute controls the frequency at which WebLogic Server checks the health of data sources it had previously marked as unhealthy. When set to 0, the feature is disabled.
Suggest Edit

Published January 31, 2016 - Updated October 8, 2020

Did you find this content helpful? Yes No

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.

We'd prefer it if you saw us at our best.

Pega Community has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice
Contact us