Tom Jenkinson [
http://community.jboss.org/people/tomjenkinson] created the discussion
"Re: Remote txinflow: XID changes"
To view the discussion, visit:
http://community.jboss.org/message/630210#630210
--------------------------------------------------------------
OK, the proposal is for the following structure:
XID {
formatid =131077 // INCREMENTED
gtrid = <uid> <int:originatornodename> // IMMUTABLE
bqual = <uid> <int:nodename> <int:parentnodename> <eisname>
//MUTABLE
}
javax.transaction.xa.Xid states MAXBQUALSIZE is 64, our proposal would fit in this space
<uid> is 28 bytes, node name is 4 bytes apiece (total 8) meaning bytes 36 -> 64
are available for the eisname
The current structure is:
XID {
formatid =131076
gtrid = <uid> <US-ASCII:node name>
bqual = <uid> <US-ASCII:eisname>
}
This change will pave the way for us to add a further recovery filter to the
XAResourceOrphanFilter recovery chain so that we can check the bqual for whether this XID
is owned by the transaction manager.
This will necessitate a change to the way that the AS is configured as currently it is
expecting to confiugure node name on us as a string, therefore I propose to get this
change in ASAP (i.e. put a 4.16.0 out for Monday and notify the AS team of our
intentions). It will also need to be clear in the documentation that node names *MUST* be
unique.
Top level XIDs would set their parent node name to \0 so we would need to make sure that
node names are greater than 0. Child nodes can bump the nodename slot in the bqual up to
the parentnodename slow and put their own node name in the now empty nodename slot
Comments/suggestions are certainly welcome!
--------------------------------------------------------------
Reply to this message by going to Community
[
http://community.jboss.org/message/630210#630210]
Start a new discussion in JBoss Transactions Development at Community
[
http://community.jboss.org/choose-container!input.jspa?contentType=1&...]