> On Feb. 2, 2017, 10:45 p.m., Jason Huynh wrote: > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneBucketListener.java, > > line 58 > > <https://reviews.apache.org/r/56244/diff/1/?file=1622552#file1622552line58> > > > > Should we create a ticket to change this to a specific list of > > exceptions we may be expecting?
should this be similar to the behaviour of afterPrimary ? try { lucenePartitionRepositoryManager.computeRepository(bucketId); } catch (BucketNotFoundException e) { logger.warn( "Index repository could not be created when index chunk region bucket became primary. " + "Deferring index repository to be created lazily during lucene query execution." + e); } - nabarun ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/56244/#review164038 ----------------------------------------------------------- On Feb. 2, 2017, 10:32 p.m., nabarun nag wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/56244/ > ----------------------------------------------------------- > > (Updated Feb. 2, 2017, 10:32 p.m.) > > > Review request for geode, Barry Oglesby, Jason Huynh, Lynn Hughes-Godfrey, > Dan Smith, and xiaojian zhou. > > > Repository: geode > > > Description > ------- > > Design key points: > ================== > 1. The afterPrimary and afterSecondary calls from the chunk bucket pass > through the same critical section > 2. If the bucket is still primary it will attempt to acquire a Dlock on the > bucket and create the index repo. > 3. The primary call tries for 5 seconds to acquire the Dlock and then checks > if it is still primary. If it is, it will retry to acquire the lock. If it > turned into a secondary it will exit the critical section. It is assumed that > the after secondary call will do the cleanup. > 4. The afterSecondary call will simply do the clean up - close the writer, > release locks, undo contributions to the lucene stats. > 5. Also, in a situation when index creation fails during after primary, > lucene query execution will try to recompute the index once again. > > > Diffs > ----- > > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/AbstractPartitionedRepositoryManager.java > 9e055f0 > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/IndexRepositoryFactory.java > 5be17e3 > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneBucketListener.java > da0c2c2 > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneQueryImpl.java > 0e8bb37 > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/PartitionedRepositoryManager.java > 2f87218 > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/RawIndexRepositoryFactory.java > 2f61913 > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/RawLuceneRepositoryManager.java > b503692 > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/directory/RegionDirectory.java > e43b60b > > geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/distributed/LuceneFunction.java > 5271a2f > > geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/PartitionedRepositoryManagerJUnitTest.java > 1c47e89 > > geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/RawLuceneRepositoryManagerJUnitTest.java > a9fb52b > > geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/directory/RegionDirectoryJUnitTest.java > 4204204 > > geode-lucene/src/test/java/org/apache/geode/cache/lucene/test/IndexRepositorySpy.java > d3b1f2f > > Diff: https://reviews.apache.org/r/56244/diff/ > > > Testing > ------- > > * Lucene precheck successfull > * Hydra failures are imminent - work ongoing on EOF + rebalance exceptions > > > Thanks, > > nabarun nag > >