You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by ch...@apache.org on 2017/08/23 06:14:12 UTC
svn commit: r1805852 - in /jackrabbit/oak/trunk/oak-lucene/src:
main/java/org/apache/jackrabbit/oak/plugins/index/lucene/
test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/
Author: chetanm
Date: Wed Aug 23 06:14:12 2017
New Revision: 1805852
URL: http://svn.apache.org/viewvc?rev=1805852&view=rev
Log:
OAK-6572 - IndexReaderClosed exception seen after some run
Bind the identity of search id to search holder id as searcher
would get changed for same IndexNode
Modified:
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNodeManager.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/HybridIndexTest.java
Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNodeManager.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNodeManager.java?rev=1805852&r1=1805851&r2=1805852&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNodeManager.java (original)
+++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNodeManager.java Wed Aug 23 06:14:12 2017
@@ -56,7 +56,7 @@ public class IndexNodeManager {
*/
static final String ASYNC = ":async";
- private static final AtomicInteger INDEX_NODE_COUNTER = new AtomicInteger();
+ private static final AtomicInteger SEARCHER_ID_COUNTER = new AtomicInteger();
private static final PerfLogger PERF_LOGGER =
new PerfLogger(LoggerFactory.getLogger(IndexNodeManager.class.getName() + ".perf"));
@@ -102,8 +102,6 @@ public class IndexNodeManager {
private boolean closed = false;
- private final int indexNodeId = INDEX_NODE_COUNTER.incrementAndGet();
-
IndexNodeManager(String name, IndexDefinition definition, List<LuceneIndexReader> readers, @Nullable NRTIndex nrtIndex)
throws IOException {
checkArgument(!readers.isEmpty() || nrtIndex != null);
@@ -157,10 +155,6 @@ public class IndexNodeManager {
lock.readLock().unlock();
}
- private int getIndexNodeId() {
- return indexNodeId;
- }
-
void close() throws IOException {
lock.writeLock().lock();
try {
@@ -267,6 +261,7 @@ public class IndexNodeManager {
private static class SearcherHolder {
final IndexSearcher searcher;
final List<LuceneIndexReader> nrtReaders;
+ final int searcherId = SEARCHER_ID_COUNTER.incrementAndGet();
public SearcherHolder(IndexSearcher searcher, List<LuceneIndexReader> nrtReaders) {
this.searcher = searcher;
@@ -325,7 +320,7 @@ public class IndexNodeManager {
@Override
public int getIndexNodeId() {
- return IndexNodeManager.this.getIndexNodeId();
+ return holder.searcherId;
}
@Override
Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java?rev=1805852&r1=1805851&r2=1805852&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java (original)
+++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java Wed Aug 23 06:14:12 2017
@@ -539,7 +539,6 @@ public class LucenePropertyIndex impleme
LOG.debug("Change in index version detected. Query would be performed without offset");
}
- //TODO Add testcase for this scenario
indexSearcher = indexNode.getSearcher();
indexNodeId = indexNode.getIndexNodeId();
lastDoc = null;
Modified: jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/HybridIndexTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/HybridIndexTest.java?rev=1805852&r1=1805851&r2=1805852&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/HybridIndexTest.java (original)
+++ jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/HybridIndexTest.java Wed Aug 23 06:14:12 2017
@@ -390,7 +390,6 @@ public class HybridIndexTest extends Abs
assertThat(fileCount4, lessThanOrEqualTo(fileCount3));
}
- @Ignore("OAK-6572")
@Test
public void paging() throws Exception{
String idxName = "hybridtest";