[jboss-cvs] JBoss Messaging SVN: r4929 - in trunk: src/main/org/jboss/messaging/core/journal/impl and 8 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Sep 10 17:03:07 EDT 2008


Author: clebert.suconic at jboss.com
Date: 2008-09-10 17:03:06 -0400 (Wed, 10 Sep 2008)
New Revision: 4929

Modified:
   trunk/src/main/org/jboss/messaging/core/journal/Journal.java
   trunk/src/main/org/jboss/messaging/core/journal/PreparedTransactionInfo.java
   trunk/src/main/org/jboss/messaging/core/journal/impl/JournalImpl.java
   trunk/src/main/org/jboss/messaging/core/journal/impl/TransactionHolder.java
   trunk/src/main/org/jboss/messaging/core/message/Message.java
   trunk/src/main/org/jboss/messaging/core/persistence/StorageManager.java
   trunk/src/main/org/jboss/messaging/core/persistence/impl/journal/JournalStorageManager.java
   trunk/src/main/org/jboss/messaging/core/persistence/impl/nullpm/NullStorageManager.java
   trunk/src/main/org/jboss/messaging/core/server/ServerMessage.java
   trunk/tests/src/org/jboss/messaging/tests/unit/core/journal/impl/AlignedJournalImplTest.java
   trunk/tests/src/org/jboss/messaging/tests/unit/core/journal/impl/JournalImplTestBase.java
   trunk/tests/src/org/jboss/messaging/tests/unit/core/message/impl/MessageImplTestBase.java
   trunk/tests/src/org/jboss/messaging/tests/unit/core/persistence/impl/journal/JournalStorageManagerTest.java
Log:
JBMESSAGING-1299 - First commit on changing deleteTransaction to also support EncodingSupport (in order to support replays on PreparedTransactions)

Modified: trunk/src/main/org/jboss/messaging/core/journal/Journal.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/journal/Journal.java	2008-09-10 16:28:41 UTC (rev 4928)
+++ trunk/src/main/org/jboss/messaging/core/journal/Journal.java	2008-09-10 21:03:06 UTC (rev 4929)
@@ -51,7 +51,7 @@
    
    void appendUpdateRecordTransactional(long txID, long id, byte recordType, EncodingSupport record) throws Exception;
    
-   void appendDeleteRecordTransactional(long txID, long id) throws Exception;
+   void appendDeleteRecordTransactional(long txID, long id, EncodingSupport extraData) throws Exception;
    
    void appendCommitRecord(long txID) throws Exception;
    

Modified: trunk/src/main/org/jboss/messaging/core/journal/PreparedTransactionInfo.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/journal/PreparedTransactionInfo.java	2008-09-10 16:28:41 UTC (rev 4928)
+++ trunk/src/main/org/jboss/messaging/core/journal/PreparedTransactionInfo.java	2008-09-10 21:03:06 UTC (rev 4929)
@@ -43,7 +43,7 @@
    
    public final List<RecordInfo> records = new ArrayList<RecordInfo>();
    
-   public final Set<Long> recordsToDelete = new HashSet<Long>();
+   public final Set<RecordInfo> recordsToDelete = new HashSet<RecordInfo>();
 
    public PreparedTransactionInfo(final long id, final byte[] extraData)
    {

Modified: trunk/src/main/org/jboss/messaging/core/journal/impl/JournalImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/journal/impl/JournalImpl.java	2008-09-10 16:28:41 UTC (rev 4928)
+++ trunk/src/main/org/jboss/messaging/core/journal/impl/JournalImpl.java	2008-09-10 21:03:06 UTC (rev 4929)
@@ -132,13 +132,13 @@
    
    public static final byte UPDATE_RECORD_TX = 14;
    
-   public static final int SIZE_DELETE_RECORD = BASIC_SIZE + SIZE_LONG;
+   public static final int  SIZE_DELETE_RECORD_TX = BASIC_SIZE + SIZE_LONG + SIZE_LONG + SIZE_INT; // + record.length
    
-   public static final byte DELETE_RECORD = 15;
+   public static final byte DELETE_RECORD_TX = 15;
    
-   public static final int  SIZE_DELETE_RECORD_TX = BASIC_SIZE + SIZE_LONG + SIZE_LONG;
+   public static final int SIZE_DELETE_RECORD = BASIC_SIZE + SIZE_LONG;
    
-   public static final byte DELETE_RECORD_TX = 16;
+   public static final byte DELETE_RECORD = 16;
    
    public static final int SIZE_COMPLETE_TRANSACTION_RECORD = BASIC_SIZE + SIZE_INT + SIZE_LONG; // + NumerOfElements*SIZE_INT*2
    
@@ -158,7 +158,7 @@
       
    // Attributes ----------------------------------------------------
    
-   private volatile boolean autoReclaim = true;
+   private boolean autoReclaim = true;
    
    private final AtomicInteger nextOrderingId = new AtomicInteger(0);
    
@@ -460,28 +460,34 @@
       }
    }
 
