Use a transaction around the reverter to speedup tests
diff --git a/core/src/main/java/org/apache/directory/server/core/DefaultDirectoryService.java b/core/src/main/java/org/apache/directory/server/core/DefaultDirectoryService.java
index e22dd91..b77ec0b 100644
--- a/core/src/main/java/org/apache/directory/server/core/DefaultDirectoryService.java
+++ b/core/src/main/java/org/apache/directory/server/core/DefaultDirectoryService.java
@@ -1114,6 +1114,10 @@
          *
          * TODO review this code.
          */
+        PartitionTxn transaction = systemPartition.beginWriteTransaction();
+        // Speedup the addition by using a global transaction
+        adminSession.addTransaction( systemPartition, transaction );
+        adminSession.beginSessionTransaction();
 
         try
         {
@@ -1160,10 +1164,21 @@
                             throw new NotImplementedException( I18n.err( I18n.ERR_76, reverse.getChangeType() ) );
                     }
                 }
+                
+                adminSession.endSessionTransaction( true );
             }
         }
         catch ( Exception e )
         {
+            try
+            {
+                adminSession.endSessionTransaction( false );
+            }
+            catch ( IOException ioe )
+            {
+                throw new LdapOperationException( ioe.getMessage(), ioe );
+            }
+            
             throw new LdapOperationException( e.getMessage(), e );
         }
         finally