[ https://issues.apache.org/jira/browse/GEODE-8405?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17337644#comment-17337644 ]
ASF GitHub Bot commented on GEODE-8405: --------------------------------------- gaussianrecurrence commented on pull request #800: URL: https://github.com/apache/geode-native/pull/800#issuecomment-830420598 I wonder if it's best to add this behaviour to enqueueForMetadataRefresh instead. Maybe that function could be refactored, so instead of accepting the full path, it accepts the region object. This way it can be check if the region is partitioned or replicated. And if replicated, then don't add the request to the queue. -- 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 asks for metadata for replicated region, causes server exception > ------------------------------------------------------------------------------ > > Key: GEODE-8405 > URL: https://issues.apache.org/jira/browse/GEODE-8405 > Project: Geode > Issue Type: Bug > Components: native client > Reporter: Blake Bender > Priority: Major > Labels: pull-request-available > > For some reason, Geode Native is not checking region attributes on the server > prior to issuing a GET_CLIENT_PR_METADATA message. It does, in fact, get the > region attributes from the server, as you can see from this message dump: > {code:java} > { > "Timestamp": "2020-08-05 15:37:42.595294", > "Connection": "0x7fb1f89042d0", > "Direction": "--->", > "Type": "GET_CLIENT_PARTITION_ATTRIBUTES", > "Length": 22, > "Parts": 1, > "TransactionId": -1, > "SecurityFlag": 0, > "RegionPart": { > "Size": 17, > "IsObject": 0, > "Name": "/example_userinfo" > } > } > ,{ > "Timestamp": "15:37:42.595590", > "Connection": "0", > "Direction": "<---", > "Type": "RESPONSE_CLIENT_PARTITION_ATTRIBUTES", > "Length": 35, > "Parts": 2, > "TransactionId": -1, > "SecurityFlag": 0, > "BucketCount": { > "Size": 5, > "IsObject": 1, > "Data":{ > "DSCode": "CacheableInt32", > "Value": -1 > } > }, > "ColocatedWith": { > "Size": 20, > "IsObject": 1, > "Data":{ > "DSCode": "CacheableASCIIString", > "StringLength": 17, > "Value": "/example_userinfo" > } > } > } > {code} > > The critical value here is `BucketCount` in the > `RESPONSE_CLIENT_PARTITION_ATTRIBUTES` message. If this value is -1, the > region is replicated rather than partitioned, and we should not be querying > for PR metadata. > -- This message was sent by Atlassian Jira (v8.3.4#803005)