-   public void appendDeleteRecordTransactional(final long txID, final long id) throws Exception
+   public void appendDeleteRecordTransactional(final long txID, final long id, final EncodingSupport extraData) throws Exception
    {
       if (state != STATE_LOADED)
       {
          throw new IllegalStateException("Journal must be loaded first");
       }
       
-      int size = SIZE_DELETE_RECORD_TX;
+      int size = SIZE_DELETE_RECORD_TX + (extraData != null? extraData.getEncodeSize():0);
       
-      ByteBuffer bb = newBuffer(size); 
+      ByteBufferWrapper bb = new ByteBufferWrapper(newBuffer(size));
       
-      bb.put(DELETE_RECORD_TX);     
-      bb.putInt(-1);
+      
+      bb.putByte(DELETE_RECORD_TX);     
+      bb.putInt(-1); // skip ID part
       bb.putLong(txID);    
-      bb.putLong(id);      
+      bb.putLong(id);
+      bb.putInt(extraData != null ? extraData.getEncodeSize() : 0);
+      if (extraData != null)
+      {
+         extraData.encode(bb);
+      }
       bb.putInt(size);     
       
       lock.acquire();
       
       try
       {                          
-         JournalFile usedFile = appendRecord(bb, false, getTransactionCallback(txID));
+         JournalFile usedFile = appendRecord(bb.getBuffer(), false, getTransactionCallback(txID));
          
          JournalTransaction tx = getTransactionInfo(txID);
          
@@ -500,6 +506,8 @@
     * 
     * <p> transactionData allows you to store any other supporting user-data related to the transaction</p>
     * 
+    * <p> This method also uses the same logic applied on {@link JournalImpl#appendCommitRecord(long)}
+    * 
     * @param txID
     * @param transactionData - extra user data for the prepare
     * @throws Exception
@@ -529,6 +537,23 @@
       }
    }
 
+   /**
+    * <p>A transaction record (Commit or Prepare), will hold the number of elements the transaction has on each file.</p>
+    * <p>For example, a transaction was spread along 3 journal files with 10 records on each file. 
+    *    (What could happen if there are too many records, or if an user event delayed records to come in time to a single file).</p>
+    * <p>The element-summary will then have</p>
+    * <p>FileID1, 10</p>
+    * <p>FileID2, 10</p>
+    * <p>FileID3, 10</p>
+    * 
+    * <br>
+    * <p> During the load, the transaction needs to have 30 records spread across the files as originally written.</p>
+    * <p> If for any reason there are missing records, that means the transaction was not completed and we should ignore the whole transaction </p>
+    * <p> We can't just use a global counter as reclaiming could delete files after the transaction was successfully committed. 
+    *     That also means not having a whole file on journal-reload doesn't mean we have to invalidate the transaction </p>
+    *
+    * @see JournalImpl#writeTransaction(byte, long, org.jboss.messaging.core.journal.impl.JournalImpl.JournalTransaction, EncodingSupport)
+    */
    public void appendCommitRecord(final long txID) throws Exception
    {
       if (state != STATE_LOADED)
@@ -805,7 +830,10 @@
                   continue;
                }
                
-               userRecordType = bb.get();
+               if (recordType != DELETE_RECORD_TX)
+               {
+                  userRecordType = bb.get();
+               }
                
                record = new byte[variableSize];
                
@@ -949,7 +977,7 @@
                      transactions.put(transactionID, tx);
                   }
                   
-                  tx.recordsToDelete.add(recordID);                     
+                  tx.recordsToDelete.add(new RecordInfo(recordID, (byte)0, record, true));                     
                   
                   JournalTransaction tnp = transactionInfos.get(transactionID);
                   
@@ -1050,9 +1078,9 @@
                            }
                         }
                         
