[jbossts-issues] [JBoss JIRA] Updated: (JBTM-732) XA transaction not propagating to IONA Orbix

jzendle (JIRA) jira-events at lists.jboss.org
Wed Mar 17 17:17:44 EDT 2010


     [ https://jira.jboss.org/jira/browse/JBTM-732?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

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

        


More information about the jbossts-issues mailing list