[ https://issues.apache.org/jira/browse/GEODE-8530?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17202169#comment-17202169 ]
ASF GitHub Bot commented on GEODE-8530: --------------------------------------- jvarenina opened a new pull request #656: URL: https://github.com/apache/geode-native/pull/656 Client is fixed in a way that ignores all regions enlisted within transaction that client doesn't have configured. This behavior is aligned with the java client, since same thing is done there. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > 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 > Assignee: Jakov Varenina > Priority: Major > Labels: pull-request-available > > 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)