> On Jan. 25, 2017, 9:59 p.m., Dan Smith wrote: > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/IndexRepositoryFactory.java, > > line 64 > > <https://reviews.apache.org/r/55956/diff/1/?file=1615354#file1615354line64> > > > > This may somehow need to be synchronized with the cleanup code, to > > handle race conditions where we lose the primary status in the middle of > > this code. > > > > Maybe add all of these tasks to an a thread pool with a single thread? > > If you do that, make sure the thread pool is fair and garuantees the tasks > > will be executed in order.
I'll create a new ticket for this as it may have a bigger impact and require more tests/testing. - Jason ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/55956/#review163019 ----------------------------------------------------------- On Jan. 27, 2017, 7:05 a.m., Jason Huynh wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/55956/ > ----------------------------------------------------------- > > (Updated Jan. 27, 2017, 7:05 a.m.) > > > Review request for geode, Barry Oglesby, nabarun nag, Dan Smith, and xiaojian > zhou. > > > Repository: geode > > > Description > ------- > > Added afterSecondary callback to partition listener to allow cleaning up of > the index repo when the bucket losses primary > Added lock prior to creating the bucket indexes to prevent multiple index > writers from being available at a time > Changed single point of lucene index creation, no longer creating on the fly > > > Diffs > ----- > > > geode-core/src/main/java/org/apache/geode/cache/partition/PartitionListener.java > a534e50 > geode-core/src/main/java/org/apache/geode/internal/cache/BucketAdvisor.java > 7b79bfb > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/AbstractPartitionedRepositoryManager.java > aa29e1b > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/IndexRepositoryFactory.java > c73d64a > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneEventListener.java > f2c7c8f > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LucenePrimaryBucketListener.java > d17b5f2 > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneQueryImpl.java > 77333d4 > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/RawIndexRepositoryFactory.java > 2afccf9 > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/RawLuceneRepositoryManager.java > 64f2e56 > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/distributed/LuceneFunction.java > ec94469 > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/repository/IndexRepositoryImpl.java > 4e86eb5 > > geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/PartitionedRepositoryManagerJUnitTest.java > 960d794 > > geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/RawLuceneRepositoryManagerJUnitTest.java > 9201180 > > geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/distributed/DistributedScoringJUnitTest.java > 225f6ac > > geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/distributed/LuceneFunctionJUnitTest.java > 71172f0 > > geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/repository/IndexRepositoryImplJUnitTest.java > 7426fa5 > > Diff: https://reviews.apache.org/r/55956/diff/ > > > Testing > ------- > > geode-lucene:precheckin > > > Thanks, > > Jason Huynh > >