[JBoss JIRA] Created: (JBESB-1444) jBPM CommandService is bottleneck of jBPM process processing
by Jiri Pechanec (JIRA)
jBPM CommandService is bottleneck of jBPM process processing
------------------------------------------------------------
Key: JBESB-1444
URL: http://jira.jboss.com/jira/browse/JBESB-1444
Project: JBoss ESB
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Process flow
Affects Versions: 4.2.1 CP1
Reporter: Jiri Pechanec
Assigned To: Kurt Stam
Priority: Critical
Fix For: 4.2.1 CP1
The problem is that the process is executed in context of the thread of the service. It means that if there are more services that invokes jBPM process than all copntiunations are executed in the context of this single thread. This in turn can lead into large amount of started processes in blocked state waiting for a signal form Callback service.
This behaviour should be at least documented with the hint that amount of threads of CallbackService should be increased and where.
As a mid/long term solution I would prefer something that resembles following architecture
1) Let's suppose that JBoss Messaging supports message priorities and takes them into consideration when reading messages from the queue
2) Let's suppose we can set message priority when we are invoking service
3) Define a service called jBPM executor which have configured amount of thread
4) When the jBPM process is invoked then the result of invocation is message passed to jBPM executor with low-priority
5) When the jBPM process is to be called back then the message is passed to jBPM executor with high-priority
Such solution will prefer completion of started jBPM processes before starting the new ones and will allow manage the resources assgined to jBPM execution at the same place.
We can say that this soultion is equivalent to pool of executor threads which prioritizes signal commands to start process commands.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 2 months
[JBoss JIRA] Created: (JBESB-1450) SOAPProcessor cannot handle large message backlog
by Martin Vecera (JIRA)
SOAPProcessor cannot handle large message backlog
-------------------------------------------------
Key: JBESB-1450
URL: http://jira.jboss.com/jira/browse/JBESB-1450
Project: JBoss ESB
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Web Services
Affects Versions: 4.2.1
Environment: SOA-P 4.2.0 beta 1, Oracle 10g
Reporter: Martin Vecera
Priority: Blocker
When I generate a big backlog of messages (~10,000) the performance test based on webservice_producer is not able to handle it. It fails on database deadlock due to "Maximum number of cursors exceeded". Maximum number of cursors was set to 600. The issue doesn't appear when MySQL is used.
See attached log.
Steps to reproduce:
0. Configure JBossESB to use Oracle DB.
1. Generate a large backlog of 5kB SOAP messages in a transaction (don't commit it).
2. Take webservice_producer, comment out all println, print/debug actions, and non-JMS tests.
3. Deploy changed webservice_produce and wait for WSDL to be loaded.
4. Commit the transaction from 1.
If the messages are passed to the server slowly, the problem doesn't appear.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 3 months
[JBoss JIRA] Created: (JBESB-1447) Exception in shutdown
by Jiri Pechanec (JIRA)
Exception in shutdown
---------------------
Key: JBESB-1447
URL: http://jira.jboss.com/jira/browse/JBESB-1447
Project: JBoss ESB
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Management
Affects Versions: 4.2.1
Environment: Beta 1/PostgreSQL/FC7
Reporter: Jiri Pechanec
Assigned To: Kevin Conner
Priority: Minor
Fix For: 4.2.1 CP1
2008-01-07 10:53:04,404 INFO [org.jboss.resource.connectionmanager.ConnectionFactoryBindingService] Unbound ConnectionManager 'jboss.jca:service=DataSourceBinding,name=ManagementDS' from JNDI name 'java:ManagementDS'
2008-01-07 10:53:08,477 ERROR [org.quartz.core.JobRunShell] Job DataFiler.ESB threw an unhandled Exception:
java.lang.NullPointerException
at org.jboss.soa.esb.monitoring.server.DataFilerJob.execute(DataFilerJob.java:67)
at org.quartz.core.JobRunShell.run(JobRunShell.java:203)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:520)
2008-01-07 10:53:08,478 ERROR [org.quartz.core.ErrorLogger] Job (DataFiler.ESB threw an exception.
org.quartz.SchedulerException: Job threw an unhandled exception. [See nested exception: java.lang.NullPointerException]
at org.quartz.core.JobRunShell.run(JobRunShell.java:214)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:520)
* Nested Exception (Underlying Cause) ---------------
java.lang.NullPointerException
at org.jboss.soa.esb.monitoring.server.DataFilerJob.execute(DataFilerJob.java:67)
at org.quartz.core.JobRunShell.run(JobRunShell.java:203)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:520)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 3 months
[JBoss JIRA] Created: (JBESB-1514) NotifyQueues not working: ConnectionException: Could not obtain a JMS connection from the pool
by Martin Vecera (JIRA)
NotifyQueues not working: ConnectionException: Could not obtain a JMS connection from the pool
----------------------------------------------------------------------------------------------
Key: JBESB-1514
URL: http://jira.jboss.com/jira/browse/JBESB-1514
Project: JBoss ESB
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Rosetta
Affects Versions: 4.2.1
Environment: RHEL5, Oracle 10g, SOA-P 4.2.1.CR1
Reporter: Martin Vecera
Fix For: 4.2.1 CP1
When I tried to use NotifyQueues to verify JBESB-1484 I got the following error:
17:18:06,141 ERROR [STDERR] java.lang.reflect.InvocationTargetException
17:18:06,142 ERROR [STDERR] at sun.reflect.GeneratedConstructorAccessor119.newInstance(Unknown Source)
17:18:06,142 ERROR [STDERR] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
17:18:06,142 ERROR [STDERR] at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
17:18:06,142 ERROR [STDERR] at org.jboss.soa.esb.notification.NotificationTarget.fromParams(NotificationTarget.java:144)
17:18:06,142 ERROR [STDERR] at org.jboss.soa.esb.notification.NotificationList.notifyAll(NotificationList.java:162)
17:18:06,142 ERROR [STDERR] at org.jboss.soa.esb.actions.Notifier.notifyOK(Notifier.java:93)
17:18:06,142 ERROR [STDERR] at sun.reflect.GeneratedMethodAccessor140.invoke(Unknown Source)
17:18:06,142 ERROR [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
17:18:06,142 ERROR [STDERR] at java.lang.reflect.Method.invoke(Method.java:585)
17:18:06,142 ERROR [STDERR] at org.jboss.soa.esb.listeners.message.ActionProcessorMethodInfo.processSuccess(ActionProcessorMethodInfo.java:165)
17:18:06,142 ERROR [STDERR] at org.jboss.soa.esb.listeners.message.OverriddenActionLifecycleProcessor.processSuccess(OverriddenActionLifecycleProcessor.java:108)
17:18:06,142 ERROR [STDERR] at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.notifySuccess(ActionProcessingPipeline.java:610)
17:18:06,142 ERROR [STDERR] at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.process(ActionProcessingPipeline.java:384)
17:18:06,143 ERROR [STDERR] at org.jboss.soa.esb.listeners.jca.JcaMessageAwareListener.process(JcaMessageAwareListener.java:156)
17:18:06,143 ERROR [STDERR] at org.jboss.soa.esb.listeners.jca.JcaJMSInflowMessageProcessorAdapter.onMessage(JcaJMSInflowMessageProcessorAdapter.java:44)
17:18:06,143 ERROR [STDERR] at sun.reflect.GeneratedMethodAccessor138.invoke(Unknown Source)
17:18:06,143 ERROR [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
17:18:06,143 ERROR [STDERR] at java.lang.reflect.Method.invoke(Method.java:585)
17:18:06,143 ERROR [STDERR] at org.jboss.soa.esb.listeners.jca.BaseJcaInflow$1.invoke(BaseJcaInflow.java:205)
17:18:06,143 ERROR [STDERR] at org.jboss.soa.esb.listeners.jca.EndpointProxy.delivery(EndpointProxy.java:242)
17:18:06,143 ERROR [STDERR] at org.jboss.soa.esb.listeners.jca.EndpointProxy.invoke(EndpointProxy.java:145)
17:18:06,143 ERROR [STDERR] at $Proxy73.onMessage(Unknown Source)
17:18:06,143 ERROR [STDERR] at org.jboss.resource.adapter.jms.inflow.JmsServerSession.onMessage(JmsServerSession.java:178)
17:18:06,143 ERROR [STDERR] at org.jboss.jms.client.container.ClientConsumer.callOnMessage(ClientConsumer.java:159)
17:18:06,143 ERROR [STDERR] at org.jboss.jms.client.container.SessionAspect.handleRun(SessionAspect.java:802)
17:18:06,143 ERROR [STDERR] at org.jboss.aop.advice.org.jboss.jms.client.container.SessionAspect14.invoke(SessionAspect14.java)
17:18:06,143 ERROR [STDERR] at org.jboss.jms.client.delegate.ClientSessionDelegate$run_N8003352271541955702.invokeNext(ClientSessionDelegate$run_N8003352271541955702.java)
17:18:06,143 ERROR [STDERR] at org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:170)
17:18:06,143 ERROR [STDERR] at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:105)
17:18:06,143 ERROR [STDERR] at org.jboss.jms.client.delegate.ClientSessionDelegate$run_N8003352271541955702.invokeNext(ClientSessionDelegate$run_N8003352271541955702.java)
17:18:06,144 ERROR [STDERR] at org.jboss.jms.client.delegate.ClientSessionDelegate.run(ClientSessionDelegate.java)
17:18:06,144 ERROR [STDERR] at org.jboss.jms.client.JBossSession.run(JBossSession.java:199)
17:18:06,144 ERROR [STDERR] at org.jboss.resource.adapter.jms.inflow.JmsServerSession.run(JmsServerSession.java:237)
17:18:06,144 ERROR [STDERR] at org.jboss.resource.work.WorkWrapper.execute(WorkWrapper.java:204)
17:18:06,144 ERROR [STDERR] at org.jboss.util.threadpool.BasicTaskWrapper.run(BasicTaskWrapper.java:275)
17:18:06,144 ERROR [STDERR] at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:743)
17:18:06,144 ERROR [STDERR] at java.lang.Thread.run(Thread.java:595)
17:18:06,144 ERROR [STDERR] Caused by: org.jboss.internal.soa.esb.rosetta.pooling.ConnectionException: Could not obtain a JMS connection from the pool after 30s.
17:18:06,144 ERROR [STDERR] at org.jboss.internal.soa.esb.rosetta.pooling.JmsConnectionPool.getSession(JmsConnectionPool.java:227)
17:18:06,144 ERROR [STDERR] at org.jboss.internal.soa.esb.rosetta.pooling.JmsConnectionPool.getQueueSession(JmsConnectionPool.java:254)
17:18:06,144 ERROR [STDERR] at org.jboss.internal.soa.esb.rosetta.pooling.JmsConnectionPool.getQueueSession(JmsConnectionPool.java:249)
17:18:06,145 ERROR [STDERR] at org.jboss.soa.esb.notification.NotifyQueues.getSession(NotifyQueues.java:97)
17:18:06,145 ERROR [STDERR] at org.jboss.soa.esb.notification.NotifyQueues.getSession(NotifyQueues.java:58)
17:18:06,145 ERROR [STDERR] at org.jboss.soa.esb.notification.NotifyJMS.setUpProducers(NotifyJMS.java:372)
17:18:06,145 ERROR [STDERR] at org.jboss.soa.esb.notification.NotifyQueues.setQueues(NotifyQueues.java:80)
17:18:06,145 ERROR [STDERR] at org.jboss.soa.esb.notification.NotifyQueues.<init>(NotifyQueues.java:75)
17:18:06,145 ERROR [STDERR] ... 37 more
17:18:06,148 ERROR [NotificationList] Can't instantiate target <target class="NotifyQueues">
<queue jndiName="queue/A"/>
</target>
org.jboss.soa.esb.ConfigurationException: NotifyQueues does not extend NotificationTarget
at org.jboss.soa.esb.notification.NotificationTarget.fromParams(NotificationTarget.java:151)
at org.jboss.soa.esb.notification.NotificationList.notifyAll(NotificationList.java:162)
at org.jboss.soa.esb.actions.Notifier.notifyOK(Notifier.java:93)
at sun.reflect.GeneratedMethodAccessor140.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.soa.esb.listeners.message.ActionProcessorMethodInfo.processSuccess(ActionProcessorMethodInfo.java:165)
at org.jboss.soa.esb.listeners.message.OverriddenActionLifecycleProcessor.processSuccess(OverriddenActionLifecycleProcessor.java:108)
at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.notifySuccess(ActionProcessingPipeline.java:610)
at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.process(ActionProcessingPipeline.java:384)
at org.jboss.soa.esb.listeners.jca.JcaMessageAwareListener.process(JcaMessageAwareListener.java:156)
at org.jboss.soa.esb.listeners.jca.JcaJMSInflowMessageProcessorAdapter.onMessage(JcaJMSInflowMessageProcessorAdapter.java:44)
at sun.reflect.GeneratedMethodAccessor138.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.soa.esb.listeners.jca.BaseJcaInflow$1.invoke(BaseJcaInflow.java:205)
at org.jboss.soa.esb.listeners.jca.EndpointProxy.delivery(EndpointProxy.java:242)
at org.jboss.soa.esb.listeners.jca.EndpointProxy.invoke(EndpointProxy.java:145)
at $Proxy73.onMessage(Unknown Source)
at org.jboss.resource.adapter.jms.inflow.JmsServerSession.onMessage(JmsServerSession.java:178)
at org.jboss.jms.client.container.ClientConsumer.callOnMessage(ClientConsumer.java:159)
at org.jboss.jms.client.container.SessionAspect.handleRun(SessionAspect.java:802)
at org.jboss.aop.advice.org.jboss.jms.client.container.SessionAspect14.invoke(SessionAspect14.java)
at org.jboss.jms.client.delegate.ClientSessionDelegate$run_N8003352271541955702.invokeNext(ClientSessionDelegate$run_N8003352271541955702.java)
at org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:170)
at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:105)
at org.jboss.jms.client.delegate.ClientSessionDelegate$run_N8003352271541955702.invokeNext(ClientSessionDelegate$run_N8003352271541955702.java)
at org.jboss.jms.client.delegate.ClientSessionDelegate.run(ClientSessionDelegate.java)
at org.jboss.jms.client.JBossSession.run(JBossSession.java:199)
at org.jboss.resource.adapter.jms.inflow.JmsServerSession.run(JmsServerSession.java:237)
at org.jboss.resource.work.WorkWrapper.execute(WorkWrapper.java:204)
at org.jboss.util.threadpool.BasicTaskWrapper.run(BasicTaskWrapper.java:275)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:743)
at java.lang.Thread.run(Thread.java:595)
I deployed the attached archive and send 1000 messages to queue/quickstart_helloworld_Request_gw.
To deploy the archive, you need test-result-service.sar and jboss-test.jar (see http://intranet.corp.redhat.com/ic/intranet/SOAPerformanceTestsHowTo.html).
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 3 months