[ 
https://issues.apache.org/jira/browse/ODE-507?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12674750#action_12674750
 ] 

Andi commented on ODE-507:
--------------------------

I'm hitting a very similar issue involving a process with multiple 1-way 
operations (i.e. input only operations).

I'm using ODE with JPA/Oracle (10.2.3.0) and  a recently downloaded 
apache-ode-war-1.2. 
I've tried applying your suggestion of:
 openjpa.jdbc.TransactionIsolation=read-committed 

I'm now getting this exception:
ERROR - GeronimoLog.error(108) | Scheduled job failed; jobDetail={type=MATCHER, 
inmem=false, ckey=63~REQUEST_ID_141--1-1, correlatorId=2
<openjpa-1.1.0-r422266:657916 nonfatal general error> 
org.apache.openjpa.persistence.PersistenceException: ORA-01453: SET TRANSACTION 
mu
 transaction

        at 
org.apache.openjpa.jdbc.sql.SQLExceptions.narrow(SQLExceptions.java:146)
        at 
org.apache.openjpa.jdbc.sql.DBDictionary.newStoreException(DBDictionary.java:4150)
        at 
org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:102)
        at 
org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:88)
        at 
org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:64)
        at 
org.apache.openjpa.jdbc.kernel.JDBCStoreManager.connect(JDBCStoreManager.java:762)
        at 
org.apache.openjpa.jdbc.kernel.JDBCStoreManager.getConnection(JDBCStoreManager.java:215)
        at org.apache.openjpa.jdbc.sql.SelectImpl.execute(SelectImpl.java:349)
        at org.apache.openjpa.jdbc.sql.SelectImpl.execute(SelectImpl.java:319)
        at 
org.apache.openjpa.jdbc.kernel.JDBCStoreManager.getInitializeStateResult(JDBCStoreManager.java:411)
        at 
org.apache.openjpa.jdbc.kernel.JDBCStoreManager.initializeState(JDBCStoreManager.java:307)
        at 
org.apache.openjpa.jdbc.kernel.JDBCStoreManager.initialize(JDBCStoreManager.java:263)
        at 
org.apache.openjpa.kernel.DelegatingStoreManager.initialize(DelegatingStoreManager.java:111)
        at 
org.apache.openjpa.kernel.ROPStoreManager.initialize(ROPStoreManager.java:57)
        at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:894)
        at org.apache.openjpa.kernel.BrokerImpl.find(BrokerImpl.java:852)
        at org.apache.openjpa.kernel.BrokerImpl.find(BrokerImpl.java:769)
        at 
org.apache.openjpa.kernel.DelegatingBroker.find(DelegatingBroker.java:183)
        at 
org.apache.openjpa.persistence.EntityManagerImpl.find(EntityManagerImpl.java:452)
        at 
org.apache.ode.dao.jpa.BPELDAOConnectionImpl.getInstance(BPELDAOConnectionImpl.java:77)
        at 
org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:304)
        at 
org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:373)
        at 
org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:337)
        at 
org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:336)
        at 
org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:174)
        at 
org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:335)
        at 
org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:332)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
        at java.util.concurrent.FutureTask.run(FutureTask.java:123)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:595)
Caused by: java.sql.SQLException: ORA-01453: SET TRANSACTION must be first 
statement of transaction

        at 
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
        at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:745)
        at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:207)
        at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:957)
        at 
oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1170)
        at 
oracle.jdbc.driver.OracleStatement.executeInternal(OracleStatement.java:1696)
        at oracle.jdbc.driver.OracleStatement.execute(OracleStatement.java:1662)
        at 
oracle.jdbc.driver.PhysicalConnection.setTransactionIsolation(PhysicalConnection.java:1661)
        at 
org.apache.tomcat.dbcp.dbcp.DelegatingConnection.setTransactionIsolation(DelegatingConnection.java:340)
        at 
org.apache.tomcat.dbcp.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.setTransactionIsolation(PoolingDataSource.java:332)

> OutstandingRequestManager(ExecutionQueueImpl serialization) failed when ODE 
> loaded in db mode
> ---------------------------------------------------------------------------------------------
>
>                 Key: ODE-507
>                 URL: https://issues.apache.org/jira/browse/ODE-507
>             Project: ODE
>          Issue Type: Bug
>          Components: BPEL Runtime
>    Affects Versions: 1.2
>         Environment: JAVA 5.0+
>            Reporter: Shammy Chen
>            Assignee: Sean Ahn
>         Attachments: bpmdemo3-5.zip, geronimo.log, 
> OutstandingRequestManager_err_detail.log, VpuOustandingDataTest.java
>
>
> We loaded ODE process in db mode and got INTERNAL ERROR from ODE sometime, 
> see the following adapted from error log for detail infomation.
> 15:05:51,774 FATAL [OutstandingRequestManager] INTERNAL ERROR: No ENTRY for 
> RESPONSE CHANNEL 53
> 15:05:51,776 ERROR [BpelEngineImpl] Scheduled job failed; 
> jobDetail={mexid=4611686018427390107, 
> pid={http://example.com/bpmdemo3/service}service-17, type=INVOKE_INTERNAL}
> java.lang.IllegalArgumentException: INTERNAL ERROR: No ENTRY for RESPONSE 
> CHANNEL 53
>       at 
> org.apache.ode.bpel.engine.OutstandingRequestManager.associate(OutstandingRequestManager.java:145)
>       at 
> org.apache.ode.bpel.engine.BpelRuntimeContextImpl.inputMsgMatch(BpelRuntimeContextImpl.java:894)
>       at 
> org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.invokeInstance(PartnerLinkMyRoleImpl.java:211)
>       at 
> org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:208)
>       at 
> org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.java:372)
>       at 
> org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:326)
>       at 
> org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:373)
>       at 
> org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:337)
>       at 
> org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:336)
>       at 
> org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:174)
>       at 
> org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:335)
>       at 
> org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:332)
>       at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>       at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>       at java.lang.Thread.run(Thread.java:619)
> 15:05:52,798 ERROR [SimpleScheduler] Error while processing transaction, 
> retrying.
> org.apache.ode.bpel.iapi.Scheduler$JobProcessorException: 
> java.lang.IllegalArgumentException: INTERNAL ERROR: No ENTRY for RESPONSE 
> CHANNEL 53
>       at 
> org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:336)
>       at 
> org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:373)
>       at 
> org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:337)
>       at 
> org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:336)
>       at 
> org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:174)
>       at 
> org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:335)
>       at 
> org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:332)
>       at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>       at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>       at java.lang.Thread.run(Thread.java:619)
> Caused by: java.lang.IllegalArgumentException: INTERNAL ERROR: No ENTRY for 
> RESPONSE CHANNEL 53
>       at 
> org.apache.ode.bpel.engine.OutstandingRequestManager.associate(OutstandingRequestManager.java:145)
>       at 
> org.apache.ode.bpel.engine.BpelRuntimeContextImpl.inputMsgMatch(BpelRuntimeContextImpl.java:894)
>       at 
> org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.invokeInstance(PartnerLinkMyRoleImpl.java:211)
>       at 
> org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:208)
>       at 
> org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.java:372)
>       at 
> org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:326)
>       ... 11 more
> I doubted whether it was caused by ExecutionQueueImpl's serialization(not 
> concurrently),  but when I tested this,  the answer was NO. Maybe it's caused 
> by concurrency.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to