You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by ma...@apache.org on 2007/08/14 00:20:51 UTC
svn commit: r565556 -
/directory/apacheds/trunk/mitosis/src/main/java/org/apache/directory/mitosis/service/ReplicationService.java
Author: malderson
Date: Mon Aug 13 15:20:49 2007
New Revision: 565556
URL: http://svn.apache.org/viewvc?view=rev&rev=565556
Log:
Fixed a couple of problems stopping the entries marked as deleted from getting physically removed.
Modified:
directory/apacheds/trunk/mitosis/src/main/java/org/apache/directory/mitosis/service/ReplicationService.java
Modified: directory/apacheds/trunk/mitosis/src/main/java/org/apache/directory/mitosis/service/ReplicationService.java
URL: http://svn.apache.org/viewvc/directory/apacheds/trunk/mitosis/src/main/java/org/apache/directory/mitosis/service/ReplicationService.java?view=diff&rev=565556&r1=565555&r2=565556
==============================================================================
--- directory/apacheds/trunk/mitosis/src/main/java/org/apache/directory/mitosis/service/ReplicationService.java (original)
+++ directory/apacheds/trunk/mitosis/src/main/java/org/apache/directory/mitosis/service/ReplicationService.java Mon Aug 13 15:20:49 2007
@@ -301,7 +301,7 @@
try
{
- filter = parser.parse( "(& (" + ENTRY_CSN_OID + "=<" + purgeCSN.toOctetString() + ") (" + ENTRY_DELETED_OID
+ filter = parser.parse( "(& (" + ENTRY_CSN_OID + "<=" + purgeCSN.toOctetString() + ") (" + ENTRY_DELETED_OID
+ "=TRUE))" );
}
catch ( IOException e )
@@ -344,7 +344,7 @@
ctrl.setSearchScope( SearchControls.SUBTREE_SCOPE );
ctrl.setReturningAttributes( new String[] { "entryCSN", "entryDeleted" } );
- NamingEnumeration e = nexus.search(
+ NamingEnumeration<SearchResult> e = nexus.search(
new SearchOperationContext( contextName, directoryServiceConfiguration.getEnvironment(), filter, ctrl ) );
List<LdapDN> names = new ArrayList<LdapDN>();
@@ -352,7 +352,7 @@
{
while ( e.hasMore() )
{
- SearchResult sr = ( SearchResult ) e.next();
+ SearchResult sr = e.next();
LdapDN name = new LdapDN( sr.getName() );
if ( name.size() > contextName.size() )
{
@@ -365,12 +365,11 @@
e.close();
}
- Iterator<LdapDN> it = names.iterator();
- while ( it.hasNext() )
+ for ( LdapDN name : names )
{
- LdapDN name = it.next();
try
{
+ name.normalize( attrRegistry.getNormalizerMapping() );
Attributes entry = nexus.lookup( new LookupOperationContext( name ) );
log.info( "Purge: " + name + " (" + entry + ')' );
nexus.delete( new DeleteOperationContext( name ) );