Tyrex has makes use of the OTS (jts corba stuff) and has a
TransactionPropogationContext (TPC) which wraps the OTS propogation
context. The OTS has XA resources as well as Xids that are
externalizable. So yes this is done by the tyrex plugin specifically.
It takes the TPC on an import and converts it to a Transaction.
As well on the reverse takes a Transaction and coverts it to a TPC which
can be serialized.
The JBoss implementaion allows the TPC to be added to any marshalled
invocation. So the capability to do distributed transactions is already
in therejust not for the the default JBoss transaction manager. It
actually uses a TransactionImpl as a TPC.
Just FYI the change to the storage location for the Transaction in the
MarshalledInvocation seems to work. I am currently able to do
distributed transactions with the tyrex plugin under 3.0.1. I have not
run the testsuite yet but will shortly.
Thanks
-=Brian
On Tue, 2002-09-17 at 06:37, David Jencks wrote:
I haven't looked at the code, I've just been thinking about how to make the
jboss tm distributed.
First, until the jboss tm is distributed, it seems to me that problems
invoking an ejb on another server from inside a tx using the jboss tm are
appropriate, since the tx can't be propagated.
Using tyrex or the future enhanced jboss tm, I believe there has to be an
XAResource somewhere near the remote invoker or proxy that gets the tm to
produce an xid branch for the tx on the other server. IMO the Xid is what
should get serialized and sent over. I've been thinking that a client
interceptor would be the place for the XAResource. On the other side,
something needs to take the xid and create a transaction on the 2nd server,
associated with this xid. The something is implemented in jboss 4 in the
jca 1.5 support.
WIth Tyrex, I imagine they must have code that does this stuff. Does the
tyrex integration code appear to be trying to do any of this?
Thanks
david jencks
On 2002.09.17 03:18:15 -0400 Brian Towles wrote:
Howdy all
Repeating what be bug said.. (just for frame of reference)
--
A Marshaling Exception is being thrown the remote
invoker when any remote EJB function is called
(inter-jboss). Even when using Tyrex as a transaction
manager.
This is being caused by the Transaction Implmentation
being placed in the MarshalledInvocation's
as_is_payload Map. This is preventing any remote
invocation because the TransactionImpl for both jboss
and tyrex are not serializable.
For a remote invocation it is my understanding that
only the TransactionPropogationContext (TPC) is what is
needed to migrate the transaction for remote
invocation. The TPC is being placed in the in the
MarshaledInvocation correctly.
--
Ive been hunting this one down for a while and I would like some advice
on what a proper fix would be.
Would simply putting it into the transient_payload keep things working
internally? Theoretically it should then not be marshaled and the TPC
should be the transaction propagation mechanism for remote.
Right now I'm looking for a quick solution cause I have a deadline to
meet. (don't we all).
Any hints would help
Thanks
-=Brian
---
Sponsored by: AMD - Your access to the experts on Hammer Technology!
Open Source Linux Developers, register now for the AMD Developer
Symposium. Code: EX8664 http://www.developwithamd.com/developerlab
___
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development
---
Sponsored by: AMD - Your access to the experts on Hammer Technology!
Open Source Linux Developers, register now for the AMD Developer
Symposium. Code: EX8664 http://www.developwithamd.com/developerlab
___
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development
---
Sponsored by: AMD - Your access to the experts on Hammer Technology!
Open Source Linux Developers, register now for the AMD Developer
Symposium. Code: EX8664 http://www.developwithamd.com/developerlab
___
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development