Write into the partitioned region in BucketTargetingMap

Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/f4d96fda
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/f4d96fda
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/f4d96fda

Branch: refs/heads/feature/GEODE-2402
Commit: f4d96fdad9817859badc0bc70210a9fc09d622f5
Parents: 988bf04
Author: Dan Smith <upthewatersp...@apache.org>
Authored: Thu Feb 16 17:25:45 2017 -0800
Committer: Dan Smith <upthewatersp...@apache.org>
Committed: Thu Feb 16 17:26:29 2017 -0800

----------------------------------------------------------------------
 .../geode/cache/lucene/internal/IndexRepositoryFactory.java   | 6 +++---
 .../cache/lucene/internal/partition/BucketTargetingMap.java   | 5 ++---
 .../internal/PartitionedRepositoryManagerJUnitTest.java       | 6 ++----
 .../lucene/internal/partition/BucketTargetingMapTest.java     | 7 ++++---
 4 files changed, 11 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/geode/blob/f4d96fda/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/IndexRepositoryFactory.java
----------------------------------------------------------------------
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 7e685b7..b520926 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
@@ -80,8 +80,8 @@ public class IndexRepositoryFactory {
 
     final IndexRepository repo;
     try {
-      RegionDirectory dir = new 
RegionDirectory(getBucketTargetingMap(fileBucket, bucketId),
-          getBucketTargetingMap(chunkBucket, bucketId), 
indexForPR.getFileSystemStats());
+      RegionDirectory dir = new 
RegionDirectory(getBucketTargetingMap(fileRegion, bucketId),
+          getBucketTargetingMap(chunkRegion, bucketId), 
indexForPR.getFileSystemStats());
       IndexWriterConfig config = new 
IndexWriterConfig(indexForPR.getAnalyzer());
       IndexWriter writer = new IndexWriter(dir, config);
       repo = new IndexRepositoryImpl(fileBucket, writer, serializer, 
indexForPR.getIndexStats(),
@@ -100,7 +100,7 @@ public class IndexRepositoryFactory {
 
   }
 
-  private Map getBucketTargetingMap(BucketRegion region, int bucketId) {
+  private Map getBucketTargetingMap(PartitionedRegion region, int bucketId) {
     return new BucketTargetingMap(region, bucketId);
   }
 

http://git-wip-us.apache.org/repos/asf/geode/blob/f4d96fda/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/partition/BucketTargetingMap.java
----------------------------------------------------------------------
diff --git 
a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/partition/BucketTargetingMap.java
 
b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/partition/BucketTargetingMap.java
index 19fb4dc..e2467ac 100644
--- 
a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/partition/BucketTargetingMap.java
+++ 
b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/partition/BucketTargetingMap.java
@@ -17,7 +17,6 @@ package org.apache.geode.cache.lucene.internal.partition;
 import org.apache.geode.cache.EntryExistsException;
 import org.apache.geode.cache.EntryNotFoundException;
 import org.apache.geode.cache.Region;
-import org.apache.geode.internal.cache.BucketRegion;
 import org.apache.geode.internal.cache.LocalDataSet;
 import org.apache.geode.internal.cache.PartitionedRegion;
 
@@ -30,9 +29,9 @@ public class BucketTargetingMap<K, V> extends AbstractMap<K, 
V> {
   private final Region<K, V> region;
   public Object callbackArg;
 
-  public BucketTargetingMap(BucketRegion region, int bucketId) {
+  public BucketTargetingMap(PartitionedRegion region, int bucketId) {
     this.callbackArg = bucketId;
-    this.region = region;
+    this.region = new LocalDataSet(region, Collections.singleton(bucketId));
   }
 
   @Override

http://git-wip-us.apache.org/repos/asf/geode/blob/f4d96fda/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/PartitionedRepositoryManagerJUnitTest.java
----------------------------------------------------------------------
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 9c603c7..6b54f72 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
@@ -241,9 +241,9 @@ public class PartitionedRepositoryManagerJUnitTest {
   protected void checkRepository(IndexRepositoryImpl repo0, int bucketId) {
     IndexWriter writer0 = repo0.getWriter();
     RegionDirectory dir0 = (RegionDirectory) writer0.getDirectory();
-    assertEquals(new BucketTargetingMap(fileBuckets.get(bucketId), bucketId),
+    assertEquals(new BucketTargetingMap(fileRegion, bucketId),
         dir0.getFileSystem().getFileRegion());
-    assertEquals(new BucketTargetingMap(chunkBuckets.get(bucketId), bucketId),
+    assertEquals(new BucketTargetingMap(chunkRegion, bucketId),
         dir0.getFileSystem().getChunkRegion());
     assertEquals(serializer, repo0.getSerializer());
   }
@@ -253,9 +253,7 @@ public class PartitionedRepositoryManagerJUnitTest {
     BucketRegion fileBucket = Mockito.mock(BucketRegion.class);
     // Allowing the fileBucket to behave like a map so that the IndexWriter 
operations don't fail
     Fakes.addMapBehavior(fileBucket);
-    when(fileBucket.getFullPath()).thenReturn("File" + id);
     BucketRegion chunkBucket = Mockito.mock(BucketRegion.class);
-    when(chunkBucket.getFullPath()).thenReturn("Chunk" + id);
     when(mockBucket.getId()).thenReturn(id);
     when(userRegion.getBucketRegion(eq(id), eq(null))).thenReturn(mockBucket);
     when(userDataStore.getLocalBucketById(eq(id))).thenReturn(mockBucket);

http://git-wip-us.apache.org/repos/asf/geode/blob/f4d96fda/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/partition/BucketTargetingMapTest.java
----------------------------------------------------------------------
diff --git 
a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/partition/BucketTargetingMapTest.java
 
b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/partition/BucketTargetingMapTest.java
index 8850f45..468fd04 100644
--- 
a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/partition/BucketTargetingMapTest.java
+++ 
b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/partition/BucketTargetingMapTest.java
@@ -21,7 +21,6 @@ import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
-import org.apache.geode.internal.cache.BucketRegion;
 import org.apache.geode.internal.cache.PartitionedRegion;
 import org.apache.geode.test.junit.categories.IntegrationTest;
 import org.apache.geode.test.junit.categories.UnitTest;
@@ -33,12 +32,14 @@ import org.mockito.Mock;
 @Category(UnitTest.class)
 public class BucketTargetingMapTest {
 
-  private BucketRegion region;
+  private PartitionedRegion region;
 
   @Before
   public void initMocks() {
-    region = mock(BucketRegion.class);
+    region = mock(PartitionedRegion.class);
     final BucketTargetingResolver resolver = new BucketTargetingResolver();
+    when(region.getPartitionResolver()).thenReturn(resolver);
+    when(region.getTotalNumberOfBuckets()).thenReturn(5);
   }
 
   @Test

Reply via email to