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.