You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ode.apache.org by "Rafal Rusin (JIRA)" <ji...@apache.org> on 2008/08/01 11:56:32 UTC
[jira] Created: (ODE-353) Can't run ODE with Oracle and internal
connection pool or external jencks pool.
Can't run ODE with Oracle and internal connection pool or external jencks pool.
-------------------------------------------------------------------------------
Key: ODE-353
URL: https://issues.apache.org/jira/browse/ODE-353
Project: ODE
Issue Type: Bug
Components: JBI Integration
Affects Versions: 1.2
Environment: Servicemix 3.2.1
Reporter: Rafal Rusin
During startup I have a dead lock with a following stack trace:
Thread [pool-4-thread-1] (Suspended)
SocketInputStream.socketRead0(FileDescriptor, byte[], int, int, int) line: not available [native method]
SocketInputStream.read(byte[], int, int) line: 129
DataPacket(Packet).receive() line: not available
DataPacket.receive() line: not available
NetInputStream.getNextPacket() line: not available
NetInputStream.read(byte[], int, int) line: not available
NetInputStream.read(byte[]) line: not available
NetInputStream.read() line: not available
T4CMAREngine.unmarshalUB1() line: 1104
T4CMAREngine.unmarshalSB1() line: 1075
T4C8Oall.receive() line: 480
T4CPreparedStatement.doOall8(boolean, boolean, boolean, boolean) line: 219
T4CPreparedStatement.executeForDescribe() line: 813
T4CPreparedStatement(OracleStatement).executeMaybeDescribe() line: 1049
T4CPreparedStatement.executeMaybeDescribe() line: 854
T4CPreparedStatement(OracleStatement).doExecuteWithTimeout() line: 1154
T4CPreparedStatement(OraclePreparedStatement).executeInternal() line: 3370
T4CPreparedStatement(OraclePreparedStatement).executeQuery() line: 3415
PreparedStatementHandle.executeQuery() line: 49
LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement(DelegatingPreparedStatement).executeQuery(boolean) line: 264
LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement.executeQuery(boolean) line: 850
JDBCStoreManager$CancelPreparedStatement(DelegatingPreparedStatement).executeQuery(boolean) line: 262
JDBCStoreManager$CancelPreparedStatement.executeQuery(boolean) line: 1407
JDBCStoreManager$CancelPreparedStatement(DelegatingPreparedStatement).executeQuery() line: 252
TableJDBCSeq.executeQuery(JDBCConfiguration, Connection, PreparedStatement, SQLBuffer) line: 728
TableJDBCSeq.getSequence(ClassMapping, Connection) line: 470
TableJDBCSeq.setSequence(ClassMapping, TableJDBCSeq$Status, int, boolean, Connection) line: 510
TableJDBCSeq.allocateSequence(JDBCStore, ClassMapping, TableJDBCSeq$Status, int, boolean) line: 368
TableJDBCSeq.nextInternal(JDBCStore, ClassMapping) line: 266
TableJDBCSeq(AbstractJDBCSeq).next(StoreContext, ClassMetaData) line: 60
ImplHelper.generateValue(StoreContext, ClassMetaData, FieldMetaData, int) line: 160
ImplHelper.generateFieldValue(StoreContext, FieldMetaData) line: 144
JDBCStoreManager.assignField(OpenJPAStateManager, int, boolean) line: 592
ApplicationIds.assign(OpenJPAStateManager, StoreManager, FieldMetaData[], boolean) line: 464
ApplicationIds.assign(OpenJPAStateManager, StoreManager, boolean) line: 440
JDBCStoreManager.assignObjectId(OpenJPAStateManager, boolean) line: 576
ROPStoreManager(DelegatingStoreManager).assignObjectId(OpenJPAStateManager, boolean) line: 134
StateManagerImpl.assignObjectId(boolean, boolean) line: 517
StateManagerImpl.preFlush(boolean, OpCallbacks) line: 2814
PNewState.beforeFlush(StateManagerImpl, boolean, OpCallbacks) line: 39
StateManagerImpl.beforeFlush(int, OpCallbacks) line: 957
FinalizingBrokerImpl(BrokerImpl).flush(int) line: 1945
FinalizingBrokerImpl(BrokerImpl).flushSafe(int) line: 1905
FinalizingBrokerImpl(BrokerImpl).beforeCompletion() line: 1823
TransactionImpl.beforeCompletion(List) line: 514
TransactionImpl.beforeCompletion() line: 498
TransactionImpl.beforePrepare() line: 400
TransactionImpl.commit() line: 257
GeronimoPlatformTransactionManager(TransactionManagerImpl).commit() line: 238
SimpleScheduler.execTransaction(Callable<T>) line: 181
SimpleScheduler$1.call() line: 155
FutureTask$Sync.innerRun() line: 269
FutureTask<V>.run() line: 123
ThreadPoolExecutor$Worker.runTask(Runnable) line: 650
ThreadPoolExecutor$Worker.run() line: 675
Thread.run() line: 595
On a following query:
SELECT SEQUENCE_VALUE FROM OPENJPA_SEQUENCE_TABLE WHERE ID = :1 FOR UPDATE
As I saw logs, I notices that OpenJPA starts twice (maybe that's the issue):
10:34:49,697 | INFO | ProcessStoreImpl-1 | Runtime | log.Log4JLogFactory$LogAdapter 80 | Starting OpenJPA 1.1.0
10:34:49,940 | INFO | ProcessStoreImpl-1 | JDBC | log.Log4JLogFactory$LogAdapter 80 | Using dictionary class "org.apache.openjpa.jdbc.sql.OracleDictionary" (Oracle Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production ,Oracle JDBC driver 10.2.0.4.0).
10:35:24,488 | INFO | pool-4-thread-1 | Runtime | log.Log4JLogFactory$LogAdapter 80 | Starting OpenJPA 1.1.0
10:35:24,490 | INFO | pool-4-thread-1 | JDBC | log.Log4JLogFactory$LogAdapter 80 | Using dictionary class "org.apache.openjpa.jdbc.sql.OracleDictionary" (Oracle Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production ,Oracle JDBC driver 10.2.0.4.0).
Can you give me some suggestions about possible fix?
Regards
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (ODE-353) Can't run ODE with Oracle and internal
connection pool or external jencks pool.
Posted by "Rafal Rusin (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/ODE-353?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12619568#action_12619568 ]
Rafal Rusin commented on ODE-353:
---------------------------------
Note that process deployment was fine. There were some records in DB after initialization. But after that, when I tried to invoke some requests, I got this error.
> Can't run ODE with Oracle and internal connection pool or external jencks pool.
> -------------------------------------------------------------------------------
>
> Key: ODE-353
> URL: https://issues.apache.org/jira/browse/ODE-353
> Project: ODE
> Issue Type: Bug
> Components: JBI Integration
> Affects Versions: 1.2
> Environment: Servicemix 3.2.1
> Reporter: Rafal Rusin
>
> During startup I have a dead lock with a following stack trace:
> Thread [pool-4-thread-1] (Suspended)
> SocketInputStream.socketRead0(FileDescriptor, byte[], int, int, int) line: not available [native method]
> SocketInputStream.read(byte[], int, int) line: 129
> DataPacket(Packet).receive() line: not available
> DataPacket.receive() line: not available
> NetInputStream.getNextPacket() line: not available
> NetInputStream.read(byte[], int, int) line: not available
> NetInputStream.read(byte[]) line: not available
> NetInputStream.read() line: not available
> T4CMAREngine.unmarshalUB1() line: 1104
> T4CMAREngine.unmarshalSB1() line: 1075
> T4C8Oall.receive() line: 480
> T4CPreparedStatement.doOall8(boolean, boolean, boolean, boolean) line: 219
> T4CPreparedStatement.executeForDescribe() line: 813
> T4CPreparedStatement(OracleStatement).executeMaybeDescribe() line: 1049
> T4CPreparedStatement.executeMaybeDescribe() line: 854
> T4CPreparedStatement(OracleStatement).doExecuteWithTimeout() line: 1154
> T4CPreparedStatement(OraclePreparedStatement).executeInternal() line: 3370
> T4CPreparedStatement(OraclePreparedStatement).executeQuery() line: 3415
> PreparedStatementHandle.executeQuery() line: 49
> LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement(DelegatingPreparedStatement).executeQuery(boolean) line: 264
> LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement.executeQuery(boolean) line: 850
> JDBCStoreManager$CancelPreparedStatement(DelegatingPreparedStatement).executeQuery(boolean) line: 262
> JDBCStoreManager$CancelPreparedStatement.executeQuery(boolean) line: 1407
> JDBCStoreManager$CancelPreparedStatement(DelegatingPreparedStatement).executeQuery() line: 252
> TableJDBCSeq.executeQuery(JDBCConfiguration, Connection, PreparedStatement, SQLBuffer) line: 728
> TableJDBCSeq.getSequence(ClassMapping, Connection) line: 470
> TableJDBCSeq.setSequence(ClassMapping, TableJDBCSeq$Status, int, boolean, Connection) line: 510
> TableJDBCSeq.allocateSequence(JDBCStore, ClassMapping, TableJDBCSeq$Status, int, boolean) line: 368
> TableJDBCSeq.nextInternal(JDBCStore, ClassMapping) line: 266
> TableJDBCSeq(AbstractJDBCSeq).next(StoreContext, ClassMetaData) line: 60
> ImplHelper.generateValue(StoreContext, ClassMetaData, FieldMetaData, int) line: 160
> ImplHelper.generateFieldValue(StoreContext, FieldMetaData) line: 144
> JDBCStoreManager.assignField(OpenJPAStateManager, int, boolean) line: 592
> ApplicationIds.assign(OpenJPAStateManager, StoreManager, FieldMetaData[], boolean) line: 464
> ApplicationIds.assign(OpenJPAStateManager, StoreManager, boolean) line: 440
> JDBCStoreManager.assignObjectId(OpenJPAStateManager, boolean) line: 576
> ROPStoreManager(DelegatingStoreManager).assignObjectId(OpenJPAStateManager, boolean) line: 134
> StateManagerImpl.assignObjectId(boolean, boolean) line: 517
> StateManagerImpl.preFlush(boolean, OpCallbacks) line: 2814
> PNewState.beforeFlush(StateManagerImpl, boolean, OpCallbacks) line: 39
> StateManagerImpl.beforeFlush(int, OpCallbacks) line: 957
> FinalizingBrokerImpl(BrokerImpl).flush(int) line: 1945
> FinalizingBrokerImpl(BrokerImpl).flushSafe(int) line: 1905
> FinalizingBrokerImpl(BrokerImpl).beforeCompletion() line: 1823
> TransactionImpl.beforeCompletion(List) line: 514
> TransactionImpl.beforeCompletion() line: 498
> TransactionImpl.beforePrepare() line: 400
> TransactionImpl.commit() line: 257
> GeronimoPlatformTransactionManager(TransactionManagerImpl).commit() line: 238
> SimpleScheduler.execTransaction(Callable<T>) line: 181
> SimpleScheduler$1.call() line: 155
> FutureTask$Sync.innerRun() line: 269
> FutureTask<V>.run() line: 123
> ThreadPoolExecutor$Worker.runTask(Runnable) line: 650
> ThreadPoolExecutor$Worker.run() line: 675
> Thread.run() line: 595
> On a following query:
> SELECT SEQUENCE_VALUE FROM OPENJPA_SEQUENCE_TABLE WHERE ID = :1 FOR UPDATE
> As I saw logs, I notices that OpenJPA starts twice (maybe that's the issue):
> 10:34:49,697 | INFO | ProcessStoreImpl-1 | Runtime | log.Log4JLogFactory$LogAdapter 80 | Starting OpenJPA 1.1.0
> 10:34:49,940 | INFO | ProcessStoreImpl-1 | JDBC | log.Log4JLogFactory$LogAdapter 80 | Using dictionary class "org.apache.openjpa.jdbc.sql.OracleDictionary" (Oracle Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production ,Oracle JDBC driver 10.2.0.4.0).
> 10:35:24,488 | INFO | pool-4-thread-1 | Runtime | log.Log4JLogFactory$LogAdapter 80 | Starting OpenJPA 1.1.0
> 10:35:24,490 | INFO | pool-4-thread-1 | JDBC | log.Log4JLogFactory$LogAdapter 80 | Using dictionary class "org.apache.openjpa.jdbc.sql.OracleDictionary" (Oracle Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production ,Oracle JDBC driver 10.2.0.4.0).
> Can you give me some suggestions about possible fix?
> Regards
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (ODE-353) Can't run ODE with Oracle and internal
connection pool or external jencks pool.
Posted by "Alexey Ousov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/ODE-353?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12619301#action_12619301 ]
Alexey Ousov commented on ODE-353:
----------------------------------
You should use Oracle connection pool to avoid deadlocks, I also experienced deadlocks while using other connection pools with ODE and OpenJPA. For Tomcat configuration looks like following:
<Resource name="jdbc/ODEdatabaseConnection" auth="Container" scope="Shareable"
type="oracle.jdbc.pool.OracleDataSource"
factory="oracle.jdbc.pool.OracleDataSourceFactory"
maxActive="20" maxIdle="10" maxWait="-1"
url="jdbc:oracle:thin:@localhost:1521:XE" user="***" password="***"/>
I think you can make similar configuration for ServiceMix.
> Can't run ODE with Oracle and internal connection pool or external jencks pool.
> -------------------------------------------------------------------------------
>
> Key: ODE-353
> URL: https://issues.apache.org/jira/browse/ODE-353
> Project: ODE
> Issue Type: Bug
> Components: JBI Integration
> Affects Versions: 1.2
> Environment: Servicemix 3.2.1
> Reporter: Rafal Rusin
>
> During startup I have a dead lock with a following stack trace:
> Thread [pool-4-thread-1] (Suspended)
> SocketInputStream.socketRead0(FileDescriptor, byte[], int, int, int) line: not available [native method]
> SocketInputStream.read(byte[], int, int) line: 129
> DataPacket(Packet).receive() line: not available
> DataPacket.receive() line: not available
> NetInputStream.getNextPacket() line: not available
> NetInputStream.read(byte[], int, int) line: not available
> NetInputStream.read(byte[]) line: not available
> NetInputStream.read() line: not available
> T4CMAREngine.unmarshalUB1() line: 1104
> T4CMAREngine.unmarshalSB1() line: 1075
> T4C8Oall.receive() line: 480
> T4CPreparedStatement.doOall8(boolean, boolean, boolean, boolean) line: 219
> T4CPreparedStatement.executeForDescribe() line: 813
> T4CPreparedStatement(OracleStatement).executeMaybeDescribe() line: 1049
> T4CPreparedStatement.executeMaybeDescribe() line: 854
> T4CPreparedStatement(OracleStatement).doExecuteWithTimeout() line: 1154
> T4CPreparedStatement(OraclePreparedStatement).executeInternal() line: 3370
> T4CPreparedStatement(OraclePreparedStatement).executeQuery() line: 3415
> PreparedStatementHandle.executeQuery() line: 49
> LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement(DelegatingPreparedStatement).executeQuery(boolean) line: 264
> LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement.executeQuery(boolean) line: 850
> JDBCStoreManager$CancelPreparedStatement(DelegatingPreparedStatement).executeQuery(boolean) line: 262
> JDBCStoreManager$CancelPreparedStatement.executeQuery(boolean) line: 1407
> JDBCStoreManager$CancelPreparedStatement(DelegatingPreparedStatement).executeQuery() line: 252
> TableJDBCSeq.executeQuery(JDBCConfiguration, Connection, PreparedStatement, SQLBuffer) line: 728
> TableJDBCSeq.getSequence(ClassMapping, Connection) line: 470
> TableJDBCSeq.setSequence(ClassMapping, TableJDBCSeq$Status, int, boolean, Connection) line: 510
> TableJDBCSeq.allocateSequence(JDBCStore, ClassMapping, TableJDBCSeq$Status, int, boolean) line: 368
> TableJDBCSeq.nextInternal(JDBCStore, ClassMapping) line: 266
> TableJDBCSeq(AbstractJDBCSeq).next(StoreContext, ClassMetaData) line: 60
> ImplHelper.generateValue(StoreContext, ClassMetaData, FieldMetaData, int) line: 160
> ImplHelper.generateFieldValue(StoreContext, FieldMetaData) line: 144
> JDBCStoreManager.assignField(OpenJPAStateManager, int, boolean) line: 592
> ApplicationIds.assign(OpenJPAStateManager, StoreManager, FieldMetaData[], boolean) line: 464
> ApplicationIds.assign(OpenJPAStateManager, StoreManager, boolean) line: 440
> JDBCStoreManager.assignObjectId(OpenJPAStateManager, boolean) line: 576
> ROPStoreManager(DelegatingStoreManager).assignObjectId(OpenJPAStateManager, boolean) line: 134
> StateManagerImpl.assignObjectId(boolean, boolean) line: 517
> StateManagerImpl.preFlush(boolean, OpCallbacks) line: 2814
> PNewState.beforeFlush(StateManagerImpl, boolean, OpCallbacks) line: 39
> StateManagerImpl.beforeFlush(int, OpCallbacks) line: 957
> FinalizingBrokerImpl(BrokerImpl).flush(int) line: 1945
> FinalizingBrokerImpl(BrokerImpl).flushSafe(int) line: 1905
> FinalizingBrokerImpl(BrokerImpl).beforeCompletion() line: 1823
> TransactionImpl.beforeCompletion(List) line: 514
> TransactionImpl.beforeCompletion() line: 498
> TransactionImpl.beforePrepare() line: 400
> TransactionImpl.commit() line: 257
> GeronimoPlatformTransactionManager(TransactionManagerImpl).commit() line: 238
> SimpleScheduler.execTransaction(Callable<T>) line: 181
> SimpleScheduler$1.call() line: 155
> FutureTask$Sync.innerRun() line: 269
> FutureTask<V>.run() line: 123
> ThreadPoolExecutor$Worker.runTask(Runnable) line: 650
> ThreadPoolExecutor$Worker.run() line: 675
> Thread.run() line: 595
> On a following query:
> SELECT SEQUENCE_VALUE FROM OPENJPA_SEQUENCE_TABLE WHERE ID = :1 FOR UPDATE
> As I saw logs, I notices that OpenJPA starts twice (maybe that's the issue):
> 10:34:49,697 | INFO | ProcessStoreImpl-1 | Runtime | log.Log4JLogFactory$LogAdapter 80 | Starting OpenJPA 1.1.0
> 10:34:49,940 | INFO | ProcessStoreImpl-1 | JDBC | log.Log4JLogFactory$LogAdapter 80 | Using dictionary class "org.apache.openjpa.jdbc.sql.OracleDictionary" (Oracle Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production ,Oracle JDBC driver 10.2.0.4.0).
> 10:35:24,488 | INFO | pool-4-thread-1 | Runtime | log.Log4JLogFactory$LogAdapter 80 | Starting OpenJPA 1.1.0
> 10:35:24,490 | INFO | pool-4-thread-1 | JDBC | log.Log4JLogFactory$LogAdapter 80 | Using dictionary class "org.apache.openjpa.jdbc.sql.OracleDictionary" (Oracle Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production ,Oracle JDBC driver 10.2.0.4.0).
> Can you give me some suggestions about possible fix?
> Regards
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (ODE-353) Can't run ODE with Oracle and internal
connection pool or external jencks pool.
Posted by "Rafal Rusin (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/ODE-353?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12619563#action_12619563 ]
Rafal Rusin commented on ODE-353:
---------------------------------
When I used
<entry key="java:comp/env/jdbc/ode12">
<bean class="oracle.jdbc.pool.OracleConnectionPoolDataSource" destroy-method="close">
<property name="URL" value="jdbc:oracle:thin:@localhost:1521:XE"/>
<property name="user" value="ode"/>
<property name="password" value="ode"/>
</bean>
</entry>
in jndi.xml, I got a following exception after sending a first request:
ERROR - OdeConsumer - error delivering RESPONSE:
<openjpa-1.1.0-r422266:659716 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: Listener refused the connection with the following error:
ORA-12519, TNS:no appropriate service handler found
The Connection descriptor used by the client was:
localhost:1521:XE
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.getMessageExchange(BPELDAOConnectionImpl.java:297)
at org.apache.ode.bpel.engine.BpelEngineImpl.getMessageExchange(BpelEngineImpl.java:140)
at org.apache.ode.jbi.OdeConsumer$4.call(OdeConsumer.java:206)
at org.apache.ode.jbi.OdeConsumer$4.call(OdeConsumer.java:204)
at org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:174)
at org.apache.ode.jbi.OdeConsumer.outResponse(OdeConsumer.java:202)
at org.apache.ode.jbi.OdeConsumer.onJbiMessageExchange(OdeConsumer.java:160)
at org.apache.ode.jbi.JbiMessageExchangeEventRouter.onJbiMessageExchange(JbiMessageExchangeEventRouter.java:44)
at org.apache.ode.jbi.Receiver$1.run(Receiver.java:179)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:417)
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: Listener refused the connection with the following error:
ORA-12519, TNS:no appropriate service handler found
The Connection descriptor used by the client was:
localhost:1521:XE
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:261)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:387)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:441)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
at oracle.jdbc.pool.OracleDataSource.getPhysicalConnection(OracleDataSource.java:297)
at oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java:221)
at oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java:165)
at org.apache.openjpa.lib.jdbc.DelegatingDataSource.getConnection(DelegatingDataSource.java:106)
at org.apache.openjpa.lib.jdbc.DecoratingDataSource.getConnection(DecoratingDataSource.java:87)
at org.apache.openjpa.jdbc.kernel.JDBCStoreManager.connectInternal(JDBCStoreManager.java:773)
at org.apache.openjpa.jdbc.kernel.JDBCStoreManager.connect(JDBCStoreManager.java:758)
... 28 more
> Can't run ODE with Oracle and internal connection pool or external jencks pool.
> -------------------------------------------------------------------------------
>
> Key: ODE-353
> URL: https://issues.apache.org/jira/browse/ODE-353
> Project: ODE
> Issue Type: Bug
> Components: JBI Integration
> Affects Versions: 1.2
> Environment: Servicemix 3.2.1
> Reporter: Rafal Rusin
>
> During startup I have a dead lock with a following stack trace:
> Thread [pool-4-thread-1] (Suspended)
> SocketInputStream.socketRead0(FileDescriptor, byte[], int, int, int) line: not available [native method]
> SocketInputStream.read(byte[], int, int) line: 129
> DataPacket(Packet).receive() line: not available
> DataPacket.receive() line: not available
> NetInputStream.getNextPacket() line: not available
> NetInputStream.read(byte[], int, int) line: not available
> NetInputStream.read(byte[]) line: not available
> NetInputStream.read() line: not available
> T4CMAREngine.unmarshalUB1() line: 1104
> T4CMAREngine.unmarshalSB1() line: 1075
> T4C8Oall.receive() line: 480
> T4CPreparedStatement.doOall8(boolean, boolean, boolean, boolean) line: 219
> T4CPreparedStatement.executeForDescribe() line: 813
> T4CPreparedStatement(OracleStatement).executeMaybeDescribe() line: 1049
> T4CPreparedStatement.executeMaybeDescribe() line: 854
> T4CPreparedStatement(OracleStatement).doExecuteWithTimeout() line: 1154
> T4CPreparedStatement(OraclePreparedStatement).executeInternal() line: 3370
> T4CPreparedStatement(OraclePreparedStatement).executeQuery() line: 3415
> PreparedStatementHandle.executeQuery() line: 49
> LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement(DelegatingPreparedStatement).executeQuery(boolean) line: 264
> LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement.executeQuery(boolean) line: 850
> JDBCStoreManager$CancelPreparedStatement(DelegatingPreparedStatement).executeQuery(boolean) line: 262
> JDBCStoreManager$CancelPreparedStatement.executeQuery(boolean) line: 1407
> JDBCStoreManager$CancelPreparedStatement(DelegatingPreparedStatement).executeQuery() line: 252
> TableJDBCSeq.executeQuery(JDBCConfiguration, Connection, PreparedStatement, SQLBuffer) line: 728
> TableJDBCSeq.getSequence(ClassMapping, Connection) line: 470
> TableJDBCSeq.setSequence(ClassMapping, TableJDBCSeq$Status, int, boolean, Connection) line: 510
> TableJDBCSeq.allocateSequence(JDBCStore, ClassMapping, TableJDBCSeq$Status, int, boolean) line: 368
> TableJDBCSeq.nextInternal(JDBCStore, ClassMapping) line: 266
> TableJDBCSeq(AbstractJDBCSeq).next(StoreContext, ClassMetaData) line: 60
> ImplHelper.generateValue(StoreContext, ClassMetaData, FieldMetaData, int) line: 160
> ImplHelper.generateFieldValue(StoreContext, FieldMetaData) line: 144
> JDBCStoreManager.assignField(OpenJPAStateManager, int, boolean) line: 592
> ApplicationIds.assign(OpenJPAStateManager, StoreManager, FieldMetaData[], boolean) line: 464
> ApplicationIds.assign(OpenJPAStateManager, StoreManager, boolean) line: 440
> JDBCStoreManager.assignObjectId(OpenJPAStateManager, boolean) line: 576
> ROPStoreManager(DelegatingStoreManager).assignObjectId(OpenJPAStateManager, boolean) line: 134
> StateManagerImpl.assignObjectId(boolean, boolean) line: 517
> StateManagerImpl.preFlush(boolean, OpCallbacks) line: 2814
> PNewState.beforeFlush(StateManagerImpl, boolean, OpCallbacks) line: 39
> StateManagerImpl.beforeFlush(int, OpCallbacks) line: 957
> FinalizingBrokerImpl(BrokerImpl).flush(int) line: 1945
> FinalizingBrokerImpl(BrokerImpl).flushSafe(int) line: 1905
> FinalizingBrokerImpl(BrokerImpl).beforeCompletion() line: 1823
> TransactionImpl.beforeCompletion(List) line: 514
> TransactionImpl.beforeCompletion() line: 498
> TransactionImpl.beforePrepare() line: 400
> TransactionImpl.commit() line: 257
> GeronimoPlatformTransactionManager(TransactionManagerImpl).commit() line: 238
> SimpleScheduler.execTransaction(Callable<T>) line: 181
> SimpleScheduler$1.call() line: 155
> FutureTask$Sync.innerRun() line: 269
> FutureTask<V>.run() line: 123
> ThreadPoolExecutor$Worker.runTask(Runnable) line: 650
> ThreadPoolExecutor$Worker.run() line: 675
> Thread.run() line: 595
> On a following query:
> SELECT SEQUENCE_VALUE FROM OPENJPA_SEQUENCE_TABLE WHERE ID = :1 FOR UPDATE
> As I saw logs, I notices that OpenJPA starts twice (maybe that's the issue):
> 10:34:49,697 | INFO | ProcessStoreImpl-1 | Runtime | log.Log4JLogFactory$LogAdapter 80 | Starting OpenJPA 1.1.0
> 10:34:49,940 | INFO | ProcessStoreImpl-1 | JDBC | log.Log4JLogFactory$LogAdapter 80 | Using dictionary class "org.apache.openjpa.jdbc.sql.OracleDictionary" (Oracle Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production ,Oracle JDBC driver 10.2.0.4.0).
> 10:35:24,488 | INFO | pool-4-thread-1 | Runtime | log.Log4JLogFactory$LogAdapter 80 | Starting OpenJPA 1.1.0
> 10:35:24,490 | INFO | pool-4-thread-1 | JDBC | log.Log4JLogFactory$LogAdapter 80 | Using dictionary class "org.apache.openjpa.jdbc.sql.OracleDictionary" (Oracle Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production ,Oracle JDBC driver 10.2.0.4.0).
> Can you give me some suggestions about possible fix?
> Regards
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Resolved: (ODE-353) Can't run ODE with Oracle and internal
connection pool or external jencks pool.
Posted by "Rafal Rusin (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/ODE-353?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Rafal Rusin resolved ODE-353.
-----------------------------
Resolution: Fixed
> Can't run ODE with Oracle and internal connection pool or external jencks pool.
> -------------------------------------------------------------------------------
>
> Key: ODE-353
> URL: https://issues.apache.org/jira/browse/ODE-353
> Project: ODE
> Issue Type: Bug
> Components: JBI Integration
> Affects Versions: 1.2
> Environment: Servicemix 3.2.1
> Reporter: Rafal Rusin
>
> During startup I have a dead lock with a following stack trace:
> Thread [pool-4-thread-1] (Suspended)
> SocketInputStream.socketRead0(FileDescriptor, byte[], int, int, int) line: not available [native method]
> SocketInputStream.read(byte[], int, int) line: 129
> DataPacket(Packet).receive() line: not available
> DataPacket.receive() line: not available
> NetInputStream.getNextPacket() line: not available
> NetInputStream.read(byte[], int, int) line: not available
> NetInputStream.read(byte[]) line: not available
> NetInputStream.read() line: not available
> T4CMAREngine.unmarshalUB1() line: 1104
> T4CMAREngine.unmarshalSB1() line: 1075
> T4C8Oall.receive() line: 480
> T4CPreparedStatement.doOall8(boolean, boolean, boolean, boolean) line: 219
> T4CPreparedStatement.executeForDescribe() line: 813
> T4CPreparedStatement(OracleStatement).executeMaybeDescribe() line: 1049
> T4CPreparedStatement.executeMaybeDescribe() line: 854
> T4CPreparedStatement(OracleStatement).doExecuteWithTimeout() line: 1154
> T4CPreparedStatement(OraclePreparedStatement).executeInternal() line: 3370
> T4CPreparedStatement(OraclePreparedStatement).executeQuery() line: 3415
> PreparedStatementHandle.executeQuery() line: 49
> LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement(DelegatingPreparedStatement).executeQuery(boolean) line: 264
> LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement.executeQuery(boolean) line: 850
> JDBCStoreManager$CancelPreparedStatement(DelegatingPreparedStatement).executeQuery(boolean) line: 262
> JDBCStoreManager$CancelPreparedStatement.executeQuery(boolean) line: 1407
> JDBCStoreManager$CancelPreparedStatement(DelegatingPreparedStatement).executeQuery() line: 252
> TableJDBCSeq.executeQuery(JDBCConfiguration, Connection, PreparedStatement, SQLBuffer) line: 728
> TableJDBCSeq.getSequence(ClassMapping, Connection) line: 470
> TableJDBCSeq.setSequence(ClassMapping, TableJDBCSeq$Status, int, boolean, Connection) line: 510
> TableJDBCSeq.allocateSequence(JDBCStore, ClassMapping, TableJDBCSeq$Status, int, boolean) line: 368
> TableJDBCSeq.nextInternal(JDBCStore, ClassMapping) line: 266
> TableJDBCSeq(AbstractJDBCSeq).next(StoreContext, ClassMetaData) line: 60
> ImplHelper.generateValue(StoreContext, ClassMetaData, FieldMetaData, int) line: 160
> ImplHelper.generateFieldValue(StoreContext, FieldMetaData) line: 144
> JDBCStoreManager.assignField(OpenJPAStateManager, int, boolean) line: 592
> ApplicationIds.assign(OpenJPAStateManager, StoreManager, FieldMetaData[], boolean) line: 464
> ApplicationIds.assign(OpenJPAStateManager, StoreManager, boolean) line: 440
> JDBCStoreManager.assignObjectId(OpenJPAStateManager, boolean) line: 576
> ROPStoreManager(DelegatingStoreManager).assignObjectId(OpenJPAStateManager, boolean) line: 134
> StateManagerImpl.assignObjectId(boolean, boolean) line: 517
> StateManagerImpl.preFlush(boolean, OpCallbacks) line: 2814
> PNewState.beforeFlush(StateManagerImpl, boolean, OpCallbacks) line: 39
> StateManagerImpl.beforeFlush(int, OpCallbacks) line: 957
> FinalizingBrokerImpl(BrokerImpl).flush(int) line: 1945
> FinalizingBrokerImpl(BrokerImpl).flushSafe(int) line: 1905
> FinalizingBrokerImpl(BrokerImpl).beforeCompletion() line: 1823
> TransactionImpl.beforeCompletion(List) line: 514
> TransactionImpl.beforeCompletion() line: 498
> TransactionImpl.beforePrepare() line: 400
> TransactionImpl.commit() line: 257
> GeronimoPlatformTransactionManager(TransactionManagerImpl).commit() line: 238
> SimpleScheduler.execTransaction(Callable<T>) line: 181
> SimpleScheduler$1.call() line: 155
> FutureTask$Sync.innerRun() line: 269
> FutureTask<V>.run() line: 123
> ThreadPoolExecutor$Worker.runTask(Runnable) line: 650
> ThreadPoolExecutor$Worker.run() line: 675
> Thread.run() line: 595
> On a following query:
> SELECT SEQUENCE_VALUE FROM OPENJPA_SEQUENCE_TABLE WHERE ID = :1 FOR UPDATE
> As I saw logs, I notices that OpenJPA starts twice (maybe that's the issue):
> 10:34:49,697 | INFO | ProcessStoreImpl-1 | Runtime | log.Log4JLogFactory$LogAdapter 80 | Starting OpenJPA 1.1.0
> 10:34:49,940 | INFO | ProcessStoreImpl-1 | JDBC | log.Log4JLogFactory$LogAdapter 80 | Using dictionary class "org.apache.openjpa.jdbc.sql.OracleDictionary" (Oracle Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production ,Oracle JDBC driver 10.2.0.4.0).
> 10:35:24,488 | INFO | pool-4-thread-1 | Runtime | log.Log4JLogFactory$LogAdapter 80 | Starting OpenJPA 1.1.0
> 10:35:24,490 | INFO | pool-4-thread-1 | JDBC | log.Log4JLogFactory$LogAdapter 80 | Using dictionary class "org.apache.openjpa.jdbc.sql.OracleDictionary" (Oracle Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production ,Oracle JDBC driver 10.2.0.4.0).
> Can you give me some suggestions about possible fix?
> Regards
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (ODE-353) Can't run ODE with Oracle and internal
connection pool or external jencks pool.
Posted by "Rafal Rusin (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/ODE-353?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12620910#action_12620910 ]
Rafal Rusin commented on ODE-353:
---------------------------------
It's resolved here:
https://issues.apache.org/jira/browse/ODE-305
> Can't run ODE with Oracle and internal connection pool or external jencks pool.
> -------------------------------------------------------------------------------
>
> Key: ODE-353
> URL: https://issues.apache.org/jira/browse/ODE-353
> Project: ODE
> Issue Type: Bug
> Components: JBI Integration
> Affects Versions: 1.2
> Environment: Servicemix 3.2.1
> Reporter: Rafal Rusin
>
> During startup I have a dead lock with a following stack trace:
> Thread [pool-4-thread-1] (Suspended)
> SocketInputStream.socketRead0(FileDescriptor, byte[], int, int, int) line: not available [native method]
> SocketInputStream.read(byte[], int, int) line: 129
> DataPacket(Packet).receive() line: not available
> DataPacket.receive() line: not available
> NetInputStream.getNextPacket() line: not available
> NetInputStream.read(byte[], int, int) line: not available
> NetInputStream.read(byte[]) line: not available
> NetInputStream.read() line: not available
> T4CMAREngine.unmarshalUB1() line: 1104
> T4CMAREngine.unmarshalSB1() line: 1075
> T4C8Oall.receive() line: 480
> T4CPreparedStatement.doOall8(boolean, boolean, boolean, boolean) line: 219
> T4CPreparedStatement.executeForDescribe() line: 813
> T4CPreparedStatement(OracleStatement).executeMaybeDescribe() line: 1049
> T4CPreparedStatement.executeMaybeDescribe() line: 854
> T4CPreparedStatement(OracleStatement).doExecuteWithTimeout() line: 1154
> T4CPreparedStatement(OraclePreparedStatement).executeInternal() line: 3370
> T4CPreparedStatement(OraclePreparedStatement).executeQuery() line: 3415
> PreparedStatementHandle.executeQuery() line: 49
> LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement(DelegatingPreparedStatement).executeQuery(boolean) line: 264
> LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement.executeQuery(boolean) line: 850
> JDBCStoreManager$CancelPreparedStatement(DelegatingPreparedStatement).executeQuery(boolean) line: 262
> JDBCStoreManager$CancelPreparedStatement.executeQuery(boolean) line: 1407
> JDBCStoreManager$CancelPreparedStatement(DelegatingPreparedStatement).executeQuery() line: 252
> TableJDBCSeq.executeQuery(JDBCConfiguration, Connection, PreparedStatement, SQLBuffer) line: 728
> TableJDBCSeq.getSequence(ClassMapping, Connection) line: 470
> TableJDBCSeq.setSequence(ClassMapping, TableJDBCSeq$Status, int, boolean, Connection) line: 510
> TableJDBCSeq.allocateSequence(JDBCStore, ClassMapping, TableJDBCSeq$Status, int, boolean) line: 368
> TableJDBCSeq.nextInternal(JDBCStore, ClassMapping) line: 266
> TableJDBCSeq(AbstractJDBCSeq).next(StoreContext, ClassMetaData) line: 60
> ImplHelper.generateValue(StoreContext, ClassMetaData, FieldMetaData, int) line: 160
> ImplHelper.generateFieldValue(StoreContext, FieldMetaData) line: 144
> JDBCStoreManager.assignField(OpenJPAStateManager, int, boolean) line: 592
> ApplicationIds.assign(OpenJPAStateManager, StoreManager, FieldMetaData[], boolean) line: 464
> ApplicationIds.assign(OpenJPAStateManager, StoreManager, boolean) line: 440
> JDBCStoreManager.assignObjectId(OpenJPAStateManager, boolean) line: 576
> ROPStoreManager(DelegatingStoreManager).assignObjectId(OpenJPAStateManager, boolean) line: 134
> StateManagerImpl.assignObjectId(boolean, boolean) line: 517
> StateManagerImpl.preFlush(boolean, OpCallbacks) line: 2814
> PNewState.beforeFlush(StateManagerImpl, boolean, OpCallbacks) line: 39
> StateManagerImpl.beforeFlush(int, OpCallbacks) line: 957
> FinalizingBrokerImpl(BrokerImpl).flush(int) line: 1945
> FinalizingBrokerImpl(BrokerImpl).flushSafe(int) line: 1905
> FinalizingBrokerImpl(BrokerImpl).beforeCompletion() line: 1823
> TransactionImpl.beforeCompletion(List) line: 514
> TransactionImpl.beforeCompletion() line: 498
> TransactionImpl.beforePrepare() line: 400
> TransactionImpl.commit() line: 257
> GeronimoPlatformTransactionManager(TransactionManagerImpl).commit() line: 238
> SimpleScheduler.execTransaction(Callable<T>) line: 181
> SimpleScheduler$1.call() line: 155
> FutureTask$Sync.innerRun() line: 269
> FutureTask<V>.run() line: 123
> ThreadPoolExecutor$Worker.runTask(Runnable) line: 650
> ThreadPoolExecutor$Worker.run() line: 675
> Thread.run() line: 595
> On a following query:
> SELECT SEQUENCE_VALUE FROM OPENJPA_SEQUENCE_TABLE WHERE ID = :1 FOR UPDATE
> As I saw logs, I notices that OpenJPA starts twice (maybe that's the issue):
> 10:34:49,697 | INFO | ProcessStoreImpl-1 | Runtime | log.Log4JLogFactory$LogAdapter 80 | Starting OpenJPA 1.1.0
> 10:34:49,940 | INFO | ProcessStoreImpl-1 | JDBC | log.Log4JLogFactory$LogAdapter 80 | Using dictionary class "org.apache.openjpa.jdbc.sql.OracleDictionary" (Oracle Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production ,Oracle JDBC driver 10.2.0.4.0).
> 10:35:24,488 | INFO | pool-4-thread-1 | Runtime | log.Log4JLogFactory$LogAdapter 80 | Starting OpenJPA 1.1.0
> 10:35:24,490 | INFO | pool-4-thread-1 | JDBC | log.Log4JLogFactory$LogAdapter 80 | Using dictionary class "org.apache.openjpa.jdbc.sql.OracleDictionary" (Oracle Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production ,Oracle JDBC driver 10.2.0.4.0).
> Can you give me some suggestions about possible fix?
> Regards
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.