[jboss-dev-forums] [JBoss Transactions Development] - Re: Remote txinflow: XID changes

Tom Jenkinson do-not-reply at jboss.com
Fri Oct 21 06:22:51 EDT 2011


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/632965#632965

--------------------------------------------------------------
> Mark Little wrote:
> 
> Can you compress the sequence number? What I mean by this is that if it's a Uid and based on the gtrid then maybe you can get rid of the IP address component of the sequence number because it's implicitly there in the gtrid anyway?

Sorry I didn't get chance to respond to this yesterday. I have created a BranchId class which is a clone of UID but doesn't utilise the hostname part of it. I have run a build now to check it hasn't broken anything and it is fine but I haven't put this back until we know the route we are going to take.

Removing the hostname from BranchId and giving EIS names transient integer representations gives us a space of:
64 (bqual)
     - 12 (branch id)
     - 4 - eisname key
     =  58 bytes (available for node names)
That means there are up-to 29 bytes per name, we will need to store the name length (which given the size available need only be a short) so less 2 bytes leaves 27 bytes to store a node name.

If this is enough space (and Mark and Jonathan agree that this change to branch qualifiers is sound - it will affect all Xids)  then I can have this changed within an hour and we can proceed to get this out into AS7 trunk. I will have to change the EIS name to an int too of course, but I can add a routine that converts EIS names to the next available int (or short if you shout up now) and logs out the conversion values to the log file as a warning. Would this map of EIS names need to be persisted between runs? I assume not as the transactions jboss logging output file will contain the id of the EIS against the provided name for that particular run. If we *do* need to persist this mapping file then we will need to have a think about the best place to put it, can we assume to dump it out into the current working directory?

The alternative is to keep with ints for node name, and I can put this out there right now with no change required to EIS name.

Either way I would like to get some agreement as this discussion hasn't slowed the process down so far as I have been comprehensively testing this functionality relying purely on the availablity of the node name "tokens" in an Xid but as I near the end of available tests I can perform, it really needs to get into Davids hands to provide this new functionality into AS7.
--------------------------------------------------------------

Reply to this message by going to Community
[http://community.jboss.org/message/632965#632965]

Start a new discussion in JBoss Transactions Development at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2041]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-dev-forums/attachments/20111021/3babe203/attachment.html 


More information about the jboss-dev-forums mailing list