You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Darrel Schneider (JIRA)" <ji...@apache.org> on 2016/09/20 18:45:20 UTC
[jira] [Commented] (GEODE-1900) Missing update (subsctiption) event
with partitioned region during bucket rebalance.
[ https://issues.apache.org/jira/browse/GEODE-1900?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15507406#comment-15507406 ]
Darrel Schneider commented on GEODE-1900:
-----------------------------------------
The actual test lines that need to be added are:
{noformat}
@Test
public void testUpdateSubscriptionEventsWithOffheapPrWhileBucketRegionIsDestroyed()
{ testSubscriptionEventsWhenBucketRegionIsDestroyed(true, forop.UPDATE); }
@Test
public void testUpdateSubscriptionEventsWithPrWhileBucketRegionIsDestroyed()
{ testSubscriptionEventsWhenBucketRegionIsDestroyed(false, forop.UPDATE); }
{noformat}
> Missing update (subsctiption) event with partitioned region during bucket rebalance.
> ------------------------------------------------------------------------------------
>
> Key: GEODE-1900
> URL: https://issues.apache.org/jira/browse/GEODE-1900
> Project: Geode
> Issue Type: Bug
> Components: regions
> Reporter: Anilkumar Gingade
>
> Similar to GEODE-1885...In this case the issue is with update and with both offheap and non-offheap regions.
> During transaction operation, if there is concurrent redundant bucket re-balance is in progress, the client can miss update event, if its primary queue is hosted on the node where bucket gets moved from.
> Consider, three node cluster N1, N2 and N3. With:
> Client C1 connected to node N2.
> Primary bucket region B1 on N1. And secondary bucket for B1 on N2.
> A Transaction is started on N2, which updates an entry on B1.
> When the TX is committed. At the same time the Bucket B1 on N2 is moved to N3.
> The Tx commit message from N1 is sent to N2. This also includes the subscription message, satisfying the client C1.
> On N2, for offheap region, when bucket is not found locally, the exception response is sent to back to N1 without processing the subscription message.
> How to reproduce:
> Add following tests/lines in ClientServerTransactionDUnitTest:
> public void testUpdateSubscriptionEventsWithOffheapPrWhileBucketRegionIsDestroyed() { testSubscriptionEventsWithOffheapPrWhenBucketRegionIsDestroyed(forop.UPDATE);
> }
> public void testUpdateSubscriptionEventsWithPrWhileBucketRegionIsDestroyed() {
> testSubscriptionEventsWhenBucketRegionIsDestroyed(false, forop.UPDATE);
> }
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)