-                        for (long deleteValue: tx.recordsToDelete)
+                        for (RecordInfo deleteValue: tx.recordsToDelete)
                         {
-                           loadManager.deleteRecord(deleteValue);
+                           loadManager.deleteRecord(deleteValue.id);
                         }
                         
                         journalTransaction.commit(file);       
@@ -1084,7 +1112,7 @@
                         throw new IllegalStateException("Cannot find tx " + transactionID);
                      }
 
-                     // There is no need to validate summaries on Rollbacks.. We will ignore the data anyway.
+                     // There is no need to validate summaries/holes on Rollbacks.. We will ignore the data anyway.
                      tnp.rollback(file);  
                      
                      hasData = true;         
@@ -1514,12 +1542,13 @@
 
    
    /**
+    * <p> Check for holes on the transaction (a commit written but with an incomplete transaction) </p>
     * <p>This method will validate if the transaction (PREPARE/COMMIT) is complete as stated on the COMMIT-RECORD.</p>
     * <p> We record a summary about the records on the journal file on COMMIT and PREPARE. 
     *     When we load the records we build a new summary and we check the original summary to the current summary.
     *     This method is basically verifying if the entire transaction is being loaded </p> 
     *     
-    * <p>Look at the javadoc on {@link JournalImpl#writeTransaction(byte, long, org.jboss.messaging.core.journal.impl.JournalImpl.JournalTransaction, EncodingSupport)} about how the transaction-summary is recorded</p> 
+    * <p>Look at the javadoc on {@link JournalImpl#appendCommitRecord(long)} about how the transaction-summary is recorded</p> 
     *     
     * @param journalTransaction
     * @param orderedFiles
@@ -1557,6 +1586,7 @@
                   //      so this transaction is broken and needs to be ignored.
                   //      This is probably a hole caused by a crash during commit.
                   found = true;
+                  break;
                }
             }
             if (found)
@@ -1581,7 +1611,6 @@
    }
 
    /**
-    * 
     * <p>A transaction record (Commit or Prepare), will hold the number of elements the transaction has on each file.</p>
     * <p>For example, a transaction was spread along 3 journal files with 10 records on each file. 
     *    (What could happen if there are too many records, or if an user event delayed records to come in time to a single file).</p>
@@ -1650,7 +1679,7 @@
    
    private boolean isContainsBody(final byte recordType)
    {
-      return recordType >= ADD_RECORD && recordType <= UPDATE_RECORD_TX;
+      return recordType >= ADD_RECORD && recordType <= DELETE_RECORD_TX;
    }
    
    private int getRecordSize(final byte recordType)
@@ -2116,7 +2145,7 @@
       
       /** This queue is fed by {@link JournalImpl.ReuseBuffersController.LocalBufferCallback}} which is called directly by NIO or NIO.
        * On the case of the AIO this is almost called by the native layer as soon as the buffer is not being used any more
-       * and ready to reused or GCed */
+       * and ready to be reused or GCed */
       private final ConcurrentLinkedQueue<ByteBuffer> reuseBuffers = new ConcurrentLinkedQueue<ByteBuffer>();
       
       final BufferCallback callback = new LocalBufferCallback();

Modified: trunk/src/main/org/jboss/messaging/core/journal/impl/TransactionHolder.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/journal/impl/TransactionHolder.java	2008-09-10 16:28:41 UTC (rev 4928)
+++ trunk/src/main/org/jboss/messaging/core/journal/impl/TransactionHolder.java	2008-09-10 21:03:06 UTC (rev 4929)
@@ -49,7 +49,7 @@
    
    public final List<RecordInfo> recordInfos = new ArrayList<RecordInfo>();
    
-   public final Set<Long> recordsToDelete = new HashSet<Long>();
+   public final Set<RecordInfo> recordsToDelete = new HashSet<RecordInfo>();
    
    public boolean prepared;
    

Modified: trunk/src/main/org/jboss/messaging/core/message/Message.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/message/Message.java	2008-09-10 16:28:41 UTC (rev 4928)
+++ trunk/src/main/org/jboss/messaging/core/message/Message.java	2008-09-10 21:03:06 UTC (rev 4929)
@@ -40,7 +40,7 @@
  *
  * $Id: Message.java 3341 2007-11-19 14:34:57Z timfox $
  */
