----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/58813/#review173766 -----------------------------------------------------------
geode-core/src/main/java/org/apache/geode/internal/cache/DistributedRegion.java Lines 2314 (patched) <https://reviews.apache.org/r/58813/#comment246803> I think this code uses a bit more work. If we get here then we should return with this value without calling "endPut" or "recordMiss". I think the comment you moved to lines 2348-2349 should be here right before you call updateEventWithCurrentRegionEntry. Don't return re from this method; just make it return void. Right after you call it calculate and return result. I think you should refactor lines 2329-2333 into a little method that we can call here and on line 2334. Get rid of the "result" local var and instead just call this method like so: return determineResult(preferCD, event); private Object determineResult(boolean preferCD, EntryEventImpl event) { if (preferCD) { return event.getRawNewValueAsHeapObject(); } return event.getNewValue(); } - Darrel Schneider On May 2, 2017, 5:52 p.m., anilkumar gingade wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/58813/ > ----------------------------------------------------------- > > (Updated May 2, 2017, 5:52 p.m.) > > > Review request for geode, Darrel Schneider, Eric Shu, and Lynn Gallinat. > > > Repository: geode > > > Description > ------- > > When client does a get() which results in adding an entry by calling loader > on server side, the client event returned back is not updated with the > version tag that is created with the new entry on server. This results in > client having a different version tag than the server side entry. If client > has registered event, and is concurrently updating the entry (from get() call > and an register-event from server), it could result in data consistency > between client and server. > > > Diffs > ----- > > > geode-core/src/main/java/org/apache/geode/internal/cache/DistributedRegion.java > 8cdc517 > > geode-core/src/test/java/org/apache/geode/internal/cache/DistributedRegionSearchLoadJUnitTest.java > PRE-CREATION > > > Diff: https://reviews.apache.org/r/58813/diff/3/ > > > Testing > ------- > > Manual testing. > Running new unit test (added) with and without changes. > precheckin in progress. > > > Thanks, > > anilkumar gingade > >