You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geode.apache.org by Dan Smith <ds...@pivotal.io> on 2015/09/22 23:30:34 UTC
Review Request 38647: Changing how PartitionRepositoryManager handles
destroyed buckets
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/38647/
-----------------------------------------------------------
Review request for geode, Ashvin A and xiaojian zhou.
Repository: geode
Description
-------
Changing how PartitionRepositoryManager handles destroyed buckets
This class was using a weak hash map with BucketRegions as keys. Instead
of that, use the bucket id as the key. I added support to
IndexRepository for the repository to indicate if the underlying
BucketRegion has been destroyed. If the IndexRepository is destroyed, we
will create a new IndexRepository in PartitionRepositoryManager.
Also, fixing CopyOnWriteHashMap.putIfAbsent.
This method was putting a null in the map instead of the new value if no
old value was present.
Adding a unit test for CopyOnWriteHashMap, adapted from the JSR166 test
case for ConcurrentHashMap.
Diffs
-----
gemfire-core/src/main/java/com/gemstone/gemfire/internal/util/concurrent/CopyOnWriteHashMap.java d6f4c6f261c43673f7f6c7cd78935dee7a02f535
gemfire-core/src/test/java/com/gemstone/gemfire/internal/util/concurrent/CopyOnWriteHashMapJUnitTest.java PRE-CREATION
gemfire-lucene/src/main/java/com/gemstone/gemfire/cache/lucene/internal/PartitionedRepositoryManager.java e3014822f2a416ad457bc28040e0ef67cfe0aca0
gemfire-lucene/src/main/java/com/gemstone/gemfire/cache/lucene/internal/repository/IndexRepository.java 549bf215d611c7a4632f10d3e420c24ec7359495
gemfire-lucene/src/main/java/com/gemstone/gemfire/cache/lucene/internal/repository/IndexRepositoryImpl.java 5c248cf872b61177a9073b4c3c56aa81c174b55a
gemfire-lucene/src/test/java/com/gemstone/gemfire/cache/lucene/internal/PartitionedRepositoryManagerJUnitTest.java db1085a5cebb06b725d10f448c8dfa7f5a05de94
gemfire-lucene/src/test/java/com/gemstone/gemfire/cache/lucene/internal/repository/IndexRepositoryImplJUnitTest.java 0b4a4cd48366f4870f5426613637ec8a373f4592
Diff: https://reviews.apache.org/r/38647/diff/
Testing
-------
Thanks,
Dan Smith
Re: Review Request 38647: Changing how PartitionRepositoryManager
handles destroyed buckets
Posted by Ashvin A <aa...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/38647/#review100073
-----------------------------------------------------------
Ship it!
Ship It!
- Ashvin A
On Sept. 22, 2015, 9:30 p.m., Dan Smith wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/38647/
> -----------------------------------------------------------
>
> (Updated Sept. 22, 2015, 9:30 p.m.)
>
>
> Review request for geode, Ashvin A and xiaojian zhou.
>
>
> Repository: geode
>
>
> Description
> -------
>
> Changing how PartitionRepositoryManager handles destroyed buckets
>
> This class was using a weak hash map with BucketRegions as keys. Instead
> of that, use the bucket id as the key. I added support to
> IndexRepository for the repository to indicate if the underlying
> BucketRegion has been destroyed. If the IndexRepository is destroyed, we
> will create a new IndexRepository in PartitionRepositoryManager.
>
> Also, fixing CopyOnWriteHashMap.putIfAbsent.
>
> This method was putting a null in the map instead of the new value if no
> old value was present.
>
> Adding a unit test for CopyOnWriteHashMap, adapted from the JSR166 test
> case for ConcurrentHashMap.
>
>
> Diffs
> -----
>
> gemfire-core/src/main/java/com/gemstone/gemfire/internal/util/concurrent/CopyOnWriteHashMap.java d6f4c6f261c43673f7f6c7cd78935dee7a02f535
> gemfire-core/src/test/java/com/gemstone/gemfire/internal/util/concurrent/CopyOnWriteHashMapJUnitTest.java PRE-CREATION
> gemfire-lucene/src/main/java/com/gemstone/gemfire/cache/lucene/internal/PartitionedRepositoryManager.java e3014822f2a416ad457bc28040e0ef67cfe0aca0
> gemfire-lucene/src/main/java/com/gemstone/gemfire/cache/lucene/internal/repository/IndexRepository.java 549bf215d611c7a4632f10d3e420c24ec7359495
> gemfire-lucene/src/main/java/com/gemstone/gemfire/cache/lucene/internal/repository/IndexRepositoryImpl.java 5c248cf872b61177a9073b4c3c56aa81c174b55a
> gemfire-lucene/src/test/java/com/gemstone/gemfire/cache/lucene/internal/PartitionedRepositoryManagerJUnitTest.java db1085a5cebb06b725d10f448c8dfa7f5a05de94
> gemfire-lucene/src/test/java/com/gemstone/gemfire/cache/lucene/internal/repository/IndexRepositoryImplJUnitTest.java 0b4a4cd48366f4870f5426613637ec8a373f4592
>
> Diff: https://reviews.apache.org/r/38647/diff/
>
>
> Testing
> -------
>
>
> Thanks,
>
> Dan Smith
>
>