Author: reschke
Date: Fri Mar 13 09:30:44 2015
New Revision: 1666381
URL: http://svn.apache.org/r1666381
Log:
OAK-2590 - fix file delete logic to avoid UnsupportedOperationException
Modified:
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopier.java
Modified:
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopier.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopier.java?rev=1666381&r1=1666380&r2=1666381&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopier.java
(original)
+++
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopier.java
Fri Mar 13 09:30:44 2015
@@ -22,6 +22,7 @@ package org.apache.jackrabbit.oak.plugin
import java.io.File;
import java.io.IOException;
import java.util.Collection;
+import java.util.HashSet;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.ConcurrentMap;
@@ -43,6 +44,7 @@ import com.google.common.collect.Immutab
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import com.google.common.hash.Hashing;
+
import org.apache.commons.io.FileUtils;
import org.apache.jackrabbit.oak.commons.IOUtils;
import org.apache.lucene.store.BaseDirectory;
@@ -285,6 +287,7 @@ class IndexCopier implements CopyOnReadS
"This can happen on Windows based system. Attempt would be
made to remove them " +
"in next attempt ", local, failedToDelete);
+ filesToBeDeleted = new HashSet<String>(filesToBeDeleted);
filesToBeDeleted.removeAll(failedToDelete);
if(!filesToBeDeleted.isEmpty()) {
log.debug("Following files have been removed from Lucene " +