-public interface Message extends EncodingSupport
+public interface Message
 {   
    SimpleString getDestination();
    

Modified: trunk/src/main/org/jboss/messaging/core/persistence/StorageManager.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/persistence/StorageManager.java	2008-09-10 16:28:41 UTC (rev 4928)
+++ trunk/src/main/org/jboss/messaging/core/persistence/StorageManager.java	2008-09-10 21:03:06 UTC (rev 4929)
@@ -62,7 +62,10 @@
    
    void storeAcknowledgeTransactional(long txID, long queueID, long messageiD) throws Exception;
    
-   void storeDeleteTransactional(long txID, long messageID) throws Exception;
+   void storeDeleteMessageTransactional(long txID, long messageID, long queueID) throws Exception;
+   
+   /** Used to delete non-messaging data (such as PageTransaction and LasPage) */
+   void storeDeleteTransactional(long txID, long recordID) throws Exception;
       
       
    void prepare(long txID, Xid xid) throws Exception;

Modified: trunk/src/main/org/jboss/messaging/core/persistence/impl/journal/JournalStorageManager.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/persistence/impl/journal/JournalStorageManager.java	2008-09-10 16:28:41 UTC (rev 4928)
+++ trunk/src/main/org/jboss/messaging/core/persistence/impl/journal/JournalStorageManager.java	2008-09-10 21:03:06 UTC (rev 4929)
@@ -223,7 +223,7 @@
       if (pageTransaction.getRecordID() != 0)
       {
          // Instead of updating the record, we delete the old one as that is better for reclaiming
-         messageJournal.appendDeleteRecordTransactional(txID, pageTransaction.getRecordID());
+         messageJournal.appendDeleteRecordTransactional(txID, pageTransaction.getRecordID(), null);
       }
       pageTransaction.setRecordID(generateID());
       messageJournal.appendAddRecordTransactional(txID, pageTransaction.getRecordID(), PAGE_TRANSACTION, pageTransaction);
@@ -234,7 +234,7 @@
       if (lastPage.getRecordId() != 0)
       {
          // To avoid linked list effect on reclaiming, we delete and add a new record, instead of simply updating it
-         messageJournal.appendDeleteRecordTransactional(txID, lastPage.getRecordId());
+         messageJournal.appendDeleteRecordTransactional(txID, lastPage.getRecordId(), null);
       }
       lastPage.setRecordId(generateID());
       messageJournal.appendAddRecordTransactional(txID, lastPage.getRecordId(), LAST_PAGE, lastPage);
@@ -245,10 +245,15 @@
 		messageJournal.appendUpdateRecordTransactional(txID, messageID, ACKNOWLEDGE_REF, new ACKEncoding(queueID));	
    }
    
-   public void storeDeleteTransactional(long txID, long messageID) throws Exception
+   public void storeDeleteTransactional(long txID, long recordID) throws Exception
    {
-   	messageJournal.appendDeleteRecordTransactional(txID, messageID);	
+   	messageJournal.appendDeleteRecordTransactional(txID, recordID, null);	
    }
+   
+   public void storeDeleteMessageTransactional(long txID, long messageID, long queueID) throws Exception
+   {
+      messageJournal.appendDeleteRecordTransactional(txID, messageID, new DeleteEncoding(queueID));
+   }
   
    public void prepare(long txID, Xid xid) throws Exception
    {
@@ -818,20 +823,19 @@
       
    }
    
-   
-   private class ACKEncoding implements EncodingSupport
+   private class QueueEncoding implements EncodingSupport
    {
       long queueID;
       
       
 
-      public ACKEncoding(long queueID)
+      public QueueEncoding(long queueID)
       {
          super();
          this.queueID = queueID;
       }
 
-      public ACKEncoding()
+      public QueueEncoding()
       {
          super();
       }
@@ -853,7 +857,34 @@
       
    }
    
+   private class DeleteEncoding extends QueueEncoding
+   {
+
+      public DeleteEncoding()
+      {
+         super();
+      }
+
+      public DeleteEncoding(long queueID)
+      {
+         super(queueID);
+      }
+      
+   }
    
+   private class ACKEncoding extends QueueEncoding
+   {
 
+      public ACKEncoding()
+      {
+         super();
+      }
+
+      public ACKEncoding(long queueID)
+      {
+         super(queueID);
+      }
+   }
+
    
 }

Modified: trunk/src/main/org/jboss/messaging/core/persistence/impl/nullpm/NullStorageManager.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/persistence/impl/nullpm/NullStorageManager.java	2008-09-10 16:28:41 UTC (rev 4928)
+++ trunk/src/main/org/jboss/messaging/core/persistence/impl/nullpm/NullStorageManager.java	2008-09-10 21:03:06 UTC (rev 4929)
@@ -172,5 +172,10 @@
    {
    }
 
