[jboss-svn-commits] JBL Code SVN: r29701 - in labs/jbosstm/trunk: ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/common and 29 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue Oct 20 12:40:38 EDT 2009
Author: mark.little at jboss.com
Date: 2009-10-20 12:40:36 -0400 (Tue, 20 Oct 2009)
New Revision: 29701
Added:
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/common/
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/common/UidHelper.java
Modified:
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/DisposeRecord.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/StateManager.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/common/Uid.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/coordinator/AbstractRecord.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/coordinator/ActionHierarchy.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/coordinator/TxControl.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/objectstore/ObjectStoreIterator.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/recovery/ActionStatusService.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/recovery/TransactionStatusConnectionManager.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/state/InputObjectState.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/state/OutputObjectState.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/tools/OTM.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/tools/ObjectStateQuery.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/tools/ObjectStoreMonitor.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/tools/TransactionMonitor.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/utils/Utility.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/FileSystemStore.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/HashedStore.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/JDBCActionStore.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/JDBCImple.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/LogStore.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/recovery/AtomicActionRecoveryModule.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/recovery/ExpiredTransactionScanner.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/recovery/ExpiredTransactionStatusManagerScanner.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/recovery/TransactionStatusConnector.java
labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/utils/XATxConverter.java
labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/AllObjUidsTest.java
labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/LogStoreRecoveryTest.java
labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/LogStoreTest.java
labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/LogStoreTest2.java
labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/LogStressTest.java
labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/RemoveCachedTest.java
labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/recovery/CrashAbstractRecordImpl.java
labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/recovery/LogMoveTest.java
labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/recovery/RecoverAtomicActionTest.java
labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/recovery/TransactionStatusConnectorTest.java
labs/jbosstm/trunk/ArjunaCore/tsmx/bin/com/arjuna/ats/tools/objectstorebrowser/frames/BrowserFrame.java
labs/jbosstm/trunk/ArjunaCore/tsmx/bin/com/arjuna/ats/tools/objectstorebrowser/stateviewers/viewers/UidInfo.java
labs/jbosstm/trunk/ArjunaCore/txoj/classes/com/arjuna/ats/internal/txoj/recovery/TORecoveryModule.java
labs/jbosstm/trunk/ArjunaCore/txoj/classes/com/arjuna/ats/txoj/LockManager.java
labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/recovery/arjunacore/XARecoveryModule.java
labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/recovery/arjunacore/XARecoveryResourceImple.java
labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/recovery/arjunacore/XARecoveryResourceManagerImple.java
labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/jca/XATerminatorImple.java
labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/recovery/XARecoveryResource.java
labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/recovery/XARecoveryResourceManager.java
labs/jbosstm/trunk/ArjunaJTA/tsmx/bin/com/arjuna/ats/tools/objectstorebrowser/rootprovider/InFlightTransactionPseudoStore.java
labs/jbosstm/trunk/ArjunaJTS/jtax/classes/com/arjuna/ats/internal/jta/transaction/jts/jca/XATerminatorImple.java
labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/orbspecific/TransactionFactoryImple.java
labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/recovery/contact/ExpiredContactScanner.java
labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/recovery/transactions/ExpiredAssumedCompleteScanner.java
labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/recovery/transactions/TransactionRecoveryModule.java
labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/resources/ExtendedResourceRecord.java
labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/resources/ResourceRecord.java
labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Hammer01Impls/AITMatrixImpl03.java
labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Hammer01Impls/AITMatrixImpl04.java
labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Hammer02Impls/AITMatrixImpl03.java
labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Hammer02Impls/AITMatrixImpl04.java
labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/junit/testgroup/TestGroup_crashrecovery05_2.java
Log:
https://jira.jboss.org/jira/browse/JBTM-522 and https://jira.jboss.org/jira/browse/JBTM-623
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/DisposeRecord.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/DisposeRecord.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/DisposeRecord.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -46,6 +46,8 @@
import com.arjuna.ats.arjuna.state.*;
import com.arjuna.ats.arjuna.gandiva.ClassName;
import com.arjuna.ats.arjuna.objectstore.ObjectStoreType;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
+
import java.io.PrintWriter;
import java.io.IOException;
@@ -239,7 +241,7 @@
os.packInt(store.typeIs());
store.pack(os);
- objectUid.pack(os);
+ UidHelper.packInto(objectUid, os);
os.packString(typeName);
}
catch (IOException e)
@@ -277,7 +279,7 @@
store = new ObjectStore(ObjectStoreType.typeToClassName(objStoreType));
store.unpack(os);
- objectUid.unpack(os);
+ objectUid = UidHelper.unpackFrom(os);
typeName = os.unpackString();
}
else
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/StateManager.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/StateManager.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/StateManager.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -47,6 +47,8 @@
import com.arjuna.ats.arjuna.logging.FacilityCode;
import com.arjuna.ats.arjuna.exceptions.ObjectStoreException;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
+
import java.io.IOException;
/**
@@ -702,11 +704,11 @@
if (txId != null)
{
- txId.pack(os);
- processUid.pack(os);
+ UidHelper.packInto(txId, os);
+ UidHelper.packInto(processUid, os);
}
else
- Uid.nullUid().pack(os);
+ UidHelper.packInto(Uid.nullUid(), os);
}
catch (IOException ex)
{
@@ -737,14 +739,14 @@
if (myState.equals(StateManager.marker))
{
- txId.unpack(os);
+ txId = UidHelper.unpackFrom(os);
/*
* Is there going to be a Uid to unpack?
*/
if (!txId.equals(Uid.nullUid()))
- processUid.unpack(os);
+ processUid = UidHelper.unpackFrom(os);
}
else
{
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/common/Uid.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/common/Uid.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/common/Uid.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -31,8 +31,6 @@
package com.arjuna.ats.arjuna.common;
-import com.arjuna.ats.arjuna.state.InputBuffer;
-import com.arjuna.ats.arjuna.state.OutputBuffer;
import com.arjuna.ats.arjuna.utils.Utility;
import java.lang.Cloneable;
@@ -49,7 +47,7 @@
import com.arjuna.ats.arjuna.logging.tsLogger;
/**
- * Implements a unique identity class.
+ * Implements a unique identity class. Since 4.9 each instance is immutable.
*
* @author Mark Little (mark at arjuna.com)
* @version $Id: Uid.java 2342 2006-03-30 13:06:17Z $
@@ -80,6 +78,9 @@
* [com.arjuna.ats.arjuna.common.Uid_9] - Invalid Uid object.
* @message com.arjuna.ats.arjuna.common.Uid_10
* [com.arjuna.ats.arjuna.common.Uid_10] - Cannot unpack into nullUid!
+ * @message com.arjuna.ats.arjuna.common.Uid_11
+ * [com.arjuna.ats.arjuna.common.Uid_11] - Uid.Uid recreate constructor
+ * could not recreate Uid!
*/
public class Uid implements Cloneable, Serializable
@@ -92,12 +93,13 @@
public Uid ()
{
- hostAddr = -1;
+ hostAddr = null;
process = 0;
sec = 0;
other = 0;
_hashValue = -1;
- _valid = true;
+ _valid = false;
+ _stringForm = null;
try
{
@@ -110,6 +112,10 @@
sec = Uid.initTime;
other = Uid.getValue();
+
+ _valid = true;
+
+ generateHash();
}
catch (UnknownHostException e)
{
@@ -147,12 +153,13 @@
{
char theBreakChar = Uid.getBreakChar(uidString);
- hostAddr = -1;
+ hostAddr = new long[2];
process = 0;
sec = 0;
other = 0;
_hashValue = -1;
_valid = false;
+ _stringForm = null;
if (uidString.length() > 0)
{
@@ -166,11 +173,19 @@
endIndex++;
s = uidString.substring(startIndex, endIndex);
- hostAddr = (int) Utility.hexStringToLong(s);
+ hostAddr[0] = Utility.hexStringToLong(s);
startIndex = endIndex + 1;
endIndex++;
+ while (uidString.charAt(endIndex) != theBreakChar)
+ endIndex++;
+ s = uidString.substring(startIndex, endIndex);
+ hostAddr[1] = Utility.hexStringToLong(s);
+
+ startIndex = endIndex + 1;
+ endIndex++;
+
while (uidString.charAt(endIndex) != theBreakChar)
endIndex++;
@@ -190,9 +205,13 @@
other = (int) Utility.hexStringToLong(s);
_valid = true;
+
+ generateHash();
}
catch (NumberFormatException e)
{
+ e.printStackTrace();
+
if (!errsOk)
{
if (tsLogger.arjLoggerI18N.isWarnEnabled())
@@ -206,6 +225,8 @@
}
catch (StringIndexOutOfBoundsException e)
{
+ e.printStackTrace();
+
_valid = false;
}
}
@@ -248,6 +269,32 @@
}
}
}
+
+ public Uid (long[] addr, int processId, int time, int incr)
+ {
+ try
+ {
+ hostAddr = new long[2];
+ hostAddr[0] = addr[0];
+ hostAddr[1] = addr[1];
+
+ process = processId;
+ sec = time;
+ other = incr;
+
+ _valid = true;
+
+ generateHash();
+ }
+ catch (Throwable ex)
+ {
+ _valid = false;
+
+ throw new FatalError(
+ tsLogger.log_mesg.getString("com.arjuna.ats.arjuna.common.Uid_11")
+ + ex);
+ }
+ }
/**
* Override Object.hashCode. We always return a positive value.
@@ -259,60 +306,10 @@
public int hashCode ()
{
- if (_hashValue == -1)
- generateHash();
-
return _hashValue;
}
/**
- * Routines to pack and unpack Uids into Buffers (for RPC, storage etc)
- */
-
- public synchronized void pack (OutputBuffer packInto) throws IOException
- {
- if (_valid)
- {
- packInto.packInt(hostAddr);
- packInto.packInt(process);
- packInto.packInt(sec);
- packInto.packInt(other);
- }
- else
- throw new IOException(
- tsLogger.log_mesg.getString("com.arjuna.ats.arjuna.common.Uid_9"));
- }
-
- public synchronized void unpack (InputBuffer unpackFrom) throws IOException
- {
- /*
- * Prevent nullUid being overwritten by unpack.
- */
-
- if (this == Uid.nullUid())
- throw new IOException(
- tsLogger.log_mesg.getString("com.arjuna.ats.arjuna.common.Uid_10"));
-
- _valid = true; // should not be able to pack an invalid Uid.
-
- try
- {
- hostAddr = unpackFrom.unpackInt();
- process = unpackFrom.unpackInt();
- sec = unpackFrom.unpackInt();
- other = unpackFrom.unpackInt();
-
- _hashValue = -1;
- }
- catch (IOException e)
- {
- _valid = false;
-
- throw e;
- }
- }
-
- /**
* Print a human-readable form of the Uid.
*/
@@ -323,10 +320,16 @@
public String stringForm ()
{
- return Utility.intToHexString(hostAddr) + Uid.breakChar
+ // no need to synchronize since object is immutable
+
+ if (_stringForm == null)
+ _stringForm = Utility.longToHexString(hostAddr[0]) + Uid.breakChar
+ + Utility.longToHexString(hostAddr[1]) + Uid.breakChar
+ Utility.intToHexString(process) + Uid.breakChar
+ Utility.intToHexString(sec) + Uid.breakChar
+ Utility.intToHexString(other);
+
+ return _stringForm;
}
/**
@@ -336,7 +339,8 @@
public String fileStringForm ()
{
- return Utility.intToHexString(hostAddr) + Uid.fileBreakChar
+ return Utility.longToHexString(hostAddr[0]) + Uid.fileBreakChar
+ + Utility.longToHexString(hostAddr[1]) + Uid.fileBreakChar
+ Utility.intToHexString(process) + Uid.fileBreakChar
+ Utility.intToHexString(sec) + Uid.fileBreakChar
+ Utility.intToHexString(other);
@@ -364,7 +368,7 @@
* Copy the specified Uid over this instance.
*/
- public synchronized void copy (Uid toCopy)
+ public void copy (Uid toCopy)
{
if (toCopy == this)
return;
@@ -401,7 +405,7 @@
if (u == this)
return true;
- return ((other == u.other) && (sec == u.sec) && (process == u.process) && (hostAddr == u.hostAddr));
+ return ((other == u.other) && (sec == u.sec) && (process == u.process) && (hostAddr[0] == u.hostAddr[0]) && (hostAddr[1] == u.hostAddr[1]));
}
public boolean notEquals (Uid u)
@@ -412,7 +416,7 @@
if (u == this)
return false;
- return ((other != u.other) || (sec != u.sec) || (process != u.process) || (hostAddr != u.hostAddr));
+ return ((other != u.other) || (sec != u.sec) || (process != u.process) || (hostAddr[0] != u.hostAddr[0]) || (hostAddr[1] != u.hostAddr[1]));
}
public boolean lessThan (Uid u)
@@ -432,23 +436,26 @@
if (LAST_RESOURCE_UID.equals(u))
return true ;
- if (hostAddr < u.hostAddr)
+ if ((hostAddr[0] < u.hostAddr[0]) && (hostAddr[1] < u.hostAddr[1]))
return true;
else
- if (hostAddr == u.hostAddr)
- {
- if (process < u.process)
- return true;
- else
- if (process == u.process)
- {
- if (sec < u.sec)
- return true;
- else
- if ((sec == u.sec) && (other < u.other))
- return true;
- }
- }
+ {
+ if ((hostAddr[0] == u.hostAddr[0]) && (hostAddr[1] == u.hostAddr[1]))
+ {
+ if (process < u.process)
+ return true;
+ else
+ if (process == u.process)
+ {
+ if (sec < u.sec)
+ return true;
+ else
+ if ((sec == u.sec) && (other < u.other))
+ return true;
+ }
+ }
+ }
+
return false;
}
@@ -469,10 +476,11 @@
if (LAST_RESOURCE_UID.equals(u))
return false ;
- if (hostAddr > u.hostAddr)
+ if ((hostAddr[0] > u.hostAddr[0]) && (hostAddr[1] > u.hostAddr[1]))
return true;
else
- if (hostAddr == u.hostAddr)
+ {
+ if ((hostAddr[0] == u.hostAddr[0]) && (hostAddr[1] == u.hostAddr[0]))
{
if (process > u.process)
return true;
@@ -486,6 +494,8 @@
return true;
}
}
+ }
+
return false;
}
@@ -493,13 +503,13 @@
* Is the Uid valid?
*/
- public synchronized final boolean valid ()
+ public final boolean valid ()
{
return _valid;
}
/**
- * Return a null Uid (0:0:0:0)
+ * Return a null Uid (0:0:0:0:0)
*/
public static final Uid nullUid ()
@@ -508,7 +518,7 @@
}
/**
- * Return a last resource Uid (0:0:0:1)
+ * Return a last resource Uid (0:0:0:0:1)
*/
public static final Uid lastResourceUid ()
{
@@ -516,7 +526,7 @@
}
/**
- * Return the maximum Uid (7fffffff:7fffffff:7fffffff:7fffffff)
+ * Return the maximum Uid (7fffffff:7fffffff:7fffffff:7fffffff:7fffffff)
*/
public static final Uid maxUid ()
{
@@ -524,7 +534,7 @@
}
/**
- * Return the minimum Uid (-80000000:-80000000:-80000000:-80000000)
+ * Return the minimum Uid (-80000000:-80000000:-80000000:-80000000:-80000000)
*/
public static final Uid minUid ()
{
@@ -543,7 +553,8 @@
{
if (_valid)
{
- out.writeInt(hostAddr);
+ out.writeLong(hostAddr[0]);
+ out.writeLong(hostAddr[1]);
out.writeInt(process);
out.writeInt(sec);
out.writeInt(other);
@@ -562,16 +573,17 @@
private void readObject (java.io.ObjectInputStream in) throws IOException,
ClassNotFoundException
{
- _valid = true; // should not be able to pack an invalid Uid.
-
try
{
- hostAddr = in.readInt();
+ hostAddr[0] = in.readLong();
+ hostAddr[1] = in.readLong();
process = in.readInt();
sec = in.readInt();
- other = in.readInt();
- _hashValue = -1; // Set hashvalue to -1 to force a regeneration
- // of the hashcode
+ other = in.readInt();
+
+ _valid = true; // should not be able to pack an invalid Uid.
+
+ generateHash();
}
catch (IOException e)
{
@@ -597,12 +609,12 @@
* adverse effect.
*/
- private final synchronized void generateHash ()
+ private final void generateHash ()
{
if (_valid)
{
if (true)
- _hashValue = hostAddr ^ process ^ sec ^ other;
+ _hashValue = (int) hostAddr[0] ^ (int) hostAddr[1] ^ process ^ sec ^ other;
else
{
int g = 0;
@@ -629,11 +641,6 @@
}
}
- /*
- * Integers are signed in Java, so we have to be careful and only
- * return a signed value.
- */
-
if (_hashValue < 0)
_hashValue = -_hashValue;
}
@@ -660,19 +667,16 @@
return Uid.breakChar;
}
- // use ints rather than longs for interoperability with C++ version
+ protected long[] hostAddr; // representation of ipv6 address (and ipv4)
+ protected int process;
+ protected int sec;
+ protected int other;
- private int hostAddr;
-
- private int process;
-
- private int sec;
-
- private int other;
-
private int _hashValue;
private boolean _valid;
+
+ private String _stringForm;
private static int uidsCreated ;
@@ -682,11 +686,11 @@
private static char fileBreakChar = '_';
- private static Uid NIL_UID = new Uid("0:0:0:0") ;
+ private static Uid NIL_UID = new Uid("0:0:0:0:0") ;
- private static Uid LAST_RESOURCE_UID = new Uid("0:0:0:1") ;
+ private static Uid LAST_RESOURCE_UID = new Uid("0:0:0:0:1") ;
- private static Uid MAX_UID = new Uid("7fffffff:7fffffff:7fffffff:7fffffff") ;
+ private static Uid MAX_UID = new Uid("7fffffff:7fffffff:7fffffff:7fffffff:7fffffff") ;
- private static Uid MIN_UID = new Uid("-80000000:-80000000:-80000000:-80000000") ;
+ private static Uid MIN_UID = new Uid("-80000000:-80000000:-80000000:-80000000:-80000000") ;
}
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/coordinator/AbstractRecord.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/coordinator/AbstractRecord.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/coordinator/AbstractRecord.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -44,6 +44,7 @@
import com.arjuna.ats.arjuna.logging.tsLogger;
import com.arjuna.ats.arjuna.logging.FacilityCode;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
/**
* Abstract Record Class
@@ -348,7 +349,7 @@
{
try
{
- uidOfObject.pack(os);
+ UidHelper.packInto(uidOfObject, os);
os.packString(typeOfObject);
return true;
@@ -377,7 +378,7 @@
try
{
- uidOfObject.unpack(os);
+ uidOfObject = UidHelper.unpackFrom(os);
typeOfObject = os.unpackString();
return true;
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/coordinator/ActionHierarchy.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/coordinator/ActionHierarchy.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/coordinator/ActionHierarchy.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -40,6 +40,7 @@
import com.arjuna.ats.arjuna.logging.tsLogger;
import com.arjuna.ats.arjuna.logging.FacilityCode;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.common.util.logging.*;
@@ -298,7 +299,7 @@
for (int i = 0; i < currentDepth; i++)
{
- hierarchy[i].actionUid.pack(state);
+ UidHelper.packInto(hierarchy[i].actionUid, state);
state.packInt(hierarchy[i].actionType);
}
}
@@ -331,7 +332,7 @@
for (int i = 0; i < newDepth; i++)
{
- temp.actionUid.unpack(state);
+ temp.actionUid = UidHelper.unpackFrom(state);
temp.actionType = state.unpackInt();
newHier.add(temp.actionUid, temp.actionType);
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/coordinator/TxControl.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/coordinator/TxControl.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/coordinator/TxControl.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -35,10 +35,10 @@
import com.arjuna.ats.arjuna.gandiva.ClassName;
import com.arjuna.ats.arjuna.common.Environment;
import com.arjuna.ats.arjuna.common.arjPropertyManager;
-import com.arjuna.ats.arjuna.common.Uid;
import com.arjuna.ats.arjuna.objectstore.ObjectStore;
import com.arjuna.ats.arjuna.ArjunaNames;
import com.arjuna.ats.arjuna.recovery.TransactionStatusManager;
+import com.arjuna.ats.arjuna.utils.Utility;
/**
* Transaction configuration object. We have a separate object for this so that
@@ -63,6 +63,9 @@
public class TxControl
{
+ public static final int NODE_NAME_SIZE = 10;
+ public static final String DEFAULT_NODE_NAME = "Arjuna:";
+
public static class Shutdown extends Thread
{
public void run()
@@ -262,7 +265,7 @@
public static void setXANodeName(byte[] name)
{
- if (name.length > 64)
+ if (name.length > NODE_NAME_SIZE)
{
if (tsLogger.arjLoggerI18N.isWarnEnabled())
{
@@ -377,51 +380,57 @@
}
else
{
- Uid nodeName = new Uid();
+ /*
+ * In the past we used a Uid as the default node name. However, this is too
+ * big for the way in which we use it within Xids now that we also support
+ * ipv6. Hence the need to limit the size of a node name to 10 bytes.
+ */
+
+ String nodeName = DEFAULT_NODE_NAME+Utility.getpid();
if (tsLogger.arjLoggerI18N.isWarnEnabled())
{
tsLogger.arjLoggerI18N.warn(
"com.arjuna.ats.arjuna.coordinator.TxControl_1",
new Object[]
- { nodeName.stringForm() });
+ { nodeName });
}
- xaNodeName = nodeName.stringForm().getBytes();
+ xaNodeName = nodeName.getBytes();
writeNodeName = true;
}
- if (xaNodeName.length > 30)
+ if (xaNodeName.length > NODE_NAME_SIZE)
{
- Uid nodeName = new Uid();
+ String nodeName = DEFAULT_NODE_NAME+Utility.getpid();
if (tsLogger.arjLoggerI18N.isWarnEnabled())
{
tsLogger.arjLoggerI18N.warn(
"com.arjuna.ats.arjuna.coordinator.TxControl_2",
new Object[]
- { nodeName.stringForm() });
+ { nodeName });
}
- xaNodeName = nodeName.stringForm().getBytes();
+ xaNodeName = nodeName.getBytes();
writeNodeName = true;
}
if ((env != null) && (env.indexOf('-') != -1))
{
- Uid nodeName = new Uid();
+ String nodeName = DEFAULT_NODE_NAME+Utility.getpid();
if (tsLogger.arjLoggerI18N.isWarnEnabled())
{
tsLogger.arjLoggerI18N.warn(
"com.arjuna.ats.arjuna.coordinator.TxControl_3",
new Object[]
- { nodeName.stringForm() });
+ { nodeName });
}
- xaNodeName = nodeName.stringForm().getBytes();
+ xaNodeName = nodeName.getBytes();
writeNodeName = true;
}
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/objectstore/ObjectStoreIterator.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/objectstore/ObjectStoreIterator.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/objectstore/ObjectStoreIterator.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -35,6 +35,8 @@
import com.arjuna.ats.arjuna.state.InputObjectState;
import com.arjuna.ats.arjuna.exceptions.ObjectStoreException;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
+
import java.io.IOException;
/**
@@ -68,9 +70,7 @@
try
{
- newUid = new Uid(Uid.nullUid());
-
- newUid.unpack(uidList);
+ newUid = UidHelper.unpackFrom(uidList);
}
catch (IOException e)
{
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/recovery/ActionStatusService.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/recovery/ActionStatusService.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/recovery/ActionStatusService.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -44,6 +44,7 @@
import com.arjuna.ats.arjuna.utils.Utility;
import com.arjuna.ats.arjuna.logging.tsLogger;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
/**
* @message com.arjuna.ats.arjuna.recovery.ActionStatusService_1 [com.arjuna.ats.arjuna.recovery.ActionStatusService_1] - transactionType: {0} uid: {1} \n Status is {2}
@@ -303,12 +304,12 @@
if ( _objectStore.allObjUids( theTypeName, uids ) )
{
- Uid theUid = new Uid( Uid.nullUid() );
+ Uid theUid = null;
while ( !endOfUids )
{
// extract a uid
- theUid.unpack( uids );
+ theUid = UidHelper.unpackFrom(uids);
if (theUid.equals( Uid.nullUid() ))
{
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/recovery/TransactionStatusConnectionManager.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/recovery/TransactionStatusConnectionManager.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/recovery/TransactionStatusConnectionManager.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -39,6 +39,7 @@
import com.arjuna.ats.arjuna.exceptions.ObjectStoreException ;
import com.arjuna.ats.arjuna.objectstore.ObjectStore ;
import com.arjuna.ats.arjuna.state.InputObjectState ;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.internal.arjuna.recovery.TransactionStatusConnector ;
import com.arjuna.ats.internal.arjuna.recovery.TransactionStatusManagerItem ;
@@ -209,7 +210,7 @@
if ( tsmis )
{
- Uid theUid = new Uid(Uid.nullUid()) ;
+ Uid theUid = null;
boolean moreUids = true ;
@@ -217,7 +218,7 @@
{
try
{
- theUid.unpack( uids ) ;
+ theUid = UidHelper.unpackFrom(uids);
if ( theUid.equals( Uid.nullUid() ) )
{
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/state/InputObjectState.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/state/InputObjectState.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/state/InputObjectState.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -35,6 +35,7 @@
import java.io.PrintWriter;
import com.arjuna.ats.arjuna.logging.*;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.common.util.logging.DebugLevel;
import com.arjuna.common.util.logging.VisibilityLevel;
@@ -206,7 +207,7 @@
public synchronized void unpackFrom (InputBuffer buff) throws IOException
{
imageType = buff.unpackString();
- bufferUid.unpack(buff);
+ bufferUid = UidHelper.unpackFrom(buff);
super.unpackFrom(buff);
}
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/state/OutputObjectState.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/state/OutputObjectState.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/state/OutputObjectState.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -37,6 +37,7 @@
import java.io.IOException;
import com.arjuna.ats.arjuna.logging.*;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.common.util.logging.DebugLevel;
import com.arjuna.common.util.logging.VisibilityLevel;
@@ -219,7 +220,7 @@
public synchronized void packInto (OutputBuffer buff) throws IOException
{
buff.packString(imageType);
- bufferUid.pack(buff);
+ UidHelper.packInto(bufferUid, buff);
super.packInto(buff);
}
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/tools/OTM.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/tools/OTM.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/tools/OTM.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -38,6 +38,8 @@
import com.arjuna.ats.arjuna.objectstore.ObjectStore;
import com.arjuna.ats.arjuna.gandiva.ClassName;
import com.arjuna.ats.arjuna.state.*;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
+
import javax.swing.*;
import javax.swing.tree.*;
import javax.swing.event.*;
@@ -285,7 +287,7 @@
while (!endOfUids)
{
- theUid.unpack(uids);
+ theUid = UidHelper.unpackFrom(uids);
if (theUid.equals(Uid.nullUid()))
{
@@ -489,7 +491,7 @@
while (!endOfUids)
{
- theUid.unpack(uids);
+ theUid = UidHelper.unpackFrom(uids);
if (theUid.equals(Uid.nullUid()))
endOfUids = true;
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/tools/ObjectStateQuery.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/tools/ObjectStateQuery.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/tools/ObjectStateQuery.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -37,6 +37,8 @@
import com.arjuna.ats.arjuna.objectstore.ObjectStore;
import com.arjuna.ats.arjuna.state.*;
import com.arjuna.ats.arjuna.gandiva.ClassName;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
+
import java.io.PrintWriter;
public class ObjectStateQuery
@@ -89,10 +91,8 @@
imple.allObjUids(type, buff, ObjectStore.OS_UNCOMMITTED);
- Uid u = new Uid(Uid.nullUid());
+ Uid u = UidHelper.unpackFrom(buff);
- u.unpack(buff);
-
System.out.println("got "+u);
}
catch (Exception e)
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/tools/ObjectStoreMonitor.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/tools/ObjectStoreMonitor.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/tools/ObjectStoreMonitor.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -37,6 +37,8 @@
import com.arjuna.ats.arjuna.objectstore.ObjectStore;
import com.arjuna.ats.arjuna.state.*;
import com.arjuna.ats.arjuna.gandiva.ClassName;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
+
import java.io.PrintWriter;
public class ObjectStoreMonitor
@@ -123,7 +125,7 @@
while (!endOfUids)
{
- theUid.unpack(uids);
+ theUid = UidHelper.unpackFrom(uids);
if (theUid.equals(Uid.nullUid()))
endOfUids = true;
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/tools/TransactionMonitor.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/tools/TransactionMonitor.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/tools/TransactionMonitor.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -38,6 +38,8 @@
import com.arjuna.ats.arjuna.objectstore.ObjectStore;
import com.arjuna.ats.arjuna.state.*;
import com.arjuna.ats.arjuna.gandiva.ClassName;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
+
import java.io.PrintWriter;
public class TransactionMonitor
@@ -116,7 +118,7 @@
while (!endOfUids)
{
- theUid.unpack(uids);
+ theUid = UidHelper.unpackFrom(uids);
if (theUid.equals(Uid.nullUid()))
endOfUids = true;
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/utils/Utility.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/utils/Utility.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/arjuna/utils/Utility.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -36,6 +36,7 @@
import com.arjuna.ats.arjuna.common.*;
import com.arjuna.common.util.propertyservice.PropertyManager;
+import java.net.Inet6Address;
import java.net.InetAddress;
import java.net.UnknownHostException;
@@ -119,7 +120,7 @@
}
/**
- * Convert a hex String to a long.
+ * Convert a hex String to a long
*/
public static long hexStringToLong (String s) throws NumberFormatException
@@ -162,27 +163,65 @@
}
/**
- * @return an integer representing the ip address of the local machine.
+ * @return Long(s) representing the ip v6 address of the local machine.
* Essentially the bytes of the InetAddress are shuffled into the
- * integer. This was once part of the Uid class but has been
+ * long(s). This was once part of the Uid class but has been
* separated for general availability.
* @since JTS 2.1.
*/
- public static synchronized int hostInetAddr () throws UnknownHostException
+ public static synchronized long[] hostInetAddr () throws UnknownHostException
{
/*
* Calculate only once.
*/
- if (myAddr == 0)
+ if (myAddr == null)
{
+ myAddr = new long[2];
+
+ myAddr[0] = 0;
+ myAddr[1] = 0;
+
+ byte[] b = null;
InetAddress addr = InetAddress.getLocalHost();
- byte[] b = addr.getAddress();
- for (int i = 0; i < b.length; i++)
+ if (addr instanceof Inet6Address)
{
+ // 16 bytes to work with.
+
+ b = addr.getAddress();
+ }
+ else
+ {
/*
+ * Convert ipv4 to ipv6
+ *
+ * We only have 4 bytes here.
+ *
+ * ::FFFF:129.144.52.38
+ */
+
+ byte[] v4Address = addr.getAddress();
+
+ if (v4Address.length > 4)
+ throw new UnknownHostException();
+
+ b = new byte[16];
+
+ // high order byte in [0]
+
+ for (int i = 0; i < 10; i++)
+ b[i] = 0;
+
+ b[10] = b[11] = (byte) 255;
+
+ System.arraycopy(v4Address, 0, b, 12, v4Address.length);
+ }
+
+ for (int i = 0; i < 8; i++)
+ {
+ /*
* Convert signed byte into unsigned.
*/
@@ -190,10 +229,25 @@
l += (0x80 & b[i]);
- myAddr = (myAddr << 8) | l;
+ myAddr[0] = (myAddr[0] << 8) | l;
}
+
+ for (int i = 8; i < 16; i++)
+ {
+ /*
+ * Convert signed byte into unsigned.
+ */
+
+ int l = 0x7f & b[i];
+
+ l += (0x80 & b[i]);
+
+ myAddr[1] = (myAddr[1] << 8) | l;
+ }
}
+ System.err.println("**returning < "+myAddr[0]+", "+myAddr[1]+" >");
+
return myAddr;
}
@@ -367,7 +421,7 @@
}
}
- private static int myAddr = 0;
+ private static long[] myAddr = null;
private static Uid processUid = null;
Added: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/common/UidHelper.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/common/UidHelper.java (rev 0)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/common/UidHelper.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -0,0 +1,109 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006,
+ * @author JBoss Inc.
+ */
+/*
+ * Copyright (C) 1998, 1999, 2000,
+ *
+ * Arjuna Solutions Limited,
+ * Newcastle upon Tyne,
+ * Tyne and Wear,
+ * UK.
+ *
+ * $Id: CadaverRecordSetup.java 2342 2006-03-30 13:06:17Z $
+ */
+
+package com.arjuna.ats.internal.arjuna.common;
+
+import java.io.IOException;
+import java.security.InvalidParameterException;
+
+import com.arjuna.ats.arjuna.common.Uid;
+import com.arjuna.ats.arjuna.state.InputBuffer;
+import com.arjuna.ats.arjuna.state.OutputBuffer;
+
+public class UidHelper
+{
+ public static final Uid unpackFrom (InputBuffer buff) throws IOException
+ {
+ long[] hostAddr = new long[2];
+ int process;
+ int sec;
+ int other;
+
+ hostAddr[0] = buff.unpackLong();
+ hostAddr[1] = buff.unpackLong();
+ process = buff.unpackInt();
+ sec = buff.unpackInt();
+ other = buff.unpackInt();
+
+ return new Uid(hostAddr, process, sec, other);
+ }
+
+ public static final void packInto (Uid u, OutputBuffer buff)
+ throws IOException
+ {
+ if (u.valid())
+ {
+ UidHelper foo = new UidHelper();
+ UidFriend friend = foo.new UidFriend(u);
+ long[] hostAddr = friend.getAddress();
+
+ buff.packLong(hostAddr[0]);
+ buff.packLong(hostAddr[1]);
+ buff.packInt(friend.getProcessId());
+ buff.packInt(friend.getSec());
+ buff.packInt(friend.getOther());
+ }
+ else
+ throw new InvalidParameterException();
+ }
+
+ private UidHelper()
+ {
+ }
+
+ class UidFriend extends Uid
+ {
+ public UidFriend(Uid u)
+ {
+ super(u);
+ }
+
+ public long[] getAddress ()
+ {
+ return hostAddr;
+ }
+
+ public int getProcessId ()
+ {
+ return process;
+ }
+
+ public int getSec ()
+ {
+ return sec;
+ }
+
+ public int getOther ()
+ {
+ return other;
+ }
+ }
+}
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/FileSystemStore.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/FileSystemStore.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/FileSystemStore.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -47,6 +47,8 @@
import java.util.Hashtable;
import com.arjuna.ats.arjuna.exceptions.ObjectStoreException;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
+
import java.lang.NumberFormatException;
import java.io.File;
import java.io.FileInputStream;
@@ -296,7 +298,7 @@
if ((aUid.notEquals(Uid.nullUid())) && ((match == ObjectStore.OS_UNKNOWN) ||
(isType(aUid, tName, match))))
{
- aUid.pack(store);
+ UidHelper.packInto(aUid, store);
}
}
}
@@ -315,7 +317,7 @@
try
{
- Uid.nullUid().pack(store);
+ UidHelper.packInto(Uid.nullUid(), store);
}
catch (IOException e)
{
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/HashedStore.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/HashedStore.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/HashedStore.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -47,9 +47,10 @@
import com.arjuna.common.util.logging.*;
import java.io.*;
-import java.io.File;
import com.arjuna.ats.arjuna.exceptions.ObjectStoreException;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
+
import java.io.IOException;
import java.io.FileNotFoundException;
import java.lang.NumberFormatException;
@@ -211,7 +212,7 @@
if ((aUid.notEquals(Uid.nullUid())) && ((match == ObjectStore.OS_UNKNOWN) ||
(isType(aUid, tName, match))))
{
- aUid.pack(store);
+ UidHelper.packInto(aUid, store);
}
}
catch (NumberFormatException e)
@@ -238,7 +239,7 @@
try
{
- Uid.nullUid().pack(store);
+ UidHelper.packInto(Uid.nullUid(), store);
}
catch (IOException e)
{
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/JDBCActionStore.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/JDBCActionStore.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/JDBCActionStore.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -31,7 +31,6 @@
package com.arjuna.ats.internal.arjuna.objectstore;
-import com.arjuna.ats.internal.arjuna.objectstore.JDBCImple;
import com.arjuna.ats.arjuna.ArjunaNames;
import com.arjuna.ats.arjuna.state.*;
@@ -39,10 +38,7 @@
import com.arjuna.ats.arjuna.logging.tsLogger;
import com.arjuna.ats.arjuna.logging.FacilityCode;
-import com.arjuna.ats.arjuna.gandiva.*;
-import com.arjuna.common.util.propertyservice.PropertyManager;
import com.arjuna.ats.arjuna.objectstore.ObjectStore;
-import com.arjuna.ats.arjuna.objectstore.ObjectStoreImple;
import com.arjuna.ats.arjuna.objectstore.ObjectStoreType;
import com.arjuna.ats.arjuna.objectstore.jdbc.JDBCAccess;
import com.arjuna.ats.arjuna.common.*;
@@ -51,12 +47,8 @@
import com.arjuna.common.util.logging.DebugLevel;
import com.arjuna.common.util.logging.VisibilityLevel;
-import java.io.*;
-import java.sql.*;
import com.arjuna.ats.arjuna.exceptions.ObjectStoreException;
-import com.arjuna.ats.arjuna.exceptions.ObjectStoreError;
-import com.arjuna.ats.arjuna.exceptions.FatalError;
import java.io.IOException;
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/JDBCImple.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/JDBCImple.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/JDBCImple.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -42,6 +42,8 @@
import java.util.Hashtable;
import com.arjuna.ats.arjuna.exceptions.ObjectStoreException;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
+
import java.io.IOException;
/**
@@ -526,7 +528,7 @@
try
{
theUid = new Uid(rs.getString(1));
- theUid.pack(store);
+ UidHelper.packInto(theUid, store);
}
catch (IOException ex)
{
@@ -585,7 +587,7 @@
try
{
- Uid.nullUid().pack(store);
+ UidHelper.packInto(Uid.nullUid(), store);
}
catch (IOException e)
{
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/LogStore.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/LogStore.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/LogStore.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -40,6 +40,7 @@
import com.arjuna.ats.arjuna.logging.tsLogger;
import com.arjuna.ats.arjuna.logging.FacilityCode;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.internal.arjuna.objectstore.LogInstance.TransactionData;
/**
@@ -193,12 +194,12 @@
{
while (iter.hasNext())
{
- iter.next().pack(state);
+ UidHelper.packInto(iter.next(), state);
}
// don't forget to null terminate
- Uid.nullUid().pack(state);
+ UidHelper.packInto(Uid.nullUid(), state);
}
catch (final IOException ex)
{
@@ -469,7 +470,7 @@
{
try
{
- tempUid.unpack(ios);
+ tempUid = UidHelper.unpackFrom(ios);
}
catch (final Exception ex)
{
@@ -643,7 +644,7 @@
{
do
{
- logName.unpack(logs);
+ logName = UidHelper.unpackFrom(logs);
if (logName.notEquals(Uid.nullUid()))
{
@@ -665,7 +666,7 @@
{
for (int i = 0; i < txs.size(); i++)
{
- txs.get(i).stateUid().pack(objUids);
+ UidHelper.packInto(txs.get(i).stateUid(), objUids);
}
}
}
@@ -673,7 +674,7 @@
// remember null terminator
- Uid.nullUid().pack(objUids);
+ UidHelper.packInto(Uid.nullUid(), objUids);
state.setBuffer(objUids.buffer());
}
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/recovery/AtomicActionRecoveryModule.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/recovery/AtomicActionRecoveryModule.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/recovery/AtomicActionRecoveryModule.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -49,6 +49,7 @@
import com.arjuna.ats.arjuna.logging.FacilityCode ;
import com.arjuna.ats.arjuna.logging.tsLogger;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.common.util.logging.*;
@@ -240,7 +241,7 @@
+ " transactions" ) ;
}
- Uid theUid = new Uid( Uid.nullUid() );
+ Uid theUid = null;
boolean moreUids = true ;
@@ -248,7 +249,7 @@
{
try
{
- theUid.unpack( uids ) ;
+ theUid = UidHelper.unpackFrom(uids);
if (theUid.equals( Uid.nullUid() ))
{
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/recovery/ExpiredTransactionScanner.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/recovery/ExpiredTransactionScanner.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/recovery/ExpiredTransactionScanner.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -32,6 +32,7 @@
import com.arjuna.ats.arjuna.exceptions.ObjectStoreException;
import com.arjuna.ats.arjuna.logging.tsLogger;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
/**
* This class is a plug-in module for the recovery manager. This class is
@@ -85,14 +86,14 @@
if (_objectStore.allObjUids(_typeName, uids))
{
- Uid theUid = new Uid(Uid.nullUid());
+ Uid theUid = null;
boolean endOfUids = false;
while (!endOfUids)
{
// extract a uid
- theUid.unpack(uids);
+ theUid = UidHelper.unpackFrom(uids);
if (theUid.equals(Uid.nullUid()))
endOfUids = true;
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/recovery/ExpiredTransactionStatusManagerScanner.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/recovery/ExpiredTransactionStatusManagerScanner.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/recovery/ExpiredTransactionStatusManagerScanner.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -42,6 +42,7 @@
import com.arjuna.ats.arjuna.logging.tsLogger;
import com.arjuna.ats.arjuna.logging.FacilityCode;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.common.util.logging.*;
@@ -99,14 +100,15 @@
// find the uids of all the transaction status manager items
if ( _objectStore.allObjUids(_itemTypeName, uids) )
{
- Uid theUid = new Uid(Uid.nullUid()) ;
+ Uid theUid = null;
boolean endOfUids = false ;
while (!endOfUids)
{
// extract a uid
- theUid.unpack(uids) ;
+
+ theUid = UidHelper.unpackFrom(uids);
if (theUid.equals(Uid.nullUid()))
endOfUids = true ;
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/recovery/TransactionStatusConnector.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/recovery/TransactionStatusConnector.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/recovery/TransactionStatusConnector.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -219,6 +219,8 @@
String server_pid = _from_server.readLine() ;
+ System.err.println("**comparing "+server_pid+" and "+_pid);
+
if ( Utility.hexStringToInt(server_pid) == Utility.hexStringToInt(_pid) )
{
if ( ! _testMode )
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/utils/XATxConverter.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/utils/XATxConverter.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/utils/XATxConverter.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -68,7 +68,7 @@
byte[] nodeName = TxControl.getXANodeName();
String s = uid.stringForm();
int uidLen = s.length()+nodeName.length+1;
-
+
if (uidLen > com.arjuna.ats.arjuna.xa.XID.MAXGTRIDSIZE) // Uid is too long!!!!
{
throw new IllegalStateException();
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/AllObjUidsTest.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/AllObjUidsTest.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/AllObjUidsTest.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -36,6 +36,7 @@
import com.arjuna.ats.arjuna.common.Uid;
import com.arjuna.ats.arjuna.coordinator.TxControl;
import com.arjuna.ats.arjuna.exceptions.ObjectStoreException;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import org.junit.Test;
import static org.junit.Assert.*;
@@ -52,20 +53,17 @@
InputObjectState ios = new InputObjectState();
objStore.allObjUids(type, ios, ObjectStore.OS_UNKNOWN);
- Uid uid = new Uid();
- uid.unpack(ios);
+ Uid uid = UidHelper.unpackFrom(ios);
assertEquals(Uid.nullUid(), uid);
ios = new InputObjectState();
objStore.allObjUids(type, ios, ObjectStore.OS_COMMITTED);
- uid = new Uid();
- uid.unpack(ios);
+ uid = UidHelper.unpackFrom(ios);
assertEquals(Uid.nullUid(), uid);
ios = new InputObjectState();
objStore.allObjUids(type, ios, ObjectStore.OS_UNCOMMITTED);
- uid = new Uid();
- uid.unpack(ios);
+ uid = UidHelper.unpackFrom(ios);
assertEquals(Uid.nullUid(), uid);
}
}
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/LogStoreRecoveryTest.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/LogStoreRecoveryTest.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/LogStoreRecoveryTest.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -37,6 +37,7 @@
import com.arjuna.ats.arjuna.common.Uid;
import com.arjuna.ats.arjuna.common.arjPropertyManager;
import com.arjuna.ats.arjuna.coordinator.TxControl;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.hp.mwtests.ts.arjuna.resources.TestBase;
import org.junit.Test;
@@ -122,7 +123,7 @@
do {
try {
- id.unpack(ios);
+ id = UidHelper.unpackFrom(ios);
}
catch (Exception ex) {
id = Uid.nullUid();
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/LogStoreTest.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/LogStoreTest.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/LogStoreTest.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -37,6 +37,7 @@
import com.arjuna.ats.arjuna.common.Uid;
import com.arjuna.ats.arjuna.common.arjPropertyManager;
import com.arjuna.ats.arjuna.coordinator.TxControl;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import org.junit.Test;
import static org.junit.Assert.*;
@@ -78,7 +79,7 @@
do {
try {
- id.unpack(ios);
+ id = UidHelper.unpackFrom(ios);
}
catch (Exception ex) {
id = Uid.nullUid();
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/LogStoreTest2.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/LogStoreTest2.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/LogStoreTest2.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -37,6 +37,7 @@
import com.arjuna.ats.arjuna.common.Uid;
import com.arjuna.ats.arjuna.common.arjPropertyManager;
import com.arjuna.ats.arjuna.coordinator.TxControl;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import org.junit.Test;
import static org.junit.Assert.*;
@@ -102,7 +103,7 @@
do {
try {
- id.unpack(ios);
+ id = UidHelper.unpackFrom(ios);
}
catch (Exception ex) {
id = Uid.nullUid();
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/LogStressTest.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/LogStressTest.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/LogStressTest.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -39,6 +39,7 @@
import com.arjuna.ats.arjuna.coordinator.TxControl;
import com.arjuna.ats.arjuna.objectstore.ObjectStore;
import com.arjuna.ats.arjuna.state.InputObjectState;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import org.junit.Test;
import static org.junit.Assert.*;
@@ -125,10 +126,8 @@
try {
TxControl.getStore().allObjUids(new MyAtomicAction().type(), ios, ObjectStore.OS_UNKNOWN);
- Uid tempUid = new Uid(Uid.nullUid());
+ Uid tempUid = UidHelper.unpackFrom(ios);
- tempUid.unpack(ios);
-
// there should be no entries left
if (tempUid.equals(Uid.nullUid())) {
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/RemoveCachedTest.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/RemoveCachedTest.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/objectstore/RemoveCachedTest.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -36,6 +36,7 @@
import com.arjuna.ats.arjuna.objectstore.ObjectStore;
import com.arjuna.ats.arjuna.state.*;
import com.arjuna.ats.arjuna.common.*;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import org.junit.Test;
import static org.junit.Assert.*;
@@ -56,7 +57,7 @@
Uid toRemove = new Uid(Uid.nullUid());
do {
- toRemove.unpack(buff);
+ toRemove = UidHelper.unpackFrom(buff);
if (toRemove.notEquals(Uid.nullUid())) {
System.err.println("Removing " + toRemove + "\n");
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/recovery/CrashAbstractRecordImpl.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/recovery/CrashAbstractRecordImpl.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/recovery/CrashAbstractRecordImpl.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -45,7 +45,7 @@
{
public CrashAbstractRecordImpl(int crashBehaviour)
{
- super(new Uid("-7FFFFFF" + _count + ":0:0:0"),
+ super(new Uid("-7FFFFFF" + _count + ":0:0:0:0"),
"com.hp.mwtests.ts.arjuna.recovery.CrashAbstractRecordImpl",
ObjectType.ANDPERSISTENT);
_count++;
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/recovery/LogMoveTest.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/recovery/LogMoveTest.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/recovery/LogMoveTest.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -36,6 +36,7 @@
import com.arjuna.ats.arjuna.coordinator.TxControl;
import com.arjuna.ats.arjuna.objectstore.ObjectStore;
import com.arjuna.ats.arjuna.state.OutputObjectState;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.internal.arjuna.recovery.ExpiredTransactionScanner;
import org.junit.Test;
@@ -53,7 +54,7 @@
final String tn = new AtomicAction().type();
try {
- kungfuTx.pack(fluff);
+ UidHelper.packInto(kungfuTx, fluff);
System.err.println("Creating dummy log");
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/recovery/RecoverAtomicActionTest.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/recovery/RecoverAtomicActionTest.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/recovery/RecoverAtomicActionTest.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -38,6 +38,7 @@
import com.arjuna.ats.arjuna.objectstore.ObjectStore;
import com.arjuna.ats.arjuna.recovery.RecoverAtomicAction;
import com.arjuna.ats.arjuna.state.OutputObjectState;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import org.junit.Test;
import static org.junit.Assert.*;
@@ -55,7 +56,7 @@
try
{
- kungfuTx.pack(fluff);
+ UidHelper.packInto(kungfuTx, fluff);
System.err.println("Creating dummy log");
Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/recovery/TransactionStatusConnectorTest.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/recovery/TransactionStatusConnectorTest.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/tests/classes/com/hp/mwtests/ts/arjuna/recovery/TransactionStatusConnectorTest.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -107,10 +107,7 @@
if (TransactionStatusManagerItem.createAndSave(_test_port)) {
_pidUid = Utility.getProcessUid();
- String strUid = _pidUid.toString();
- StringTokenizer st = new StringTokenizer(strUid, ":");
- st.nextToken();
- _pidStr = st.nextToken();
+ _pidStr = Utility.intToHexString(Utility.getpid());
_test_service_socket = new ServerSocket(_test_port);
_test_service = new TransactionStatusConnectorTestService();
@@ -199,6 +196,8 @@
_listener.stopListener();
}
catch (Exception ex) {
+ ex.printStackTrace();
+
System.err.println(_unit_test + " test1 " + ex);
_tests_failed++;
}
Modified: labs/jbosstm/trunk/ArjunaCore/tsmx/bin/com/arjuna/ats/tools/objectstorebrowser/frames/BrowserFrame.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/tsmx/bin/com/arjuna/ats/tools/objectstorebrowser/frames/BrowserFrame.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/tsmx/bin/com/arjuna/ats/tools/objectstorebrowser/frames/BrowserFrame.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -47,6 +47,7 @@
import com.arjuna.ats.arjuna.state.InputObjectState;
import com.arjuna.ats.arjuna.common.Uid;
import com.arjuna.ats.arjuna.gandiva.ClassName;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import javax.swing.*;
import javax.swing.event.*;
@@ -581,7 +582,7 @@
if (_objectStore.allObjUids(theName, uids))
{
- Uid theUid = new Uid();
+ Uid theUid = null;
try
{
@@ -589,7 +590,7 @@
while (!endOfUids)
{
- theUid.unpack(uids);
+ theUid = UidHelper.unpackFrom(uids);
if (theUid.equals(Uid.nullUid()))
endOfUids = true;
Modified: labs/jbosstm/trunk/ArjunaCore/tsmx/bin/com/arjuna/ats/tools/objectstorebrowser/stateviewers/viewers/UidInfo.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/tsmx/bin/com/arjuna/ats/tools/objectstorebrowser/stateviewers/viewers/UidInfo.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/tsmx/bin/com/arjuna/ats/tools/objectstorebrowser/stateviewers/viewers/UidInfo.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -23,6 +23,7 @@
import com.arjuna.ats.arjuna.common.Uid;
import com.arjuna.ats.arjuna.state.OutputBuffer;
import com.arjuna.ats.arjuna.state.InputBuffer;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.tools.objectstorebrowser.UidConverter;
import javax.transaction.xa.Xid;
@@ -102,7 +103,7 @@
OutputBuffer outBuf = new OutputBuffer();
InputBuffer inBuf;
- uid.pack(outBuf);
+ UidHelper.packInto(uid, outBuf);
inBuf = new InputBuffer(outBuf.buffer());
//host = inet4AddressToString(inBuf.unpackInt());
Modified: labs/jbosstm/trunk/ArjunaCore/txoj/classes/com/arjuna/ats/internal/txoj/recovery/TORecoveryModule.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/txoj/classes/com/arjuna/ats/internal/txoj/recovery/TORecoveryModule.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/txoj/classes/com/arjuna/ats/internal/txoj/recovery/TORecoveryModule.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -47,6 +47,8 @@
import java.io.PrintWriter;
import com.arjuna.ats.arjuna.exceptions.ObjectStoreException;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
+
import java.io.IOException;
/**
@@ -142,7 +144,7 @@
// find the uids of anything with an uncommitted entry in the object store
if (_objectStore.allObjUids(theName, uids, ObjectStore.OS_UNCOMMITTED))
{
- Uid theUid = new Uid(Uid.nullUid());
+ Uid theUid = null;
try
{
@@ -150,7 +152,7 @@
while (!endOfUids) {
// extract a uid
- theUid.unpack(uids);
+ theUid = UidHelper.unpackFrom(uids);
if (theUid.equals(Uid.nullUid()))
endOfUids = true;
Modified: labs/jbosstm/trunk/ArjunaCore/txoj/classes/com/arjuna/ats/txoj/LockManager.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/txoj/classes/com/arjuna/ats/txoj/LockManager.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaCore/txoj/classes/com/arjuna/ats/txoj/LockManager.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -46,6 +46,7 @@
import com.arjuna.ats.arjuna.coordinator.*;
import com.arjuna.ats.arjuna.state.*;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.txoj.common.txojPropertyManager;
import java.io.PrintWriter;
import java.util.*;
@@ -1141,7 +1142,7 @@
if (S != null)
{
- Uid u = new Uid(Uid.nullUid()); /*
+ Uid u = null; /*
* avoid system calls in Uid
* creation
*/
@@ -1172,7 +1173,7 @@
{
try
{
- u.unpack(S);
+ u = UidHelper.unpackFrom(S);
current = new Lock(u);
if (current != null)
@@ -1341,7 +1342,7 @@
while ((current = locksHeld.pop()) != null)
{
- current.get_uid().pack(S);
+ UidHelper.packInto(current.get_uid(), S);
if (!current.save_state(S, ObjectType.ANDPERSISTENT))
{
Modified: labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/recovery/arjunacore/XARecoveryModule.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/recovery/arjunacore/XARecoveryModule.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/recovery/arjunacore/XARecoveryModule.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -38,6 +38,7 @@
import com.arjuna.ats.arjuna.recovery.RecoveryModule;
import com.arjuna.ats.arjuna.logging.FacilityCode;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.internal.jta.utils.XAUtils;
import com.arjuna.ats.internal.jta.transaction.arjunacore.AtomicAction;
@@ -396,17 +397,17 @@
* Unexpceted recovery error:
* @message com.arjuna.ats.internal.jta.recovery.noxanodes No XA recovery
* nodes specified. Will only recover saved states.
- */
+ */
private final boolean transactionInitiatedRecovery()
{
- Uid theUid = new Uid();
+ Uid theUid = null;
while (theUid.notEquals(Uid.nullUid()))
{
try
{
- theUid.unpack(_uids);
+ theUid = UidHelper.unpackFrom(_uids);
if (theUid.notEquals(Uid.nullUid()))
{
Modified: labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/recovery/arjunacore/XARecoveryResourceImple.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/recovery/arjunacore/XARecoveryResourceImple.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/recovery/arjunacore/XARecoveryResourceImple.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -41,8 +41,6 @@
import com.arjuna.ats.internal.jta.resources.arjunacore.XAResourceRecord;
-
-import java.util.*;
import javax.transaction.xa.*;
public class XARecoveryResourceImple extends XAResourceRecord implements XARecoveryResource
Modified: labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/recovery/arjunacore/XARecoveryResourceManagerImple.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/recovery/arjunacore/XARecoveryResourceManagerImple.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/recovery/arjunacore/XARecoveryResourceManagerImple.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -33,16 +33,12 @@
import com.arjuna.ats.jta.recovery.*;
-import com.arjuna.ats.internal.jta.resources.arjunacore.XAResourceRecord;
-
import com.arjuna.ats.arjuna.common.*;
-import java.util.*;
import javax.transaction.xa.*;
public class XARecoveryResourceManagerImple implements XARecoveryResourceManager
{
-
public XARecoveryResource getResource (Uid uid)
{
return new XARecoveryResourceImple(uid);
@@ -57,5 +53,4 @@
{
return XARecoveryResourceImple.typeName();
}
-
}
Modified: labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/jca/XATerminatorImple.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/jca/XATerminatorImple.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/internal/jta/transaction/arjunacore/jca/XATerminatorImple.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -42,6 +42,7 @@
import com.arjuna.ats.arjuna.coordinator.TxControl;
import com.arjuna.ats.arjuna.objectstore.ObjectStore;
import com.arjuna.ats.arjuna.state.InputObjectState;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.internal.jta.resources.spi.XATerminatorExtensions;
import com.arjuna.ats.internal.jta.transaction.arjunacore.subordinate.jca.SubordinateAtomicAction;
import com.arjuna.ats.jta.exceptions.UnexpectedConditionException;
@@ -331,11 +332,11 @@
do
{
- Uid uid = new Uid(Uid.nullUid());
+ Uid uid = null;
try
{
- uid.unpack(states);
+ uid = UidHelper.unpackFrom(states);
}
catch (IOException ex)
{
Modified: labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/recovery/XARecoveryResource.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/recovery/XARecoveryResource.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/recovery/XARecoveryResource.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -32,8 +32,7 @@
package com.arjuna.ats.jta.recovery;
import com.arjuna.ats.arjuna.common.Uid;
-
-import java.util.*;
+
import javax.transaction.xa.*;
public interface XARecoveryResource
Modified: labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/recovery/XARecoveryResourceManager.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/recovery/XARecoveryResourceManager.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaJTA/jta/classes/com/arjuna/ats/jta/recovery/XARecoveryResourceManager.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -33,7 +33,6 @@
import com.arjuna.ats.arjuna.common.Uid;
-import java.util.*;
import javax.transaction.xa.*;
public interface XARecoveryResourceManager
Modified: labs/jbosstm/trunk/ArjunaJTA/tsmx/bin/com/arjuna/ats/tools/objectstorebrowser/rootprovider/InFlightTransactionPseudoStore.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTA/tsmx/bin/com/arjuna/ats/tools/objectstorebrowser/rootprovider/InFlightTransactionPseudoStore.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaJTA/tsmx/bin/com/arjuna/ats/tools/objectstorebrowser/rootprovider/InFlightTransactionPseudoStore.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -31,6 +31,7 @@
import com.arjuna.ats.arjuna.gandiva.inventory.InventoryElement;
import com.arjuna.ats.arjuna.gandiva.ClassName;
import com.arjuna.ats.arjuna.gandiva.ObjectName;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.tools.objectstorebrowser.TransactionLister;
import java.util.Set;
@@ -80,7 +81,7 @@
Set<Uid> uids = transactionLister.getTransactions().keySet();
for (Uid uid : uids)
- uid.pack(store);
+ UidHelper.packInto(uid, store);
}
catch (IOException e)
{
@@ -90,7 +91,7 @@
try
{
- Uid.nullUid().pack(store);
+ UidHelper.packInto(Uid.nullUid(), store);
}
catch (IOException e)
{
Modified: labs/jbosstm/trunk/ArjunaJTS/jtax/classes/com/arjuna/ats/internal/jta/transaction/jts/jca/XATerminatorImple.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jtax/classes/com/arjuna/ats/internal/jta/transaction/jts/jca/XATerminatorImple.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaJTS/jtax/classes/com/arjuna/ats/internal/jta/transaction/jts/jca/XATerminatorImple.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -42,6 +42,7 @@
import com.arjuna.ats.arjuna.coordinator.TxControl;
import com.arjuna.ats.arjuna.objectstore.ObjectStore;
import com.arjuna.ats.arjuna.state.InputObjectState;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.internal.jta.resources.spi.XATerminatorExtensions;
import com.arjuna.ats.internal.jta.transaction.jts.subordinate.jca.TransactionImple;
import com.arjuna.ats.internal.jta.transaction.jts.subordinate.jca.coordinator.ServerTransaction;
@@ -264,11 +265,11 @@
do
{
- Uid uid = new Uid(Uid.nullUid());
+ Uid uid = null;
try
{
- uid.unpack(states);
+ uid = UidHelper.unpackFrom(states);
}
catch (IOException ex)
{
Modified: labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/orbspecific/TransactionFactoryImple.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/orbspecific/TransactionFactoryImple.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/orbspecific/TransactionFactoryImple.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -31,6 +31,7 @@
package com.arjuna.ats.internal.jts.orbspecific;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.internal.jts.orbspecific.coordinator.ArjunaTransactionImple;
import com.arjuna.ats.internal.jts.orbspecific.interposition.*;
import com.arjuna.ats.internal.jts.ORBManager;
@@ -848,7 +849,7 @@
}
else
{
- Uid theUid = new Uid(Uid.nullUid());
+ Uid theUid = null;
int count = 0;
boolean finished = false;
@@ -856,7 +857,7 @@
{
try
{
- theUid.unpack(uids);
+ theUid = UidHelper.unpackFrom(uids);
if (theUid == Uid.nullUid())
finished = true;
@@ -877,7 +878,7 @@
{
try
{
- theUid.unpack(uids);
+ theUid = UidHelper.unpackFrom(uids);
ids[i] = Utility.uidToOtid(theUid.stringForm());
}
Modified: labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/recovery/contact/ExpiredContactScanner.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/recovery/contact/ExpiredContactScanner.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/recovery/contact/ExpiredContactScanner.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -42,6 +42,7 @@
import com.arjuna.ats.arjuna.state.*;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.jts.common.jtsPropertyManager;
import com.arjuna.ats.jts.logging.jtsLogger;
import com.arjuna.ats.arjuna.logging.FacilityCode;
@@ -99,14 +100,14 @@
// find the uids of all the contact items
if (_objectStore.allObjUids(_itemTypeName, uids))
{
- Uid theUid = new Uid(Uid.nullUid());
+ Uid theUid = null;
boolean endOfUids = false;
while (!endOfUids)
{
// extract a uid
- theUid.unpack(uids);
+ theUid = UidHelper.unpackFrom(uids);
if (theUid.equals(Uid.nullUid()))
endOfUids = true;
Modified: labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/recovery/transactions/ExpiredAssumedCompleteScanner.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/recovery/transactions/ExpiredAssumedCompleteScanner.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/recovery/transactions/ExpiredAssumedCompleteScanner.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -42,6 +42,7 @@
import com.arjuna.ats.arjuna.recovery.ExpiryScanner ;
import com.arjuna.ats.arjuna.state.InputObjectState ;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.jts.logging.jtsLogger;
import com.arjuna.ats.arjuna.logging.FacilityCode;
import com.arjuna.common.util.logging.*;
@@ -105,14 +106,14 @@
// find the uids of all the contact items
if (_objectStore.allObjUids(_typeName, uids))
{
- Uid theUid = new Uid(Uid.nullUid());
+ Uid theUid = null;
boolean endOfUids = false;
while (!endOfUids)
{
// extract a uid
- theUid.unpack(uids);
+ theUid = UidHelper.unpackFrom(uids);
if (theUid.equals(Uid.nullUid()))
endOfUids = true;
Modified: labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/recovery/transactions/TransactionRecoveryModule.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/recovery/transactions/TransactionRecoveryModule.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/recovery/transactions/TransactionRecoveryModule.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -40,6 +40,7 @@
import com.arjuna.ats.arjuna.objectstore.*;
import com.arjuna.ats.arjuna.*;
import com.arjuna.ats.arjuna.state.*;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.jts.utils.*;
import com.arjuna.ats.arjuna.exceptions.*;
@@ -125,7 +126,7 @@
if (anyTransactions)
{
- Uid theUid = new Uid(Uid.nullUid());
+ Uid theUid = null;
boolean moreUids = true;
@@ -133,7 +134,7 @@
{
try
{
- theUid.unpack(uids);
+ theUid = UidHelper.unpackFrom(uids);
if (theUid.equals(Uid.nullUid()))
{
Modified: labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/resources/ExtendedResourceRecord.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/resources/ExtendedResourceRecord.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/resources/ExtendedResourceRecord.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -43,6 +43,7 @@
import com.arjuna.ats.jts.logging.*;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.internal.jts.ORBManager;
import com.arjuna.ats.internal.jts.orbspecific.coordinator.ArjunaTransactionImple;
import com.arjuna.ats.internal.jts.orbspecific.ControlImple;
@@ -754,10 +755,8 @@
_parentCoordHandle = null;
- _cachedUid = new Uid(Uid.nullUid());
+ _cachedUid = UidHelper.unpackFrom(os);
- _cachedUid.unpack(os);
-
_cachedType = os.unpackInt();
isString = os.unpackInt();
@@ -772,7 +771,7 @@
*/
// Unpack recovery coordinator Uid
- _recCoordUid.unpack(os);
+ _recCoordUid = UidHelper.unpackFrom(os);
if (jtsLogger.logger.isDebugEnabled())
{
@@ -831,7 +830,7 @@
if (_cachedUid == null)
_cachedUid = order();
- _cachedUid.pack(os);
+ UidHelper.packInto(_cachedUid, os);
if (_cachedType == -1)
_cachedType = typeIs();
@@ -884,7 +883,7 @@
if (result)
{
// Pack recovery coordinator Uid
- _recCoordUid.pack(os);
+ UidHelper.packInto(_recCoordUid, os);
if (jtsLogger.logger.isDebugEnabled())
{
Modified: labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/resources/ResourceRecord.java
===================================================================
--- labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/resources/ResourceRecord.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/ArjunaJTS/jts/classes/com/arjuna/ats/internal/jts/resources/ResourceRecord.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -40,6 +40,7 @@
import com.arjuna.ats.jts.CosTransactionsNames;
import com.arjuna.ats.jts.logging.*;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.internal.jts.orbspecific.ControlImple;
import com.arjuna.ats.internal.jts.orbspecific.coordinator.ArjunaTransactionImple;
import com.arjuna.ats.internal.jts.ORBManager;
@@ -693,7 +694,7 @@
// Unpack recovery coordinator Uid
- _recCoordUid.unpack(os);
+ _recCoordUid = UidHelper.unpackFrom(os);
if (jtsLogger.logger.isDebugEnabled())
{
@@ -778,7 +779,7 @@
if (result)
{
// Pack recovery coordinator Uid
- _recCoordUid.pack(os);
+ UidHelper.packInto(_recCoordUid, os);
if (jtsLogger.logger.isDebugEnabled())
{
Modified: labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Hammer01Impls/AITMatrixImpl03.java
===================================================================
--- labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Hammer01Impls/AITMatrixImpl03.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Hammer01Impls/AITMatrixImpl03.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -63,6 +63,7 @@
import com.arjuna.ats.arjuna.common.Uid;
import com.arjuna.ats.arjuna.state.InputObjectState;
import com.arjuna.ats.arjuna.state.OutputObjectState;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.jts.extensions.AtomicTransaction;
import com.arjuna.ats.txoj.Lock;
import com.arjuna.ats.txoj.LockManager;
@@ -312,7 +313,7 @@
{
for (int y = 0; y < _height; y++)
{
- _values[x][y].get_uid().pack(objectState);
+ UidHelper.packInto(_values[x][y].get_uid(), objectState);
}
}
@@ -334,9 +335,8 @@
{
for (int y = 0; y < _height; y++)
{
- Uid uid = new Uid();
+ Uid uid = UidHelper.unpackFrom(objectState);
- uid.unpack(objectState);
_values[x][y] = Element.obtain(uid);
}
}
Modified: labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Hammer01Impls/AITMatrixImpl04.java
===================================================================
--- labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Hammer01Impls/AITMatrixImpl04.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Hammer01Impls/AITMatrixImpl04.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -63,6 +63,7 @@
import com.arjuna.ats.arjuna.common.Uid;
import com.arjuna.ats.arjuna.state.InputObjectState;
import com.arjuna.ats.arjuna.state.OutputObjectState;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.jts.extensions.AtomicTransaction;
import com.arjuna.ats.txoj.Lock;
import com.arjuna.ats.txoj.LockManager;
@@ -243,7 +244,7 @@
{
for (int y = 0; y < _height; y++)
{
- _values[x][y].get_uid().pack(objectState);
+ UidHelper.packInto(_values[x][y].get_uid(), objectState);
}
}
@@ -265,9 +266,8 @@
{
for (int y = 0; y < _height; y++)
{
- Uid uid = new Uid();
+ Uid uid = UidHelper.unpackFrom(objectState);
- uid.unpack(objectState);
_values[x][y] = Element.obtain(uid);
}
}
Modified: labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Hammer02Impls/AITMatrixImpl03.java
===================================================================
--- labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Hammer02Impls/AITMatrixImpl03.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Hammer02Impls/AITMatrixImpl03.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -63,6 +63,7 @@
import com.arjuna.ats.arjuna.common.Uid;
import com.arjuna.ats.arjuna.state.InputObjectState;
import com.arjuna.ats.arjuna.state.OutputObjectState;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.jts.extensions.AtomicTransaction;
import com.arjuna.ats.txoj.Lock;
import com.arjuna.ats.txoj.LockManager;
@@ -357,7 +358,7 @@
{
for (int y = 0; y < _height; y++)
{
- _values[x][y].get_uid().pack(objectState);
+ UidHelper.packInto(_values[x][y].get_uid(), objectState);
}
}
@@ -379,9 +380,8 @@
{
for (int y = 0; y < _height; y++)
{
- Uid uid = new Uid();
+ Uid uid = UidHelper.unpackFrom(objectState);
- uid.unpack(objectState);
_values[x][y] = Element.obtain(uid);
}
}
Modified: labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Hammer02Impls/AITMatrixImpl04.java
===================================================================
--- labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Hammer02Impls/AITMatrixImpl04.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/Hammer02Impls/AITMatrixImpl04.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -63,6 +63,7 @@
import com.arjuna.ats.arjuna.common.Uid;
import com.arjuna.ats.arjuna.state.InputObjectState;
import com.arjuna.ats.arjuna.state.OutputObjectState;
+import com.arjuna.ats.internal.arjuna.common.UidHelper;
import com.arjuna.ats.jts.extensions.AtomicTransaction;
import com.arjuna.ats.txoj.Lock;
import com.arjuna.ats.txoj.LockManager;
@@ -304,7 +305,7 @@
{
for (int y = 0; y < _height; y++)
{
- _values[x][y].get_uid().pack(objectState);
+ UidHelper.packInto(_values[x][y].get_uid(), objectState);
}
}
@@ -326,9 +327,8 @@
{
for (int y = 0; y < _height; y++)
{
- Uid uid = new Uid();
+ Uid uid = UidHelper.unpackFrom(objectState);
- uid.unpack(objectState);
_values[x][y] = Element.obtain(uid);
}
}
Modified: labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/junit/testgroup/TestGroup_crashrecovery05_2.java
===================================================================
--- labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/junit/testgroup/TestGroup_crashrecovery05_2.java 2009-10-20 16:35:36 UTC (rev 29700)
+++ labs/jbosstm/trunk/qa/tests/src/org/jboss/jbossts/qa/junit/testgroup/TestGroup_crashrecovery05_2.java 2009-10-20 16:40:36 UTC (rev 29701)
@@ -2050,5 +2050,4 @@
server4.terminate();
server3.terminate();
}
-
}
\ No newline at end of file
More information about the jboss-svn-commits
mailing list