[jboss-svn-commits] JBL Code SVN: r37775 - labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/hornetq.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Dec 5 07:05:45 EST 2011


Author: jhalliday
Date: 2011-12-05 07:05:44 -0500 (Mon, 05 Dec 2011)
New Revision: 37775

Modified:
   labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/hornetq/HornetqJournalStore.java
   labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/hornetq/HornetqObjectStoreAdaptor.java
Log:
fix HornetQ journal array value handling. JBTM-993


Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/hornetq/HornetqJournalStore.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/hornetq/HornetqJournalStore.java	2011-12-05 11:53:19 UTC (rev 37774)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/hornetq/HornetqJournalStore.java	2011-12-05 12:05:44 UTC (rev 37775)
@@ -61,7 +61,7 @@
     private long maxID = 0;
 
     private final String storeDirCanonicalPath;
-    
+
     private static final byte RECORD_TYPE = 0x00;
 
     public void stop() throws Exception {

Modified: labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/hornetq/HornetqObjectStoreAdaptor.java
===================================================================
--- labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/hornetq/HornetqObjectStoreAdaptor.java	2011-12-05 11:53:19 UTC (rev 37774)
+++ labs/jbosstm/trunk/ArjunaCore/arjuna/classes/com/arjuna/ats/internal/arjuna/objectstore/hornetq/HornetqObjectStoreAdaptor.java	2011-12-05 12:05:44 UTC (rev 37775)
@@ -320,7 +320,7 @@
 
         typeName = ensureTypenamePrefix(typeName);
 
-        Uid[] uids = store.getUidsForType(typeName);
+        Uid[] uids = store.getUidsForType(typeName); // may contain trailing null elements
 
         OutputObjectState buffer = new OutputObjectState();
 
@@ -330,7 +330,9 @@
             {
                 for (Uid uid: uids)
                 {
-                    UidHelper.packInto(uid, buffer);
+                    if(uid != null) {
+                        UidHelper.packInto(uid, buffer);
+                    }
                 }
             }
             UidHelper.packInto(Uid.nullUid(), buffer);
@@ -362,7 +364,7 @@
 
         boolean result = true;
 
-        String[] knownTypes = store.getKnownTypes();
+        String[] knownTypes = store.getKnownTypes(); // may contain trailing null elements
         Set<String> typeSet = new HashSet<String>();
 
         if (knownTypes == null || knownTypes.length == 0)
@@ -374,6 +376,10 @@
         {
             for (String typeName: knownTypes)
             {
+                if(typeName == null) {
+                    continue;
+                }
+
                 if(typeName.startsWith("/")) {
                     typeName = typeName.substring(1);
                 }



More information about the jboss-svn-commits mailing list