+   public void storeDeleteMessageTransactional(long txID, long messageID,
+         long queueID) throws Exception
+   {
+   }
 
+
 }

Modified: trunk/src/main/org/jboss/messaging/core/server/ServerMessage.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/ServerMessage.java	2008-09-10 16:28:41 UTC (rev 4928)
+++ trunk/src/main/org/jboss/messaging/core/server/ServerMessage.java	2008-09-10 21:03:06 UTC (rev 4929)
@@ -22,6 +22,7 @@
 
 package org.jboss.messaging.core.server;
 
+import org.jboss.messaging.core.journal.EncodingSupport;
 import org.jboss.messaging.core.message.Message;
 
 /**
@@ -32,7 +33,7 @@
  * @author <a href="mailto:clebert.suconic at jboss.com">Clebert Suconic</a>
  *
  */
-public interface ServerMessage extends Message
+public interface ServerMessage extends Message, EncodingSupport
 {
    long getMessageID();
    

Modified: trunk/tests/src/org/jboss/messaging/tests/unit/core/journal/impl/AlignedJournalImplTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/journal/impl/AlignedJournalImplTest.java	2008-09-10 16:28:41 UTC (rev 4928)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/journal/impl/AlignedJournalImplTest.java	2008-09-10 21:03:06 UTC (rev 4929)
@@ -515,7 +515,7 @@
       
       for (int i = 0; i < 10; i++)
       {
-         journalImpl.appendDeleteRecordTransactional(2l, (long)i);
+         journalImpl.appendDeleteRecordTransactional(2l, (long)i, null);
          journalImpl.forceMoveNextFile();
       }
       
@@ -823,7 +823,7 @@
       
       for (int i=0;i<10;i++)
       {
-         journalImpl.appendDeleteRecordTransactional(2l, (long)i);
+         journalImpl.appendDeleteRecordTransactional(2l, (long)i, null);
       }
       
       journalImpl.appendCommitRecord(2l);
@@ -862,7 +862,7 @@
          {
             journalImpl.forceMoveNextFile();
          }
-         journalImpl.appendDeleteRecordTransactional(2l, (long)i);
+         journalImpl.appendDeleteRecordTransactional(2l, (long)i, null);
       }
       
       journalImpl.appendCommitRecord(2l);
@@ -884,22 +884,34 @@
       
       assertEquals(0, records.size());
       assertEquals(0, transactions.size());
-      
-      journalImpl.appendAddRecordTransactional(1, 1, (byte) 1, new SimpleEncoding(50,(byte) 1));
 
       SimpleEncoding xid = new SimpleEncoding(10, (byte)1);
       
+      journalImpl.appendAddRecord(10l, (byte)0, new SimpleEncoding(10, (byte)0));
+      
+      journalImpl.appendDeleteRecordTransactional(1l, 10l, new SimpleEncoding(100, (byte)'j'));
+
       journalImpl.appendPrepareRecord(1, xid);
       
-      journalImpl.appendAddRecord(2l, (byte)1, new SimpleEncoding(10, (byte)1));
-      
       journalImpl.debugWait();
 
       setupJournal(JOURNAL_SIZE, 1);
       
       assertEquals(1, transactions.size());
+      assertEquals(1, transactions.get(0).recordsToDelete.size());
       assertEquals(1, records.size());
+
+      for (RecordInfo record: transactions.get(0).recordsToDelete)
+      {
+         byte[] data = record.data;
+         assertEquals(100, data.length);
+         for (int i = 0; i < data.length; i++)
+         {
+            assertEquals((byte)'j', data[i]);
+         }
+      }
       
+      
       assertEquals(10, transactions.get(0).extraData.length);
       
       for (int i = 0; i < 10; i++)
@@ -907,7 +919,16 @@
          assertEquals((byte)1, transactions.get(0).extraData[i]);
       }
       
+      journalImpl.appendCommitRecord(1l);
+
+      journalImpl.debugWait();
       
+      setupJournal(JOURNAL_SIZE, 1);
+      
+      assertEquals(0, transactions.size());
+      assertEquals(0, records.size());
+      
+      
    }
 
    
@@ -961,7 +982,7 @@
       
       for (int i = 0; i < 10; i++)
       {
-         journalImpl.appendDeleteRecordTransactional(2l, (long)i);
+         journalImpl.appendDeleteRecordTransactional(2l, (long)i, null);
       }
       
       SimpleEncoding xid2 = new SimpleEncoding(15, (byte)2);
