From 60983d4d8605d0481be666331f00d4bd74d4fb89 Mon Sep 17 00:00:00 2001 From: Michael Hunger Date: Fri, 8 Nov 2013 17:59:39 +0100 Subject: [PATCH] ignore exceptions on index deletion/creation for test-cleanup --- .../data/neo4j/support/node/Neo4jHelper.java | 20 +++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/spring-data-neo4j/src/main/java/org/springframework/data/neo4j/support/node/Neo4jHelper.java b/spring-data-neo4j/src/main/java/org/springframework/data/neo4j/support/node/Neo4jHelper.java index 985c91216..200147380 100644 --- a/spring-data-neo4j/src/main/java/org/springframework/data/neo4j/support/node/Neo4jHelper.java +++ b/spring-data-neo4j/src/main/java/org/springframework/data/neo4j/support/node/Neo4jHelper.java @@ -21,6 +21,8 @@ import org.neo4j.graphdb.index.Index; import org.neo4j.graphdb.index.IndexManager; import org.neo4j.graphdb.index.RelationshipIndex; import org.neo4j.tooling.GlobalGraphOperations; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.data.neo4j.support.Neo4jTemplate; import java.util.HashMap; @@ -28,6 +30,8 @@ import java.util.Map; public abstract class Neo4jHelper { + private static final Logger log = LoggerFactory.getLogger(Neo4jHelper.class); + public static void cleanDb(Neo4jTemplate template) { cleanDb(template.getGraphDatabaseService()); } @@ -101,12 +105,20 @@ public abstract class Neo4jHelper { private static void clearIndex(GraphDatabaseService gds) { IndexManager indexManager = gds.index(); for (String ix : indexManager.nodeIndexNames()) { - Index nodeIndex = indexManager.forNodes(ix); - if (nodeIndex.isWriteable()) nodeIndex.delete(); + try { + Index nodeIndex = indexManager.forNodes(ix); + if (nodeIndex.isWriteable()) nodeIndex.delete(); + } catch(Exception e) { + log.warn("Cannot delete node index "+ix+" "+e.getMessage()); + } } for (String ix : indexManager.relationshipIndexNames()) { - RelationshipIndex relationshipIndex = indexManager.forRelationships(ix); - if (relationshipIndex.isWriteable()) relationshipIndex.delete(); + try { + RelationshipIndex relationshipIndex = indexManager.forRelationships(ix); + if (relationshipIndex.isWriteable()) relationshipIndex.delete(); + } catch(Exception e) { + log.warn("Cannot delete relationship index "+ix+" "+e.getMessage()); + } } } }