Matthieu - I completely agree that the goal should be to get an official release before verifying support for multiple application servers or databases. Unfortunately, we have been unsuccessful in running a load test with ODE on Tomcat and Derby.
Is there a baseline version / configuration that I can get from subversion along with a load test harness that may have been used ? If so, this will go a long way. Also - finally, I think that things may be simplified with the use of Spring. I was wondering of there are any concerns on adding a dependency to it? Thanks - viraf Matthieu Riou <[EMAIL PROTECTED]> wrote: Viraf, The "standard" build for ODE is using Tomcat on Derby and it's working pretty well in this context. We're all volunteers working hard and we still have a lot of things to do before even being able to do an official release. So I'm afraid supporting several application servers and databases is definitely not a high priority in ODE now. I hope it will at some point but before that, releasing on a first platform and graduating from the incubator is far more important (anybody correct me if you think I'm wrong). That being said, if you're willing to contribute a bit, test some configurations, try to see where the problems come from and spot bugs, we'll do our best to fix them. And they'll be fixed even quicker if you can provide patches. I'll try to look at Raja's logs when I'll have some time but as I said, if you could spot where the contention comes from and which transactions deadlock, that would save some time. Regards, Matthieu On 2/7/07, Viraf Bankwalla <[EMAIL PROTECTED]> wrote: Matthieu - it is great to hear that you have been able to run highly concurrent scenarios on Oracle. Could you please provide some insight into the : scenarios performance characteristics how you got ode running with oracle the ode snapshot version that you used run the scenarios against This may help in answering some of the questions posted on this list recently. Thanks - viraf Matthieu Riou <[EMAIL PROTECTED]> wrote: Hi Raja, This seems to indicate as deadlock as well. I don't have much time for now to look at your scenario but I've been able to run highly concurrent scenarios on Oracle without deadlocks. Usually Oracle is pretty good with its locks. You can try to see which queries are conflicting and what executes them. If you can spot where this comes from the correction would be easier. Cheers, Matthieu On 2/7/07, Raja Balasubramanian/MAXIMUS wrote: > > Hi Matthieu, > > Today I did additional round of debugging and following are the result. > 1. Ode engine calls ExternalService.reply(odeMex, reply) method. (Line > 225) > 2. reply() calls odeMex.reply(response) > 3. Finally it calls (after going through PartnerRoleMessageExchangeImpl, > MessageExchangeImpl) QuartzSchedulerImpl. execTransaction(transaction) > (Line 221) > 4. In execTransaction() it makes a call to commit(); (Line 241) > 5. commit() makes a call to TransactionManager.commit() (Line 278) > 6. Then it goes to GeronimoTransactionManager.commit() > (In Jencks 1.3 Line 74[using jencks-1.3.jar]) > 7. At Line #81 in GeronimoTransactionManager.commit() while executing > !beanContext.commit(), the whole thread stack dies! > No records got committed into database. > > Does this ring any bell to you? > > Thank you > Raja > > -----Original Message----- > From: Matthieu Riou [mailto:[EMAIL PROTECTED] > Sent: Tuesday, February 06, 2007 5:10 PM > To: [email protected] > Subject: Re: Using ODE with ORACLE and Geronimo > > Hi Raja, > > I had a look at your log and while having the Hibernate queries is useful, > it's not quite enough to diagnose. I've committed the usage a wrapper > around > the datasource we use in the JBI impl. Just update your code and enable > all > the following categories: > > org.apache.ode.sql > org.apache.ode.bpel.engine > org.apache.ode.bpel.scheduler.quartz > org.apache.ode.axis2 > > This should give us more information about the data being locked and where > the contention is. > > Thanks, > Matthieu > > On 2/5/07, Raja Balasubramanian/MAXIMUS > wrote: > > > > Hi Matthieu, > > > > As you described, I have configured my Oracle database. > > Removed all the foreign key constraints and added the indexes. > > But it resulted in the same dead lock situation. I have created a new > Jira > > issue for that (ODE-96). > > Ode recreates some of the constraints based on Hibernate configuration > > while startup. > > > > If you have any suggestions, please let me know. I will try. > > > > Thank you > > Raja > > > > -----Original Message----- > > From: Matthieu Riou [mailto: [EMAIL PROTECTED] > > Sent: Friday, February 02, 2007 1:13 PM > > To: [email protected] > > Subject: Re: Using ODE with ORACLE and Geronimo > > > > Yep, tracking this with an issue would be better. > > > > You can also try to remove ALL foreign key constraints and add the > indexes > > pasted below. That should solve most database related deadlocks. > > > > create index IDX_XMLDATA_IID on BPEL_XML_DATA (PIID); > > create index IDX_XMLDATA_SID on BPEL_XML_DATA (SCOPE_ID); > > create index IDX_XMLDATA_NAME on BPEL_XML_DATA (NAME); > > create index IDX_XMLDATA_NAME_SID on BPEL_XML_DATA (NAME, SCOPE_ID); > > > > create index IDX_EVENT_IID on BPEL_EVENT (IID); > > create index IDX_EVENT_PID on BPEL_EVENT (PID); > > > > create index IDX_QRTZ_SIMTRIG_NAME on QRTZ_SIMPLE_TRIGGERS > (TRIGGER_NAME); > > create index IDX_QRTZ_SIMTRIG_GRP on QRTZ_SIMPLE_TRIGGERS > (TRIGGER_GROUP); > > create index IDX_QRTZ_FIRTRIG_NAME on QRTZ_FIRED_TRIGGERS > (TRIGGER_NAME); > > create index IDX_QRTZ_FIRTRIG_GRP on QRTZ_FIRED_TRIGGERS > (TRIGGER_GROUP); > > create index IDX_QRTZ_FIRTRIG_INST on QRTZ_FIRED_TRIGGERS > (INSTANCE_NAME); > > create index IDX_QRTZ_FIRTRIG_ENTRY on QRTZ_FIRED_TRIGGERS (ENTRY_ID); > > create index IDX_QRTZ_TRIG_NAME on QRTZ_TRIGGERS (TRIGGER_NAME); > > create index IDX_QRTZ_TRIG_GRP on QRTZ_TRIGGERS (TRIGGER_GROUP); > > create index IDX_QRTZ_TRIG_NAME_GRP on QRTZ_TRIGGERS (TRIGGER_NAME, > > TRIGGER_GROUP); > > create index IDX_QRTZ_SIMTRIG_NAME_GRP on QRTZ_SIMPLE_TRIGGERS > > (TRIGGER_NAME, TRIGGER_GROUP); > > create index IDX_QRTZ_FIRTRIG_NAME_GRP on QRTZ_FIRED_TRIGGERS > > (TRIGGER_NAME, > > TRIGGER_GROUP); > > > > create index idx_qrtz_t_next_fire_time on QRTZ_TRIGGERS(NEXT_FIRE_TIME); > > create index idx_qrtz_t_state on QRTZ_TRIGGERS(TRIGGER_STATE); > > create index idx_qrtz_t_nf_st on > > QRTZ_TRIGGERS(TRIGGER_STATE,NEXT_FIRE_TIME); > > create index idx_qrtz_ft_job_name on QRTZ_FIRED_TRIGGERS(JOB_NAME); > > create index idx_qrtz_ft_job_group on QRTZ_FIRED_TRIGGERS(JOB_GROUP); > > > > create index IDX_CORR_SET_NAME on BPEL_CORRELATION_SET (CORR_SET_NAME); > > create index IDX_CORR_SET_SCOPE_ID on BPEL_CORRELATION_SET (SCOPE_ID); > > create index IDX_BPEL_INSTANCE_PROCESS_ID on BPEL_INSTANCE (PROCESS_ID); > > create index IDX_BPEL_INSTANCE_STATE on BPEL_INSTANCE (STATE); > > create index IDX_BPEL_PROCESS_PROCID on BPEL_PROCESS (PROCID); > > create index IDX_BPEL_PROCESS_TYPE_NAME on BPEL_PROCESS (type_name); > > create index IDX_BPEL_PROCESS_TYPE_NS on BPEL_PROCESS (type_ns); > > create index IDX_BPEL_CORRELATOR_PROCESS_ID on BPEL_CORRELATOR > > (PROCESS_ID); > > create index IDX_BPEL_CORRELATOR_CID on BPEL_CORRELATOR (CID); > > create index IDX_BPEL_CORRELATOR_MESSAGE_CKEY on > > BPEL_CORRELATOR_MESSAGE_CKEY (CKEY); > > create index IDX_SELECTOR_CORRELATOR on BPEL_SELECTORS > > (CORRELATOR,CORRELATION_KEY); > > create index IDX_SELECTOR_CKEY on BPEL_SELECTORS (CORRELATION_KEY); > > create index IDX_SELECTOR_SELGRPID on BPEL_SELECTORS (SELGRPID); > > create index IDX_UNMATCHED_CKEY on BPEL_UNMATCHED (CORRELATION_KEY); > > create index IDX_UNMATCHED_CORRELATOR_CKEY on BPEL_UNMATCHED > > (CORRELATOR,CORRELATION_KEY); > > create index IDX_RECOVERY_LDATAID on BPEL_ACTIVITY_RECOVERY (LDATA_ID); > > create index IDX_EVENT_LDATAID on BPEL_EVENT (LDATA_ID); > > create index IDX_FAULT_LDATAID on BPEL_FAULT (LDATA_ID); > > create index IDX_MESSAGE_LDATAID on BPEL_MESSAGE (DATA); > > create index IDX_INSTANCE_LDATAID on BPEL_INSTANCE (JACOB_STATE); > > create index IDX_MEXCEPR_LDATAID on BPEL_MESSAGE_EXCHANGE > (LDATA_CEPR_ID); > > create index IDX_MEXEPR_LDATAID on BPEL_MESSAGE_EXCHANGE (LDATA_EPR_ID); > > create index IDX_PLINK_VAL_PROCESS_IDX on BPEL_PLINK_VAL (PROCESS); > > create index IDX_PLINK_VAL_SCOPE on BPEL_PLINK_VAL (SCOPE); > > create index IDX_PLINKMYR_LDATAID on BPEL_PLINK_VAL (MYROLE_EPR); > > create index IDX_PLINKPR_LDATAID on BPEL_PLINK_VAL (PARTNERROLE_EPR); > > create index IDX_XMLDATA_LDATAID on BPEL_PLINK_VAL (PARTNERROLE_EPR); > > create index IDX_PLINK_VAL_MODELID on BPEL_PLINK_VAL (MODELID); > > create index IDX_UNMATCHED_CORRELATOR on BPEL_UNMATCHED (CORRELATOR); > > create index IDX_XML_DATA_SCOPE on BPEL_XML_DATA (SCOPE_ID); > > create index IDX_SELECTOR_INSTANCE on BPEL_SELECTORS (PIID); > > create index IDX_VARPROP_XMLDATA on VAR_PROPERTY (XML_DATA_ID); > > create index IDX_VARPROP_NAME on VAR_PROPERTY (PROP_NAME); > > create index IDX_VARPROP_VALUE on VAR_PROPERTY (PROP_VALUE); > > > > Cheers, > > > > Matthieu > > > > On 2/2/07, Maciej Szefler wrote: > > > > > > Raja, > > > > > > This looks like a deadlock issue. Also if you could, (a) set oracle's > > > deadlock timeout to some short period (5 sec) and run to see what > > happens, > > > or (b) query oracle's lock table once the system hangs and include the > > > output. Also if you run with logging at the debug level (esp wrt to > > > hibernate SQL calls), the output could be very helpful. Also, it'd be > > best > > > if you file an issue for this. > > > > > > Thanks, > > > -mbs > > > > > > On 2/2/07, Raja Balasubramanian/MAXIMUS > > > > > wrote: > > > > > > > > Hi All, > > > > > > > > I'm trying to use ODE in Geronimo with ORACLE 10g as back end. > > > > ODE in Geronimo with MySQL works like a charm. > > > > > > > > I have created ORACLE schema and created a connection pool for that > > and > > > > mapped in web.xml and geronimo-web.xml. > > > > > > > > ODE deployment went fine and BPEL deployments went fine. > > > > But when I invoke a process (which calls another web service), it > just > > > > hangs. No exceptions, but waiting for something indefinitely. > > > > > > > > Anybody faced this problem? > > > > Could somebody show me how to overcome this? > > > > > > > > Thank you > > > > > > > > Raja > > > > > > > > > > --------------------------------- Want to start your own business? Learn how on Yahoo! Small Business. --------------------------------- Looking for earth-friendly autos? Browse Top Cars by "Green Rating" at Yahoo! Autos' Green Center.
