Author: catholicon
Date: Mon Sep 23 08:37:29 2019
New Revision: 1867370
URL: http://svn.apache.org/viewvc?rev=1867370&view=rev
Log:
OAK-8603: Composite Node Store + Counter Index: allow indexing from scratch /
reindex
Minor refactoring
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/counter/NodeCounterEditor.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/composite/CompositeNodeStoreLuceneIndexTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/composite/CompositeNodeStoreQueryTestBase.java
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/counter/NodeCounterEditor.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/counter/NodeCounterEditor.java?rev=1867370&r1=1867369&r2=1867370&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/counter/NodeCounterEditor.java
(original)
+++
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/counter/NodeCounterEditor.java
Mon Sep 23 08:37:29 2019
@@ -111,7 +111,7 @@ public class NodeCounterEditor implement
public void leave(NodeState before, NodeState after)
throws CommitFailedException {
if (NodeCounter.COUNT_HASH) {
- leaveNew(before, after);
+ leaveNew();
return;
}
leaveOld(before, after);
@@ -153,7 +153,7 @@ public class NodeCounterEditor implement
}
}
- public void leaveNew(NodeState before, NodeState after) throws
CommitFailedException {
+ private void leaveNew() throws CommitFailedException {
if (countOffsets.isEmpty()) {
return;
}
Modified:
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/composite/CompositeNodeStoreLuceneIndexTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/composite/CompositeNodeStoreLuceneIndexTest.java?rev=1867370&r1=1867369&r2=1867370&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/composite/CompositeNodeStoreLuceneIndexTest.java
(original)
+++
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/composite/CompositeNodeStoreLuceneIndexTest.java
Mon Sep 23 08:37:29 2019
@@ -72,6 +72,11 @@ public class CompositeNodeStoreLuceneInd
repoV1.initCompositeRepo();
}
+ @Override
+ public void closeRepositories() throws Exception {
+ repoV1.cleanup();
+ }
+
/**
* Steps overview -
* Add a new index to composite repo and reindex
@@ -97,8 +102,6 @@ public class CompositeNodeStoreLuceneInd
long reindexCount2 =
luceneTest.getProperty(REINDEX_COUNT).getValue().getLong();
assertEquals(reindexCount2, reindexCount + 1);
-
- repoV1.cleanup();
}
/**
@@ -108,13 +111,12 @@ public class CompositeNodeStoreLuceneInd
@Test
public void addIndexInReadWriteWithIndexExistinginReadOnly() throws
Exception {
repoV1.setupIndexAndContentInRepo("luceneTest", "foo", true,
VERSION_1);
- repoV1.cleanup();
}
/**
* Given a composite jcr repo with a lucene index with indexed data from
both read only and read write parts
* We create a V2 of this repo which will have the lucene index removed -
- * Expected behaviour - The same query that returned resutls from both
readonly
+ * Expected behaviour - The same query that returned results from both
readonly
* and readwrite in V1 should now return
* results - but it would be a traversal query and not use the index .
*/
@@ -325,6 +327,8 @@ public class CompositeNodeStoreLuceneInd
private Node readOnlyRoot;
private String readOnlyMountName;
+ private boolean cleanedUp;
+
public Node getReadOnlyRoot() {
return readOnlyRoot;
}
@@ -461,10 +465,13 @@ public class CompositeNodeStoreLuceneInd
}
private void cleanup() {
- compositeSession.logout();
- shutdown(compositeRepository);
- readOnlySession.logout();
- shutdown(readOnlyRepository);
+ if (!cleanedUp) {
+ compositeSession.logout();
+ shutdown(compositeRepository);
+ readOnlySession.logout();
+ shutdown(readOnlyRepository);
+ }
+ cleanedUp = true;
}
}
Modified:
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/composite/CompositeNodeStoreQueryTestBase.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/composite/CompositeNodeStoreQueryTestBase.java?rev=1867370&r1=1867369&r2=1867370&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/composite/CompositeNodeStoreQueryTestBase.java
(original)
+++
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/composite/CompositeNodeStoreQueryTestBase.java
Mon Sep 23 08:37:29 2019
@@ -412,7 +412,7 @@ public class CompositeNodeStoreQueryTest
}
}
- static enum NodeStoreKind {
+ enum NodeStoreKind {
MEMORY {
@Override
public NodeStoreRegistration create(String name) {
@@ -421,7 +421,7 @@ public class CompositeNodeStoreQueryTest
private MemoryNodeStore instance;
@Override
- public NodeStore get() {
+ public NodeStore get(TemporaryFolder temporaryFolder) {
if (instance != null) {
throw new IllegalStateException("instance already
created");
@@ -454,19 +454,18 @@ public class CompositeNodeStoreQueryTest
private String blobStorePath;
@Override
- public NodeStore get() throws Exception {
+ public NodeStore get(TemporaryFolder temporaryFolder)
throws Exception {
if (instance != null) {
throw new IllegalStateException("instance already
created");
}
- // TODO - don't use Unix directory separators
String directoryName = name != null ? "segment-" +
name : "segment";
- storePath = new File("target/classes/" +
directoryName);
+ storePath = temporaryFolder.newFolder(directoryName);
//String blobStoreDirectoryName = name != null ?
"blob-" + name : "blob";
String blobStoreDirectoryName = "blob" ;
- blobStorePath = "target/classes/" +
blobStoreDirectoryName;
+ blobStorePath =
temporaryFolder.getRoot().getAbsolutePath() + blobStoreDirectoryName;
BlobStore blobStore = new FileBlobStore(blobStorePath);
@@ -499,9 +498,9 @@ public class CompositeNodeStoreQueryTest
private DocumentNodeStore instance;
@Override
- public NodeStore get() throws Exception {
+ public NodeStore get(TemporaryFolder temporaryFolder)
throws Exception {
RDBOptions options = new
RDBOptions().dropTablesOnClose(true);
- String jdbcUrl =
"jdbc:h2:file:./target/classes/document";
+ String jdbcUrl = "jdbc:h2:file:" +
temporaryFolder.getRoot().getAbsolutePath() + "/document";
if ( name != null ) {
jdbcUrl += "-" + name;
}
@@ -536,7 +535,7 @@ public class CompositeNodeStoreQueryTest
}
private interface NodeStoreRegistration {
- NodeStore get() throws Exception;
+ NodeStore get(TemporaryFolder temporaryFolder) throws Exception;
void close() throws Exception;
}
@@ -544,7 +543,7 @@ public class CompositeNodeStoreQueryTest
protected NodeStore register(NodeStoreRegistration reg) throws Exception {
registrations.add(reg);
- return reg.get();
+ return reg.get(temporaryFolder);
}