We are observing JMS MDB Listener failures in Production environment.
We are seeing many errors like this one:
21:49:55,029 [esourceAdapter : 119] ( internal.services.ServiceAPI) WARN - Requestor with ID:ADCBDAD8EF37EB24EE0F7CD94C2D52549 in the pool for service package IssuerMessage has a default access group: PegaRULES:Unauthenticated that does not match service package access group EM:Batch
21:49:55,030 [esourceAdapter : 119] ( internal.services.ServiceAPI) ERROR - JMS service [IssuerMessage][Issuer][IssuerUpdateGrid] failed:Service page lookup failed:com.pega.pegarules.pub.services.ServiceExcption: Service page lookup failed
I am attaching a full error message.
From error message I can see that requestor is being locked but I am not quite sure why this is happening.
Service Package is configured to use EM:Batch Access Group.
Support team informed me that the only way to restart the listener is to recycle the JVM which considering this is Production environment is not really an option.
I asked DBA team to check the database and I was informed that every time this behaviour is observed table pr_assembledclasses is locked.
PDN article pointing out to pr_assembledclasses being locked was followed and change to prconfig.xml file was made but it resulted in no difference:
Hfix-10155. Please verify in your environment to check this Hfix exists or not.
Stacktrace for the Hfix issued:
2014-10-08 00:00:38,506 [WorkManager(2)-99] [STANDARD]  (etier.mdb.PRJMSListener) ERROR- Failed to obtain Listener ID for JMS MDB Listener: EventsUpdateOrder
2014-10-08 00:03:37,945 [WorkManager(2)-10] [STANDARD]  (tener.ListenerStateManagerImpl) ERROR- Failed to create MDB Listener, could not find Listener definition for Data-Admin-Connect-JMSMDBListener:EventsCreateOrder.(com.pega.pegarules.integration.engine.internal.services.jms.JMSListener)
com.pega.pegarules.pub.PRException: Listener is not enabled for node: XXXXXX