I’m trying to implement a service which checks all my database connections to be sure everything is up and running. To achive this I use the different JDBC-adapters we have installed and fire a ‘select sysdate from dual’ (Oracle) of ‘select getdate()’ (SQL-server) statement to the database. The results are passed to the main-flow service.
The main flow looks like:
- CheckDatabase1 (Oracle)
- CheckDatabase2 (Oracle)
- CheckDatabase3 (SQL-server)
- CheckDatabase4 (Oracle)
- CheckDatabase5 (SQL-server)
- CheckDatabase6 (SQL-server)
- If anything fails raise error
Each CheckDatabase flow is like:
select sysdate from dual
map result into variable db_Timestamp
clear pipeline except db_Timestamp
If I step through this flow in developer it works exactly as expected. Also running a trace gives the same result.
But… if I run this service I get the following error:
com.wm.app.b2b.server.ServiceException: [ART.117.4036] Adapter Runtime (Adapter Service): Unable to rollback transaction. Transaction state:Transaction is rolled back
I read things about using transactions, but this gives the same results on running the main-flow.
Anybody some good idea how to solve this?