You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by el...@apache.org on 2014/07/14 10:23:16 UTC

svn commit: r1610354 - in /directory/mavibot/trunk/mavibot/src: main/java/org/apache/directory/mavibot/btree/serializer/ test/java/org/apache/directory/mavibot/btree/

Author: elecharny
Date: Mon Jul 14 08:23:16 2014
New Revision: 1610354

URL: http://svn.apache.org/r1610354
Log:
Fixed the bad CPB offset (due to a wrong LongArray deserialization)

Modified:
    directory/mavibot/trunk/mavibot/src/main/java/org/apache/directory/mavibot/btree/serializer/LongArraySerializer.java
    directory/mavibot/trunk/mavibot/src/main/java/org/apache/directory/mavibot/btree/serializer/LongSerializer.java
    directory/mavibot/trunk/mavibot/src/test/java/org/apache/directory/mavibot/btree/RecordManagerTest.java

Modified: directory/mavibot/trunk/mavibot/src/main/java/org/apache/directory/mavibot/btree/serializer/LongArraySerializer.java
URL: http://svn.apache.org/viewvc/directory/mavibot/trunk/mavibot/src/main/java/org/apache/directory/mavibot/btree/serializer/LongArraySerializer.java?rev=1610354&r1=1610353&r2=1610354&view=diff
==============================================================================
--- directory/mavibot/trunk/mavibot/src/main/java/org/apache/directory/mavibot/btree/serializer/LongArraySerializer.java (original)
+++ directory/mavibot/trunk/mavibot/src/main/java/org/apache/directory/mavibot/btree/serializer/LongArraySerializer.java Mon Jul 14 08:23:16 2014
@@ -307,8 +307,8 @@ public class LongArraySerializer extends
     @Override
     public long[] fromBytes( byte[] buffer, int pos ) throws IOException
     {
-        int newPos = pos;
-        int len = IntSerializer.deserialize( buffer, newPos );
+        int len = IntSerializer.deserialize( buffer, pos );
+        int newPos = pos + 4;
 
         switch ( len )
         {

Modified: directory/mavibot/trunk/mavibot/src/main/java/org/apache/directory/mavibot/btree/serializer/LongSerializer.java
URL: http://svn.apache.org/viewvc/directory/mavibot/trunk/mavibot/src/main/java/org/apache/directory/mavibot/btree/serializer/LongSerializer.java?rev=1610354&r1=1610353&r2=1610354&view=diff
==============================================================================
--- directory/mavibot/trunk/mavibot/src/main/java/org/apache/directory/mavibot/btree/serializer/LongSerializer.java (original)
+++ directory/mavibot/trunk/mavibot/src/main/java/org/apache/directory/mavibot/btree/serializer/LongSerializer.java Mon Jul 14 08:23:16 2014
@@ -118,13 +118,13 @@ public class LongSerializer extends Abst
         }
 
         long result = ( ( long ) in[start] << 56 ) +
-            ( ( in[start + 1] & 0xFFL ) << 48 ) +
-            ( ( in[start + 2] & 0xFFL ) << 40 ) +
-            ( ( in[start + 3] & 0xFFL ) << 32 ) +
-            ( ( in[start + 4] & 0xFFL ) << 24 ) +
-            ( ( in[start + 5] & 0xFFL ) << 16 ) +
-            ( ( in[start + 6] & 0xFFL ) << 8 ) +
-            ( in[start + 7] & 0xFFL );
+            ( ( in[start + 1] & 0x00FFL ) << 48 ) +
+            ( ( in[start + 2] & 0x00FFL ) << 40 ) +
+            ( ( in[start + 3] & 0x00FFL ) << 32 ) +
+            ( ( in[start + 4] & 0x00FFL ) << 24 ) +
+            ( ( in[start + 5] & 0x00FFL ) << 16 ) +
+            ( ( in[start + 6] & 0x00FFL ) << 8 ) +
+            ( in[start + 7] & 0x00FFL );
 
         return result;
     }

Modified: directory/mavibot/trunk/mavibot/src/test/java/org/apache/directory/mavibot/btree/RecordManagerTest.java
URL: http://svn.apache.org/viewvc/directory/mavibot/trunk/mavibot/src/test/java/org/apache/directory/mavibot/btree/RecordManagerTest.java?rev=1610354&r1=1610353&r2=1610354&view=diff
==============================================================================
--- directory/mavibot/trunk/mavibot/src/test/java/org/apache/directory/mavibot/btree/RecordManagerTest.java (original)
+++ directory/mavibot/trunk/mavibot/src/test/java/org/apache/directory/mavibot/btree/RecordManagerTest.java Mon Jul 14 08:23:16 2014
@@ -894,8 +894,8 @@ public class RecordManagerTest
         btree.insert( 2L, "V2" );
     }
     
+    
     @Test
-    @Ignore("Fails with bad offset error")
     public void testOffsetsInCopiedPageBTree() throws Exception
     {
         btree.insert( 1L, "V1" );
@@ -907,6 +907,7 @@ public class RecordManagerTest
         checkCpbOffsets();
     }
 
+    
     private void checkCpbOffsets() throws Exception
     {
         TupleCursor<RevisionName, long[]> cursor = recordManager.copiedPageBtree.browse();
@@ -915,6 +916,7 @@ public class RecordManagerTest
         {
             Tuple<RevisionName, long[]> t = cursor.next();
             long[] offsets = t.getValue();
+            
             for( long o : offsets )
             {
                 recordManager.checkOffset( o );