[
https://jira.jboss.org/jira/browse/JBTM-732?page=com.atlassian.jira.plugi...
]
jzendle updated JBTM-732:
-------------------------
Environment: windows xp Jboss TS 4.10, IONA Orbix 6.4.3, windows xp. oracle 10i (was:
windows xp Jboss TS 4.10, IONA Orbix 6.4.3)
Description:
1) We have a stateless EJB running on server A JBoss 6.0 w/ JBossTS 4.10.
2) when invoked the bean starts a transaction using OTS (TransactionCurrent) then makes a
'client' call to an Iona CORBA server running on server B.
3) The method we are calling on B is defined as REQUIRES (via standard transactional POA
policy symantics)
4) the remote corba method inserts a record into a table using oracle XA driver and
returns the id of the newly inserted record to A
5) A receives the id and attempts to, within the same global transaction, read the newly
inserted record to do further work.
6) the transaction is then committed
What I am seeing is that before the OTS transaction is committed the new record is *not*
visible to A. After the transaction is comitted it is visible to 'A'.
I would expect to see:
1) 'A' would be able to read the record since it is within the same global
transaction before the transaction is committed.
2) If the Bean on A is coded as 'transaction required', I would think that I would
not need to explicitly create an OTS transaction. The transaction created by the container
would implicitly propagate to the corba call to server B.
was:
1) We have a stateless EJB running on server A JBoss 6.0 w/ JBossTS 4.10.
2) when invoked the bean starts a transaction using OTS (TransactionCurrent) then makes a
'client' call to an Iona CORBA server running on server B.
3) The method we are calling on B is defined as REQUIRES (via standard transactional POA
policy symantics)
4) the remote corba method inserts a record into a table using oracle XA driver and
returns the id of the newly inserted record to A
5) A receives the id and attempts to, within the same global transaction, read the newly
inserted record to do further work.
6) the transaction is then committed
What I am seeing is that before the OTS transaction is committed the new record is *not*
visible to A. After the transaction is comitted it is visible to 'A'.
I would expect to see:
1) 'A' would be able to read the record since it is within the same global
transaction before the transaction is committed.
2) If the Bean on A is coded as 'transaction required', I would think that I would
not need to explicitly create an OTS transaction. The transaction created by the container
would implicitly propagate to the corba call to server B.
I've attached the bean code, server log, datasource definition.
Our environment is:
1) Hand built nightly of JBossTS 4.10. We build the JTS and run it on windows xp.
2) we copied the jbossjts.jar and jbossjts-integration.jar from the jbossts build into the
./client and ./common/lib directories of jboss6.M2
3) in docs/examples/transactions we run ant to install the jts into the 'all'
configuration
4) the IONA orbix641.jar client file is placed into the ./all/lib directory to be
accessible to our .ear.
Any help and recommendations is greatly appreciated.
Note: before fix for JBTM-670 we were not even able to call the iona orb. We would get
corba TRANSACTION_REQUIRED exceptions - so this is good progress.
Thanks in advance.
XA transaction not propagating to IONA Orbix
--------------------------------------------
Key: JBTM-732
URL:
https://jira.jboss.org/jira/browse/JBTM-732
Project: JBoss Transaction Manager
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: JTS
Affects Versions: 4.10.0
Environment: windows xp Jboss TS 4.10, IONA Orbix 6.4.3, windows xp. oracle 10i
Reporter: jzendle
1) We have a stateless EJB running on server A JBoss 6.0 w/ JBossTS 4.10.
2) when invoked the bean starts a transaction using OTS (TransactionCurrent) then makes a
'client' call to an Iona CORBA server running on server B.
3) The method we are calling on B is defined as REQUIRES (via standard transactional POA
policy symantics)
4) the remote corba method inserts a record into a table using oracle XA driver and
returns the id of the newly inserted record to A
5) A receives the id and attempts to, within the same global transaction, read the newly
inserted record to do further work.
6) the transaction is then committed
What I am seeing is that before the OTS transaction is committed the new record is *not*
visible to A. After the transaction is comitted it is visible to 'A'.
I would expect to see:
1) 'A' would be able to read the record since it is within the same global
transaction before the transaction is committed.
2) If the Bean on A is coded as 'transaction required', I would think that I
would not need to explicitly create an OTS transaction. The transaction created by the
container would implicitly propagate to the corba call to server B.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira