[ https://issues.apache.org/jira/browse/CASSANDRA-15350?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16962289#comment-16962289 ]
Yifan Cai edited comment on CASSANDRA-15350 at 11/11/19 11:51 PM: ------------------------------------------------------------------ ||Branch||Diff||Tests||PR|| |[cas-exception-changes|https://github.com/yifan-c/cassandra/tree/cas-exception-changes]|[diff|https://github.com/apache/cassandra/compare/trunk...yifan-c:cas-exception-changes]|[tests|https://circleci.com/workflow-run/67f7d98f-5c2b-4b2c-9fd7-120862e554e7]|[PR|https://github.com/apache/cassandra/pull/379]| Changes: # Added {{CasWriteTimeoutException}} and {{CasWriteUncertaintyException}} # Added {{encode}}/{{decode}}/{{encodeSize}} for the new exceptions. Test cases added in ErrorMessageTest # Modified {{MessageFilters}} in dtest to support constructing CAS scenario. # Added CasWriteTest. # Minor changes ** -Calculate the exact UTF-8 string byte size in CBUtil to reduce unnecessary memory allocation, (over-estimating with utf8MaxBytes)- ** Corrected {{assertRows}} parameters sequence ** Moved {{DatabaseDescriptor}} initialization for dtest to test base class. was (Author: yifanc): ||Branch||Diff||Tests||PR|| |[cas-exception-changes|https://github.com/yifan-c/cassandra/tree/cas-exception-changes]|[diff|https://github.com/apache/cassandra/compare/trunk...yifan-c:cas-exception-changes]|[tests|https://circleci.com/workflow-run/67f7d98f-5c2b-4b2c-9fd7-120862e554e7]|[PR|https://github.com/apache/cassandra/pull/379]| Changes: # Added {{CasWriteTimeoutException}} and {{CasWriteUncertaintyException}} # Added {{encode}}/{{decode}}/{{encodeSize}} for the new exceptions. Test cases added in ErrorMessageTest # Modified {{MessageFilters}} in dtest to support constructing CAS scenario. # Added CasWriteTest. # Minor changes ** Calculate the exact UTF-8 string byte size in CBUtil to reduce unnecessary memory allocation, (over-estimating with utf8MaxBytes) ** Corrected {{assertRows}} parameters sequence ** Moved {{DatabaseDescriptor}} initialization for dtest to test base class. > Add CAS “uncertainty” and “contention" messages that are currently propagated > as a WriteTimeoutException. > --------------------------------------------------------------------------------------------------------- > > Key: CASSANDRA-15350 > URL: https://issues.apache.org/jira/browse/CASSANDRA-15350 > Project: Cassandra > Issue Type: Improvement > Components: Feature/Lightweight Transactions > Reporter: Alex Petrov > Assignee: Yifan Cai > Priority: Normal > Labels: protocolv5, pull-request-available > Attachments: Utf8StringEncodeBench.java > > Time Spent: 20m > Remaining Estimate: 0h > > Right now, CAS uncertainty introduced in > https://issues.apache.org/jira/browse/CASSANDRA-6013 is propagating as > WriteTimeout. One of this conditions it manifests is when there’s at least > one acceptor that has accepted the value, which means that this value _may_ > still get accepted during the later round, despite the proposer failure. > Similar problem happens with CAS contention, which is also indistinguishable > from the “regular” timeout, even though it is visible in metrics correctly. -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org