Hello,
Today I did some preliminary load testing on JBPM-BPEL on my dev machine. I used SoapUI
to send 'n' number of concurrent requests. For requests upto 100, everything
seemed ok. I have pointed my default DS to sql server database. As a result the internal
messages from SoapHandler to StartListener go to my db where I can view them.
For small number after the load test completes, my queue is empty as expected. However
when requests near 100 and above, there are some left over messages in the queue. First I
got this error -
http://wiki.jboss.org/wiki/WhatDoesTheMessageNoManagedConnectionsAvailabl...
So I increased my connection pool size and also the waiting period for the threads.
However even after doing this, I see left over messages in my queue. In my last run, I see
18 'connection timed out' errors from SoapUI out of 150 and 4 messages in the
queue.
What do I do to improve this performance? Or I have to assume that this is a limitation?
What happens to the messages left in the queue?
btw, after turning on trace statement in my ds file, I get warning from JBoss that it is
closing result set that JBPM didn't close. I am running BPEL 1.1 GA.
Here is the stack trace -
| a0001 WARN 2008-05-16 16:44:28,393 [WrappedConnection] -- [] Closing a result s
| et you left open! Please close it yourself.
| java.lang.Throwable: STACKTRACE
| at org.jboss.resource.adapter.jdbc.WrappedStatement.registerResultSet(Wr
| appedStatement.java:617)
| at org.jboss.resource.adapter.jdbc.WrappedStatement.getGeneratedKeys(Wra
| ppedStatement.java:533)
| at sun.reflect.GeneratedMethodAccessor482.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
| sorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.hibernate.util.GetGeneratedKeysHelper.getGeneratedKey(GetGenerate
| dKeysHelper.java:69)
| at org.hibernate.id.IdentityGenerator$GetGeneratedKeysDelegate.executeAn
| dExtract(IdentityGenerator.java:74)
| at org.hibernate.id.insert.AbstractReturningDelegate.performInsert(Abstr
| actReturningDelegate.java:33)
| at org.hibernate.persister.entity.AbstractEntityPersister.insert(Abstrac
| tEntityPersister.java:2093)
| at org.hibernate.persister.entity.AbstractEntityPersister.insert(Abstrac
| tEntityPersister.java:2573)
| at org.hibernate.action.EntityIdentityInsertAction.execute(EntityIdentit
| yInsertAction.java:47)
| at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:248)
| at org.hibernate.event.def.AbstractSaveEventListener.performSaveOrReplic
| ate(AbstractSaveEventListener.java:290)
| at org.hibernate.event.def.AbstractSaveEventListener.performSave(Abstrac
| tSaveEventListener.java:180)
| at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId
| (AbstractSaveEventListener.java:108)
| at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGene
| ratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:186)
| at org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrR
| equestedId(DefaultSaveEventListener.java:33)
| at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTran
| sient(DefaultSaveOrUpdateEventListener.java:175)
| at org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(
| DefaultSaveEventListener.java:27)
| at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpda
| te(DefaultSaveOrUpdateEventListener.java:70)
| at org.hibernate.impl.SessionImpl.fireSave(SessionImpl.java:535)
| at org.hibernate.impl.SessionImpl.save(SessionImpl.java:523)
| at org.hibernate.impl.SessionImpl.save(SessionImpl.java:519)
| at org.jbpm.logging.db.DbLoggingService.log(DbLoggingService.java:50)
| at org.jbpm.svc.save.SaveLogsOperation.save(SaveLogsOperation.java:47)
| at org.jbpm.svc.Services.save(Services.java:164)
| at org.jbpm.JbpmContext.save(JbpmContext.java:427)
| at org.jbpm.bpel.integration.jms.StartListener.deliverRequest(StartListe
| ner.java:229)
| at org.jbpm.bpel.integration.jms.StartListener.onMessage(StartListener.j
| ava:168)
| at org.jboss.mq.SpyMessageConsumer.run(SpyMessageConsumer.java:696)
| at java.lang.Thread.run(Thread.java:595)
|
Thank you,
Meghana
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4151565#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...