You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by zh...@apache.org on 2017/09/22 18:53:05 UTC
[geode] branch feature/GEODE-3239 updated: GEODE-3606: add index as
parameter for toDocuments()
This is an automated email from the ASF dual-hosted git repository.
zhouxj pushed a commit to branch feature/GEODE-3239
in repository https://gitbox.apache.org/repos/asf/geode.git
The following commit(s) were added to refs/heads/feature/GEODE-3239 by this push:
new 26c9107 GEODE-3606: add index as parameter for toDocuments()
26c9107 is described below
commit 26c9107111811534fd299997479726f81f571838
Author: zhouxh <gz...@pivotal.io>
AuthorDate: Fri Sep 22 09:38:36 2017 -0700
GEODE-3606: add index as parameter for toDocuments()
This closes #810
---
.../geode/cache/lucene/LuceneSerializer.java | 4 ++-
.../lucene/internal/IndexRepositoryFactory.java | 2 +-
.../internal/LuceneIndexForPartitionedRegion.java | 2 +-
.../cache/lucene/internal/LuceneRawIndex.java | 2 +-
.../lucene/internal/RawIndexRepositoryFactory.java | 2 +-
.../internal/repository/IndexRepositoryImpl.java | 16 ++++------
.../serializer/HeterogeneousLuceneSerializer.java | 37 ++++++----------------
.../repository/serializer/PdxLuceneSerializer.java | 11 +++----
.../repository/serializer/PrimitiveSerializer.java | 3 +-
.../serializer/ReflectionLuceneSerializer.java | 4 +--
.../geode/cache/lucene/DummyLuceneSerializer.java | 2 +-
.../cache/lucene/LuceneIndexCreationDUnitTest.java | 3 +-
.../LuceneIndexMaintenanceIntegrationTest.java | 6 ++--
.../LuceneIndexCreationProfileJUnitTest.java | 2 +-
.../LuceneIndexRecoveryHAIntegrationTest.java | 4 +--
.../PartitionedRepositoryManagerJUnitTest.java | 2 +-
.../RawLuceneRepositoryManagerJUnitTest.java | 2 +-
.../distributed/DistributedScoringJUnitTest.java | 7 ++--
.../repository/IndexRepositoryImplJUnitTest.java | 7 ++--
.../IndexRepositoryImplPerformanceTest.java | 6 ++--
.../HeterogeneousLuceneSerializerJUnitTest.java | 20 ++++++------
.../serializer/PdxFieldMapperJUnitTest.java | 12 +++----
.../serializer/ReflectionFieldMapperJUnitTest.java | 8 ++---
.../serializer/SerializerTestHelper.java | 9 ++++--
.../cache/lucene/test/LuceneTestSerializer.java | 3 +-
25 files changed, 82 insertions(+), 94 deletions(-)
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/LuceneSerializer.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/LuceneSerializer.java
index f1c530d..363867d 100644
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/LuceneSerializer.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/LuceneSerializer.java
@@ -30,6 +30,8 @@ public interface LuceneSerializer extends Declarable {
/**
* Add the fields of the given value to a set of documents
+ *
+ * @param index lucene index
*/
- Collection<Document> toDocuments(Object value);
+ Collection<Document> toDocuments(LuceneIndex index, Object value);
}
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/IndexRepositoryFactory.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/IndexRepositoryFactory.java
index a863ddc..08ffaa9 100644
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/IndexRepositoryFactory.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/IndexRepositoryFactory.java
@@ -83,7 +83,7 @@ public class IndexRepositoryFactory {
IndexWriterConfig config = new IndexWriterConfig(indexForPR.getAnalyzer());
IndexWriter writer = new IndexWriter(dir, config);
repo = new IndexRepositoryImpl(fileAndChunkBucket, writer, serializer,
- indexForPR.getIndexStats(), dataBucket, lockService, lockName);
+ indexForPR.getIndexStats(), dataBucket, lockService, lockName, indexForPR);
success = true;
return repo;
} catch (IOException e) {
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneIndexForPartitionedRegion.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneIndexForPartitionedRegion.java
index 2fc714a..b383210 100644
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneIndexForPartitionedRegion.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneIndexForPartitionedRegion.java
@@ -59,7 +59,7 @@ public class LuceneIndexForPartitionedRegion extends LuceneIndexImpl {
protected RepositoryManager createRepositoryManager(LuceneSerializer luceneSerializer) {
LuceneSerializer mapper = luceneSerializer;
if (mapper == null) {
- mapper = new HeterogeneousLuceneSerializer(getFieldNames());
+ mapper = new HeterogeneousLuceneSerializer();
}
PartitionedRepositoryManager partitionedRepositoryManager =
new PartitionedRepositoryManager(this, mapper);
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneRawIndex.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneRawIndex.java
index 7ee0ff5..7ecd5c2 100755
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneRawIndex.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneRawIndex.java
@@ -29,7 +29,7 @@ public class LuceneRawIndex extends LuceneIndexImpl {
protected RepositoryManager createRepositoryManager(LuceneSerializer luceneSerializer) {
HeterogeneousLuceneSerializer mapper = (HeterogeneousLuceneSerializer) luceneSerializer;
if (mapper == null) {
- mapper = new HeterogeneousLuceneSerializer(getFieldNames());
+ mapper = new HeterogeneousLuceneSerializer();
}
RawLuceneRepositoryManager rawLuceneRepositoryManager =
new RawLuceneRepositoryManager(this, mapper);
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/RawIndexRepositoryFactory.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/RawIndexRepositoryFactory.java
index 9085ce0..f1f9cd3 100755
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/RawIndexRepositoryFactory.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/RawIndexRepositoryFactory.java
@@ -58,6 +58,6 @@ public class RawIndexRepositoryFactory extends IndexRepositoryFactory {
IndexWriter writer = new IndexWriter(dir, config);
return new IndexRepositoryImpl(null, writer, serializer, indexForRaw.getIndexStats(),
- dataBucket, null, "");
+ dataBucket, null, "", indexForRaw);
}
}
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/IndexRepositoryImpl.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/IndexRepositoryImpl.java
index 8698471..da1cb2e 100644
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/IndexRepositoryImpl.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/IndexRepositoryImpl.java
@@ -17,6 +17,7 @@ package org.apache.geode.cache.lucene.internal.repository;
import org.apache.geode.cache.Region;
import org.apache.geode.cache.lucene.internal.LuceneIndexStats;
+import org.apache.geode.cache.lucene.LuceneIndex;
import org.apache.geode.cache.lucene.LuceneSerializer;
import org.apache.geode.cache.lucene.internal.repository.serializer.SerializerUtil;
import org.apache.geode.distributed.DistributedLockService;
@@ -54,19 +55,13 @@ public class IndexRepositoryImpl implements IndexRepository {
private DocumentCountSupplier documentCountSupplier;
private final DistributedLockService lockService;
private String lockName;
+ private LuceneIndex index;
private static final Logger logger = LogService.getLogger();
- // For test purposes
- IndexRepositoryImpl(Region<?, ?> region, IndexWriter writer, LuceneSerializer serializer,
- LuceneIndexStats stats, Region<?, ?> userRegion) throws IOException {
- this(region, writer, serializer, stats, userRegion,
- ((DistributedRegion) region).getLockService(), "NoLockFile");
- }
-
public IndexRepositoryImpl(Region<?, ?> region, IndexWriter writer, LuceneSerializer serializer,
LuceneIndexStats stats, Region<?, ?> userRegion, DistributedLockService lockService,
- String lockName) throws IOException {
+ String lockName, LuceneIndex index) throws IOException {
this.region = region;
this.userRegion = userRegion;
this.writer = writer;
@@ -77,13 +72,14 @@ public class IndexRepositoryImpl implements IndexRepository {
stats.addDocumentsSupplier(documentCountSupplier);
this.lockService = lockService;
this.lockName = lockName;
+ this.index = index;
}
@Override
public void create(Object key, Object value) throws IOException {
long start = stats.startUpdate();
try {
- Collection<Document> docs = serializer.toDocuments(value);
+ Collection<Document> docs = serializer.toDocuments(index, value);
docs.forEach(doc -> SerializerUtil.addKey(key, doc));
writer.addDocuments(docs);
} finally {
@@ -95,7 +91,7 @@ public class IndexRepositoryImpl implements IndexRepository {
public void update(Object key, Object value) throws IOException {
long start = stats.startUpdate();
try {
- Collection<Document> docs = serializer.toDocuments(value);
+ Collection<Document> docs = serializer.toDocuments(index, value);
docs.forEach(doc -> SerializerUtil.addKey(key, doc));
Term keyTerm = SerializerUtil.toKeyTerm(key);
writer.updateDocuments(keyTerm, docs);
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/serializer/HeterogeneousLuceneSerializer.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/serializer/HeterogeneousLuceneSerializer.java
index 864b3b7..9a15356 100644
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/serializer/HeterogeneousLuceneSerializer.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/serializer/HeterogeneousLuceneSerializer.java
@@ -21,7 +21,7 @@ import java.util.Map;
import org.apache.logging.log4j.Logger;
import org.apache.lucene.document.Document;
-
+import org.apache.geode.cache.lucene.LuceneIndex;
import org.apache.geode.cache.lucene.LuceneSerializer;
import org.apache.geode.cache.lucene.LuceneService;
import org.apache.geode.internal.logging.LogService;
@@ -34,11 +34,6 @@ import org.apache.geode.pdx.PdxInstance;
*/
public class HeterogeneousLuceneSerializer implements LuceneSerializer {
/**
- * The set of indexed fields for this mapper
- */
- private String[] indexedFields;
-
- /**
* A mapper for converting a PDX object into a document
*/
private LuceneSerializer pdxMapper;
@@ -53,36 +48,24 @@ public class HeterogeneousLuceneSerializer implements LuceneSerializer {
private static final Logger logger = LogService.getLogger();
- public HeterogeneousLuceneSerializer(String[] indexedFields) {
- this.indexedFields = indexedFields;
- pdxMapper = new PdxLuceneSerializer(indexedFields);
-
+ public HeterogeneousLuceneSerializer() {
+ final PrimitiveSerializer primitiveSerializer = new PrimitiveSerializer();
+ SerializerUtil.supportedPrimitiveTypes().stream()
+ .forEach(type -> mappers.put(type, primitiveSerializer));
- addSerializersForPrimitiveValues();
- }
-
- /**
- * Add serializers for the primitive value types (String, Number, etc.) if the user has requested
- * that the whole value be serialized
- */
- private void addSerializersForPrimitiveValues() {
- if (Arrays.asList(indexedFields).contains(LuceneService.REGION_VALUE_FIELD)) {
- final PrimitiveSerializer primitiveSerializer = new PrimitiveSerializer();
- SerializerUtil.supportedPrimitiveTypes().stream()
- .forEach(type -> mappers.put(type, primitiveSerializer));
- }
+ pdxMapper = new PdxLuceneSerializer();
}
@Override
- public Collection<Document> toDocuments(Object value) {
+ public Collection<Document> toDocuments(LuceneIndex index, Object value) {
if (value == null) {
return Collections.emptyList();
}
- LuceneSerializer mapper = getFieldMapper(value);
+ LuceneSerializer mapper = getFieldMapper(value, index.getFieldNames());
- Collection<Document> docs = mapper.toDocuments(value);
+ Collection<Document> docs = mapper.toDocuments(index, value);
if (logger.isDebugEnabled()) {
logger.debug("HeterogeneousLuceneSerializer.toDocuments:" + docs);
}
@@ -93,7 +76,7 @@ public class HeterogeneousLuceneSerializer implements LuceneSerializer {
/**
* Get the field mapper based on the type of the given object.
*/
- private LuceneSerializer getFieldMapper(Object value) {
+ private LuceneSerializer getFieldMapper(Object value, String[] indexedFields) {
if (value instanceof PdxInstance) {
return pdxMapper;
} else {
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/serializer/PdxLuceneSerializer.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/serializer/PdxLuceneSerializer.java
index f63a1b7..cb1f0cd 100644
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/serializer/PdxLuceneSerializer.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/serializer/PdxLuceneSerializer.java
@@ -21,6 +21,7 @@ import org.apache.lucene.document.Document;
import java.util.Collection;
import java.util.Collections;
+import org.apache.geode.cache.lucene.LuceneIndex;
import org.apache.geode.cache.lucene.LuceneSerializer;
import org.apache.geode.internal.logging.LogService;
import org.apache.geode.pdx.PdxInstance;
@@ -30,19 +31,15 @@ import org.apache.geode.pdx.PdxInstance;
*/
class PdxLuceneSerializer implements LuceneSerializer {
- private String[] indexedFields;
-
private static final Logger logger = LogService.getLogger();
- public PdxLuceneSerializer(String[] indexedFields) {
- this.indexedFields = indexedFields;
- }
+ public PdxLuceneSerializer() {}
@Override
- public Collection<Document> toDocuments(Object value) {
+ public Collection<Document> toDocuments(LuceneIndex index, Object value) {
Document doc = new Document();
PdxInstance pdx = (PdxInstance) value;
- for (String field : indexedFields) {
+ for (String field : index.getFieldNames()) {
if (pdx.hasField(field)) {
Object fieldValue = pdx.getField(field);
if (fieldValue == null) {
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/serializer/PrimitiveSerializer.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/serializer/PrimitiveSerializer.java
index 159f18c..fddcb44 100644
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/serializer/PrimitiveSerializer.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/serializer/PrimitiveSerializer.java
@@ -17,6 +17,7 @@ package org.apache.geode.cache.lucene.internal.repository.serializer;
import java.util.Collection;
import java.util.Collections;
+import org.apache.geode.cache.lucene.LuceneIndex;
import org.apache.geode.cache.lucene.LuceneSerializer;
import org.apache.geode.cache.lucene.LuceneService;
@@ -29,7 +30,7 @@ import org.apache.lucene.document.Document;
public class PrimitiveSerializer implements LuceneSerializer {
@Override
- public Collection<Document> toDocuments(final Object value) {
+ public Collection<Document> toDocuments(LuceneIndex index, final Object value) {
Document doc = new Document();
SerializerUtil.addField(doc, LuceneService.REGION_VALUE_FIELD, value);
return Collections.singleton(doc);
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/serializer/ReflectionLuceneSerializer.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/serializer/ReflectionLuceneSerializer.java
index a9ef5d2..5b9298b 100644
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/serializer/ReflectionLuceneSerializer.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/serializer/ReflectionLuceneSerializer.java
@@ -25,7 +25,7 @@ import java.util.Set;
import org.apache.logging.log4j.Logger;
import org.apache.lucene.document.Document;
-
+import org.apache.geode.cache.lucene.LuceneIndex;
import org.apache.geode.cache.lucene.LuceneSerializer;
import org.apache.geode.internal.logging.LogService;
@@ -63,7 +63,7 @@ class ReflectionLuceneSerializer implements LuceneSerializer {
}
@Override
- public Collection<Document> toDocuments(Object value) {
+ public Collection<Document> toDocuments(LuceneIndex index, Object value) {
Document doc = new Document();
for (Field field : fields) {
try {
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/DummyLuceneSerializer.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/DummyLuceneSerializer.java
index 2a31768..def03f7 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/DummyLuceneSerializer.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/DummyLuceneSerializer.java
@@ -22,7 +22,7 @@ import org.apache.lucene.document.Document;
public class DummyLuceneSerializer implements LuceneSerializer {
@Override
- public Collection<Document> toDocuments(Object value) {
+ public Collection<Document> toDocuments(LuceneIndex index, Object value) {
return Collections.emptyList();
}
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationDUnitTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationDUnitTest.java
index e41cf85..afd8c96 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationDUnitTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationDUnitTest.java
@@ -506,8 +506,7 @@ public class LuceneIndexCreationDUnitTest extends LuceneDUnitTest {
return () -> {
LuceneService luceneService = LuceneServiceProvider.get(getCache());
luceneService.createIndexFactory().setFields(new String[] {"field1", "field2"})
- .setLuceneSerializer(new HeterogeneousLuceneSerializer(new String[] {"field1", "field2"}))
- .create(INDEX_NAME, REGION_NAME);
+ .setLuceneSerializer(new HeterogeneousLuceneSerializer()).create(INDEX_NAME, REGION_NAME);
};
}
}
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexMaintenanceIntegrationTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexMaintenanceIntegrationTest.java
index 03921ee..1827f2a 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexMaintenanceIntegrationTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexMaintenanceIntegrationTest.java
@@ -109,10 +109,8 @@ public class LuceneIndexMaintenanceIntegrationTest extends LuceneIntegrationTest
@Test
public void useSerializerToIndex() throws Exception {
- luceneService.createIndexFactory().setFields("title", "name")
- .setLuceneSerializer(
- new HeterogeneousLuceneSerializer(new String[] {"title", "description"}))
- .create(INDEX_NAME, REGION_NAME);
+ luceneService.createIndexFactory().setFields("title", "description")
+ .setLuceneSerializer(new HeterogeneousLuceneSerializer()).create(INDEX_NAME, REGION_NAME);
Region region = createRegion(REGION_NAME, RegionShortcut.PARTITION);
region.put("object-1", new TestObject("title 1", "hello world"));
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneIndexCreationProfileJUnitTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneIndexCreationProfileJUnitTest.java
index c653c2f..5ecca42 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneIndexCreationProfileJUnitTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneIndexCreationProfileJUnitTest.java
@@ -97,7 +97,7 @@ public class LuceneIndexCreationProfileJUnitTest {
private LuceneIndexCreationProfile getHeterogeneousLuceneSerializerCreationProfile() {
return new LuceneIndexCreationProfile(INDEX_NAME, REGION_NAME, new String[] {"field1"},
- new StandardAnalyzer(), null, new HeterogeneousLuceneSerializer(new String[] {"field1"}));
+ new StandardAnalyzer(), null, new HeterogeneousLuceneSerializer());
}
@Test
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneIndexRecoveryHAIntegrationTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneIndexRecoveryHAIntegrationTest.java
index b6b1d23..5adf823 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneIndexRecoveryHAIntegrationTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneIndexRecoveryHAIntegrationTest.java
@@ -43,7 +43,7 @@ import static org.junit.Assert.assertTrue;
@Category(IntegrationTest.class)
public class LuceneIndexRecoveryHAIntegrationTest {
String[] indexedFields = new String[] {"txt"};
- HeterogeneousLuceneSerializer mapper = new HeterogeneousLuceneSerializer(indexedFields);
+ HeterogeneousLuceneSerializer mapper = new HeterogeneousLuceneSerializer();
Analyzer analyzer = new StandardAnalyzer();
Cache cache;
@@ -53,7 +53,7 @@ public class LuceneIndexRecoveryHAIntegrationTest {
@Before
public void setup() {
indexedFields = new String[] {"txt"};
- mapper = new HeterogeneousLuceneSerializer(indexedFields);
+ mapper = new HeterogeneousLuceneSerializer();
analyzer = new StandardAnalyzer();
LuceneServiceImpl.registerDataSerializables();
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/PartitionedRepositoryManagerJUnitTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/PartitionedRepositoryManagerJUnitTest.java
index deda987..20d0213 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/PartitionedRepositoryManagerJUnitTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/PartitionedRepositoryManagerJUnitTest.java
@@ -82,7 +82,7 @@ public class PartitionedRepositoryManagerJUnitTest {
userDataStore = Mockito.mock(PartitionedRegionDataStore.class);
when(userRegion.getDataStore()).thenReturn(userDataStore);
when(cache.getRegion("/testRegion")).thenReturn(userRegion);
- serializer = new HeterogeneousLuceneSerializer(new String[] {"a", "b"});
+ serializer = new HeterogeneousLuceneSerializer();
DLockService lockService = mock(DLockService.class);
when(lockService.lock(any(), anyLong(), anyLong())).thenReturn(true);
DLockService.addLockServiceForTests(PartitionedRegionHelper.PARTITION_LOCK_SERVICE_NAME,
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/RawLuceneRepositoryManagerJUnitTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/RawLuceneRepositoryManagerJUnitTest.java
index ca4d170..26447ca 100755
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/RawLuceneRepositoryManagerJUnitTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/RawLuceneRepositoryManagerJUnitTest.java
@@ -46,7 +46,7 @@ public class RawLuceneRepositoryManagerJUnitTest extends PartitionedRepositoryMa
userDataStore = Mockito.mock(PartitionedRegionDataStore.class);
when(userRegion.getDataStore()).thenReturn(userDataStore);
when(cache.getRegion("/testRegion")).thenReturn(userRegion);
- serializer = new HeterogeneousLuceneSerializer(new String[] {"a", "b"});
+ serializer = new HeterogeneousLuceneSerializer();
createIndexAndRepoManager();
}
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/distributed/DistributedScoringJUnitTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/distributed/DistributedScoringJUnitTest.java
index ee1c70f..ef6f44e 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/distributed/DistributedScoringJUnitTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/distributed/DistributedScoringJUnitTest.java
@@ -32,6 +32,7 @@ import org.junit.experimental.categories.Category;
import org.mockito.Mockito;
import org.apache.geode.cache.Region;
+import org.apache.geode.cache.lucene.LuceneIndex;
import org.apache.geode.cache.lucene.internal.LuceneIndexStats;
import org.apache.geode.cache.lucene.internal.directory.RegionDirectory;
import org.apache.geode.cache.lucene.internal.filesystem.FileSystemStats;
@@ -43,7 +44,7 @@ import org.apache.geode.test.junit.categories.UnitTest;
public class DistributedScoringJUnitTest {
private String[] indexedFields = new String[] {"txt"};
- private HeterogeneousLuceneSerializer mapper = new HeterogeneousLuceneSerializer(indexedFields);
+ private HeterogeneousLuceneSerializer mapper = new HeterogeneousLuceneSerializer();
private final StandardAnalyzer analyzer = new StandardAnalyzer();
private Region<String, String> region;
@@ -135,8 +136,10 @@ public class DistributedScoringJUnitTest {
IndexWriterConfig config = new IndexWriterConfig(analyzer);
IndexWriter writer = new IndexWriter(dir, config);
+ LuceneIndex index = Mockito.mock(LuceneIndex.class);
+ Mockito.when(index.getFieldNames()).thenReturn(new String[] {"txt"});
- return new IndexRepositoryImpl(region, writer, mapper, indexStats, null, null, "");
+ return new IndexRepositoryImpl(region, writer, mapper, indexStats, null, null, "", index);
}
private static class TestType {
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/IndexRepositoryImplJUnitTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/IndexRepositoryImplJUnitTest.java
index 23c2e9c..bac4c12 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/IndexRepositoryImplJUnitTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/IndexRepositoryImplJUnitTest.java
@@ -42,6 +42,7 @@ import org.mockito.ArgumentCaptor;
import org.mockito.Mockito;
import org.apache.geode.cache.Region;
+import org.apache.geode.cache.lucene.LuceneIndex;
import org.apache.geode.cache.lucene.internal.LuceneIndexStats;
import org.apache.geode.cache.lucene.internal.directory.RegionDirectory;
import org.apache.geode.cache.lucene.internal.filesystem.FileSystemStats;
@@ -73,7 +74,7 @@ public class IndexRepositoryImplJUnitTest {
IndexWriterConfig config = new IndexWriterConfig(analyzer);
writer = new IndexWriter(dir, config);
String[] indexedFields = new String[] {"s", "i", "l", "d", "f", "s2", "missing"};
- mapper = new HeterogeneousLuceneSerializer(indexedFields);
+ mapper = new HeterogeneousLuceneSerializer();
region = Mockito.mock(Region.class);
userRegion = Mockito.mock(BucketRegion.class);
BucketAdvisor bucketAdvisor = Mockito.mock(BucketAdvisor.class);
@@ -83,8 +84,10 @@ public class IndexRepositoryImplJUnitTest {
Mockito.when(((BucketRegion) userRegion).getBucketAdvisor().isPrimary()).thenReturn(true);
stats = Mockito.mock(LuceneIndexStats.class);
Mockito.when(userRegion.isDestroyed()).thenReturn(false);
+ LuceneIndex index = Mockito.mock(LuceneIndex.class);
+ Mockito.when(index.getFieldNames()).thenReturn(new String[] {"s"});
repo = new IndexRepositoryImpl(region, writer, mapper, stats, userRegion,
- mock(DistributedLockService.class), "lockName");
+ mock(DistributedLockService.class), "lockName", index);
}
@Test
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/IndexRepositoryImplPerformanceTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/IndexRepositoryImplPerformanceTest.java
index 4b321a5..d0b2a91 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/IndexRepositoryImplPerformanceTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/IndexRepositoryImplPerformanceTest.java
@@ -66,6 +66,7 @@ import org.apache.geode.cache.lucene.internal.directory.RegionDirectory;
import org.apache.geode.cache.lucene.internal.distributed.TopEntriesCollector;
import org.apache.geode.cache.lucene.internal.filesystem.FileSystemStats;
import org.apache.geode.cache.lucene.internal.repository.serializer.HeterogeneousLuceneSerializer;
+import org.apache.geode.internal.cache.DistributedRegion;
import org.apache.geode.test.junit.categories.PerformanceTest;
@@ -119,8 +120,9 @@ public class IndexRepositoryImplPerformanceTest {
IndexWriterConfig config = new IndexWriterConfig(analyzer);
writer = new IndexWriter(dir, config);
String[] indexedFields = new String[] {"text"};
- HeterogeneousLuceneSerializer mapper = new HeterogeneousLuceneSerializer(indexedFields);
- repo = new IndexRepositoryImpl(fileAndChunkRegion, writer, mapper, stats, null);
+ HeterogeneousLuceneSerializer mapper = new HeterogeneousLuceneSerializer();
+ repo = new IndexRepositoryImpl(fileAndChunkRegion, writer, mapper, stats, null,
+ ((DistributedRegion) fileAndChunkRegion).getLockService(), "NoLockFile", null);
}
@Override
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/serializer/HeterogeneousLuceneSerializerJUnitTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/serializer/HeterogeneousLuceneSerializerJUnitTest.java
index e7e95ba..a741678 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/serializer/HeterogeneousLuceneSerializerJUnitTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/serializer/HeterogeneousLuceneSerializerJUnitTest.java
@@ -37,11 +37,11 @@ public class HeterogeneousLuceneSerializerJUnitTest {
@Test
public void testHeterogeneousObjects() {
String[] fields = new String[] {"s", "i", "l", "d", "f", "s2", "missing"};
- HeterogeneousLuceneSerializer mapper = new HeterogeneousLuceneSerializer(fields);
+ HeterogeneousLuceneSerializer mapper = new HeterogeneousLuceneSerializer();
Type1 t1 = new Type1("a", 1, 2L, 3.0, 4.0f);
- Document doc1 = SerializerTestHelper.invokeSerializer(mapper, t1);
+ Document doc1 = SerializerTestHelper.invokeSerializer(mapper, t1, fields);
assertEquals(5, doc1.getFields().size());
assertEquals("a", doc1.getField("s").stringValue());
@@ -52,7 +52,7 @@ public class HeterogeneousLuceneSerializerJUnitTest {
Type2 t2 = new Type2("a", 1, 2L, 3.0, 4.0f, "b");
- Document doc2 = SerializerTestHelper.invokeSerializer(mapper, t2);
+ Document doc2 = SerializerTestHelper.invokeSerializer(mapper, t2, fields);
assertEquals(6, doc2.getFields().size());
assertEquals("a", doc2.getField("s").stringValue());
@@ -69,7 +69,7 @@ public class HeterogeneousLuceneSerializerJUnitTest {
when(pdxInstance.getField("s")).thenReturn("a");
when(pdxInstance.getField("i")).thenReturn(5);
- Document doc3 = SerializerTestHelper.invokeSerializer(mapper, pdxInstance);
+ Document doc3 = SerializerTestHelper.invokeSerializer(mapper, pdxInstance, fields);
assertEquals(2, doc3.getFields().size());
assertEquals("a", doc3.getField("s").stringValue());
@@ -78,18 +78,18 @@ public class HeterogeneousLuceneSerializerJUnitTest {
@Test
public void shouldIndexPrimitiveStringIfRequested() {
- HeterogeneousLuceneSerializer mapper =
- new HeterogeneousLuceneSerializer(new String[] {LuceneService.REGION_VALUE_FIELD});
- Document doc = SerializerTestHelper.invokeSerializer(mapper, "sample value");
+ HeterogeneousLuceneSerializer mapper = new HeterogeneousLuceneSerializer();
+ Document doc = SerializerTestHelper.invokeSerializer(mapper, "sample value",
+ new String[] {LuceneService.REGION_VALUE_FIELD});
assertEquals(1, doc.getFields().size());
assertEquals("sample value", doc.getField(LuceneService.REGION_VALUE_FIELD).stringValue());
}
@Test
public void shouldIndexPrimitiveNumberIfRequested() {
- HeterogeneousLuceneSerializer mapper =
- new HeterogeneousLuceneSerializer(new String[] {LuceneService.REGION_VALUE_FIELD});
- Document doc = SerializerTestHelper.invokeSerializer(mapper, 53);
+ HeterogeneousLuceneSerializer mapper = new HeterogeneousLuceneSerializer();
+ Document doc = SerializerTestHelper.invokeSerializer(mapper, 53,
+ new String[] {LuceneService.REGION_VALUE_FIELD});
assertEquals(1, doc.getFields().size());
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/serializer/PdxFieldMapperJUnitTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/serializer/PdxFieldMapperJUnitTest.java
index eacc314..e31f14d 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/serializer/PdxFieldMapperJUnitTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/serializer/PdxFieldMapperJUnitTest.java
@@ -34,7 +34,7 @@ public class PdxFieldMapperJUnitTest {
@Test
public void testWriteFields() {
String[] fields = new String[] {"s", "i"};
- PdxLuceneSerializer mapper = new PdxLuceneSerializer(fields);
+ PdxLuceneSerializer mapper = new PdxLuceneSerializer();
PdxInstance pdxInstance = mock(PdxInstance.class);
@@ -43,7 +43,7 @@ public class PdxFieldMapperJUnitTest {
when(pdxInstance.getField("s")).thenReturn("a");
when(pdxInstance.getField("i")).thenReturn(5);
- Document doc = invokeSerializer(mapper, pdxInstance);
+ Document doc = invokeSerializer(mapper, pdxInstance, fields);
assertEquals(2, doc.getFields().size());
assertEquals("a", doc.getField("s").stringValue());
@@ -53,7 +53,7 @@ public class PdxFieldMapperJUnitTest {
@Test
public void testIgnoreMissing() {
String[] fields = new String[] {"s", "i", "s2", "o"};
- PdxLuceneSerializer mapper = new PdxLuceneSerializer(fields);
+ PdxLuceneSerializer mapper = new PdxLuceneSerializer();
PdxInstance pdxInstance = mock(PdxInstance.class);
@@ -66,7 +66,7 @@ public class PdxFieldMapperJUnitTest {
when(pdxInstance.getField("o")).thenReturn(new Object());
when(pdxInstance.getField("o2")).thenReturn(new Object());
- Document doc = invokeSerializer(mapper, pdxInstance);
+ Document doc = invokeSerializer(mapper, pdxInstance, fields);
assertEquals(2, doc.getFields().size());
assertEquals("a", doc.getField("s").stringValue());
@@ -76,7 +76,7 @@ public class PdxFieldMapperJUnitTest {
@Test
public void testNullField() {
String[] fields = new String[] {"s", "i"};
- PdxLuceneSerializer mapper = new PdxLuceneSerializer(fields);
+ PdxLuceneSerializer mapper = new PdxLuceneSerializer();
PdxInstance pdxInstance = mock(PdxInstance.class);
@@ -85,7 +85,7 @@ public class PdxFieldMapperJUnitTest {
when(pdxInstance.getField("s")).thenReturn("a");
when(pdxInstance.getField("i")).thenReturn(null);
- Document doc = invokeSerializer(mapper, pdxInstance);
+ Document doc = invokeSerializer(mapper, pdxInstance, fields);
assertEquals(1, doc.getFields().size());
assertEquals("a", doc.getField("s").stringValue());
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/serializer/ReflectionFieldMapperJUnitTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/serializer/ReflectionFieldMapperJUnitTest.java
index 2b6c29e..197be43 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/serializer/ReflectionFieldMapperJUnitTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/serializer/ReflectionFieldMapperJUnitTest.java
@@ -39,7 +39,7 @@ public class ReflectionFieldMapperJUnitTest {
Type1 type1 = new Type1("a", 1, 2L, 3.0, 4.0f);
Type2 type2 = new Type2("a", 1, 2L, 3.0, 4.0f, "b");
- Document doc1 = invokeSerializer(mapper1, type1);
+ Document doc1 = invokeSerializer(mapper1, type1, allFields);
assertEquals(5, doc1.getFields().size());
assertEquals("a", doc1.getField("s").stringValue());
@@ -48,7 +48,7 @@ public class ReflectionFieldMapperJUnitTest {
assertEquals(3.0, doc1.getField("d").numericValue());
assertEquals(4.0f, doc1.getField("f").numericValue());
- Document doc2 = invokeSerializer(mapper2, type2);
+ Document doc2 = invokeSerializer(mapper2, type2, allFields);
assertEquals(6, doc2.getFields().size());
assertEquals("a", doc2.getField("s").stringValue());
@@ -67,7 +67,7 @@ public class ReflectionFieldMapperJUnitTest {
Type2 type2 = new Type2("a", 1, 2L, 3.0, 4.0f, "b");
- Document doc = invokeSerializer(mapper, type2);
+ Document doc = invokeSerializer(mapper, type2, fields);
assertEquals(2, doc.getFields().size());
assertEquals("a", doc.getField("s").stringValue());
@@ -82,7 +82,7 @@ public class ReflectionFieldMapperJUnitTest {
Type2 type2 = new Type2("a", 1, 2L, 3.0, 4.0f, null);
- Document doc = invokeSerializer(mapper, type2);
+ Document doc = invokeSerializer(mapper, type2, fields);
assertEquals(1, doc.getFields().size());
assertEquals("a", doc.getField("s").stringValue());
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/serializer/SerializerTestHelper.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/serializer/SerializerTestHelper.java
index 3f5e8d7..4ef06f4 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/serializer/SerializerTestHelper.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/serializer/SerializerTestHelper.java
@@ -19,12 +19,15 @@ import static org.junit.Assert.assertEquals;
import java.util.Collection;
import org.apache.lucene.document.Document;
-
+import org.mockito.Mockito;
+import org.apache.geode.cache.lucene.LuceneIndex;
import org.apache.geode.cache.lucene.LuceneSerializer;
public class SerializerTestHelper {
- static Document invokeSerializer(LuceneSerializer mapper, Object object) {
- Collection<Document> docs = mapper.toDocuments(object);
+ static Document invokeSerializer(LuceneSerializer mapper, Object object, String[] fields) {
+ LuceneIndex index = Mockito.mock(LuceneIndex.class);
+ Mockito.when(index.getFieldNames()).thenReturn(fields);
+ Collection<Document> docs = mapper.toDocuments(index, object);
assertEquals(1, docs.size());
return docs.iterator().next();
}
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/test/LuceneTestSerializer.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/test/LuceneTestSerializer.java
index 7466b7a..0f2e86c 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/test/LuceneTestSerializer.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/test/LuceneTestSerializer.java
@@ -15,6 +15,7 @@
package org.apache.geode.cache.lucene.test;
import org.apache.geode.cache.Declarable;
+import org.apache.geode.cache.lucene.LuceneIndex;
import org.apache.geode.cache.lucene.LuceneSerializer;
import org.apache.geode.internal.cache.xmlcache.Declarable2;
import org.apache.lucene.document.Document;
@@ -59,7 +60,7 @@ public class LuceneTestSerializer implements LuceneSerializer {
}
@Override
- public Collection<Document> toDocuments(Object value) {
+ public Collection<Document> toDocuments(LuceneIndex index, Object value) {
return Collections.emptyList();
}
}
--
To stop receiving notification emails like this one, please contact
['"commits@geode.apache.org" <co...@geode.apache.org>'].