Jakov Varenina created GEODE-8530:
-------------------------------------

             Summary: Native client crash indicating coredump
                 Key: GEODE-8530
                 URL: https://issues.apache.org/jira/browse/GEODE-8530
             Project: Geode
          Issue Type: Bug
          Components: native client
            Reporter: Jakov Varenina


Faulty scenario:

1. Client initiates transaction.
 2. Client put entry in region1 that has CacheWriter configured
 3. Server CacheWriter receives a notification for region1, and triggers put 
operation to region2 which is not defined on client.
 4. client commit transaction

When client commit transaction it then get region2 enlisted in transaction, 
which is not defined on client and therefore coredump happens.

This scenario works for java client. Java client only ignores region that 
aren't defined on client:
{code:java}
 private boolean hookupRegion(DistributionManager dm) {
      this.internalRegion = getRegionByPath(dm, regionPath);
      if (this.internalRegion == null && this.parentRegionPath != null) {
        this.internalRegion = getRegionByPath(dm, this.parentRegionPath);
        this.regionPath = this.parentRegionPath;
      }
      if (this.internalRegion == null && dm.getSystem().isLoner()) {
        // If there are additional regions that the server enlisted in the tx,
        // which the client does not have, the client can just ignore the region
        // see bug 51922
        return false;
      }
      return true;
    }
{code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to