[
https://issues.apache.org/jira/browse/CASSANDRA-13632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andrew Whang updated CASSANDRA-13632:
-------------------------------------
Fix Version/s: 3.0.14
Status: Patch Available (was: Open)
https://github.com/whangsf/cassandra/commit/0efb32db3eaf76229c53451f2fc3ab85693a76bd
> Digest mismatch if (non-static) column is null
> ----------------------------------------------
>
> Key: CASSANDRA-13632
> URL: https://issues.apache.org/jira/browse/CASSANDRA-13632
> Project: Cassandra
> Issue Type: Bug
> Components: Local Write-Read Paths
> Reporter: Andrew Whang
> Fix For: 3.0.14
>
>
> This issue is similar to CASSANDRA-12090. Quorum read queries that include a
> column selector (non-wildcard) result in digest mismatch when the column
> value is null. It seems the data serialization path checks if
> rowIterator.isEmpty() and if so ignores column names (by setting IS_EMPTY
> flag). However, the digest serialization path does not perform this check and
> includes column names. The digest comparison results in a mismatch. The
> mismatch does not end up issuing a read repair mutation since the underlying
> data is the same.
> Our use case involves frequent deletion of partition columns, so the mismatch
> on the read path ends up doubling our p99 read latency. We discovered this
> issue while testing a 2.2.5 to 3.0.13 upgrade.
> One thing to note is that we're using thrift, which ends up handling the
> ColumnFilter differently than the CQL path.
> As with CASSANDRA-12090, fixing the digest seems sensible.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]