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&...]