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