-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/59404/#review175729
-----------------------------------------------------------




geode-core/src/main/java/org/apache/geode/internal/cache/CreateRegionProcessor.java
Line 250 (original), 252 (patched)
<https://reviews.apache.org/r/59404/#comment249084>

    I think you should get rid of the eventStateLock.
    It seems wrong for you to get the map and do a put instead of just calling 
a single method.
    I also don't like the "instanceof BucketRegion."Just call a new method on 
"lr" named recordPendingEventState that takes the sender and the eventState.
    On LocalRegion this method can do nothing.
    Override it on BucketRegion to synchronize on the remoteEventStates map.



geode-core/src/main/java/org/apache/geode/internal/cache/InitialImageOperation.java
Lines 543 (patched)
<https://reviews.apache.org/r/59404/#comment249086>

    Once again, get rid of 'instanceof BucketRegion' by having a noop method on 
whatever "this.region" is and then override that on BucketRegion.
    
    Also all the code in this if block should be in the method on BucketRegion.
    
    You might also want to do something better than remoteEventStates.clear() 
because if a createRegionReply comes in after this you will store its 
eventState in this BucketRegion and waste memory until this bucket is finally 
destroyed.
    
    Would it be possible to register the processor with the region and have the 
processor store all the pending event states? Then when you finally finish by 
calling recordEventState you could just null out the registered processor.


- Darrel Schneider


On May 19, 2017, 8:38 a.m., Eric Shu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/59404/
> -----------------------------------------------------------
> 
> (Updated May 19, 2017, 8:38 a.m.)
> 
> 
> Review request for geode, anilkumar gingade, Darrel Schneider, and Lynn 
> Gallinat.
> 
> 
> Bugs: GEODE-2939
>     https://issues.apache.org/jira/browse/GEODE-2939
> 
> 
> Repository: geode
> 
> 
> Description
> -------
> 
> Event tracker initilization for bucket region is delayed until after GII, and 
> will be initialized from the GII provider.
> 
> 
> Diffs
> -----
> 
>   geode-core/src/main/java/org/apache/geode/internal/cache/BucketRegion.java 
> 886d678 
>   
> geode-core/src/main/java/org/apache/geode/internal/cache/CreateRegionProcessor.java
>  c1d1e77 
>   geode-core/src/main/java/org/apache/geode/internal/cache/EventTracker.java 
> 2c86aed 
>   
> geode-core/src/main/java/org/apache/geode/internal/cache/InitialImageOperation.java
>  fb5f0cf 
>   
> geode-core/src/test/java/org/apache/geode/internal/cache/EventTrackerDUnitTest.java
>  3faf41f 
> 
> 
> Diff: https://reviews.apache.org/r/59404/diff/1/
> 
> 
> Testing
> -------
> 
> precheckin.
> 
> 
> Thanks,
> 
> Eric Shu
> 
>

Reply via email to