@@ -1126,7 +1147,6 @@
       assertEquals(10, records.size());
    }
    
-   // It should be ok to write records on NIO, and later read then on AIO
    public void testEmptyPrepare() throws Exception
    {
       final int JOURNAL_SIZE = 512 * 4;

Modified: trunk/tests/src/org/jboss/messaging/tests/unit/core/journal/impl/JournalImplTestBase.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/journal/impl/JournalImplTestBase.java	2008-09-10 16:28:41 UTC (rev 4928)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/journal/impl/JournalImplTestBase.java	2008-09-10 21:03:06 UTC (rev 4929)
@@ -280,9 +280,9 @@
 		
 		for (int i = 0; i < arguments.length; i++)
 		{                 
-			journal.appendDeleteRecordTransactional(txID, arguments[i]);
+			journal.appendDeleteRecordTransactional(txID, arguments[i], null);
 			
-			tx.deletes.add(arguments[i]);       
+			tx.deletes.add(new RecordInfo(arguments[i], (byte)0, null, true));
 		}
 		
       journal.debugWait();
@@ -349,9 +349,9 @@
 		
 		records.addAll(tx.records);
 		
-		for (Long l: tx.deletes)
+		for (RecordInfo l: tx.deletes)
 		{
-			removeRecordsForID(l);
+			removeRecordsForID(l.id);
 		}
 	}
 	
@@ -402,15 +402,15 @@
 			
 			assertEquals("deletes size not same", rexpected.recordsToDelete.size(), ractual.recordsToDelete.size());
 			
-			Iterator<Long> iterDeletesExpected = rexpected.recordsToDelete.iterator();
+			Iterator<RecordInfo> iterDeletesExpected = rexpected.recordsToDelete.iterator();
 			
-			Iterator<Long> iterDeletesActual = ractual.recordsToDelete.iterator();
+			Iterator<RecordInfo> iterDeletesActual = ractual.recordsToDelete.iterator();
 			
 			while (iterDeletesExpected.hasNext())
 			{
-				long lexpected = iterDeletesExpected.next();
+				long lexpected = iterDeletesExpected.next().id;
 				
-				long lactual = iterDeletesActual.next();
+				long lactual = iterDeletesActual.next().id;
 				
 				assertEquals("Delete ids not same", lexpected, lactual);
 			}
@@ -458,7 +458,7 @@
 	{
 		List<RecordInfo> records = new ArrayList<RecordInfo>();
 		
-		List<Long> deletes = new ArrayList<Long>();
+		List<RecordInfo> deletes = new ArrayList<RecordInfo>();
 		
 		boolean prepared;
 	}

Modified: trunk/tests/src/org/jboss/messaging/tests/unit/core/message/impl/MessageImplTestBase.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/message/impl/MessageImplTestBase.java	2008-09-10 16:28:41 UTC (rev 4928)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/message/impl/MessageImplTestBase.java	2008-09-10 21:03:06 UTC (rev 4929)
@@ -343,7 +343,7 @@
    
    // Private ----------------------------------------------------------------------------------
    
-   private void checkSizes(final EncodingSupport obj, final EncodingSupport newObject)
+   private void checkSizes(final Message obj, final EncodingSupport newObject)
    {
       ByteBuffer bf = ByteBuffer.allocateDirect(1024);
       ByteBufferWrapper buffer = new ByteBufferWrapper(bf);

Modified: trunk/tests/src/org/jboss/messaging/tests/unit/core/persistence/impl/journal/JournalStorageManagerTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/persistence/impl/journal/JournalStorageManagerTest.java	2008-09-10 16:28:41 UTC (rev 4928)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/persistence/impl/journal/JournalStorageManagerTest.java	2008-09-10 21:03:06 UTC (rev 4929)
@@ -153,7 +153,7 @@
       final long messageID = 101921092;
       final long txID = 1209373;
       
-      messageJournal.appendDeleteRecordTransactional(txID, messageID);  
+      messageJournal.appendDeleteRecordTransactional(txID, messageID, null);  
       EasyMock.replay(messageJournal, bindingsJournal);      
       jsm.storeDeleteTransactional(txID, messageID);  
       EasyMock.verify(messageJournal, bindingsJournal);




More information about the jboss-cvs-commits mailing list