[ https://issues.apache.org/jira/browse/CASSANDRA-16415?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17281934#comment-17281934 ]
Jacek Lewandowski commented on CASSANDRA-16415: ----------------------------------------------- So, the problem was not visible, but it unfortunately affects 4.0 as well (in terms of upgrading from 3). It is not critical though. The problem is still the same - {{ColumnFilter}} is buggy. Its structure and interpretation has changed in 3.0.14 (I guess), 3.4 and 4.0 significantly. Although we try to apply some adjustments while sending it to older nodes / receiving it from older nodes, there are some features which are not available for older nodes. For example, fetch all regular columns and only queried static columns, while there is only a subset of queried regular columns - there is no way to convert the filter for 3.11 or 3.0 so that it gets interpreted in the same way as on 4.0, and thus, the data read on 4.0 will be different to the data read on 3.11 or 3.0, and therefore, the digest will be different as well. The differences are mostly with regard to which cells has skipped values and which cells are removed at all from the results I'm going to add extra flag to {{ColumnFilter}} in 4.0, which will be set if there are 3.4+ nodes in the cluster, so that the filter can be interpreted on 4.0 in the most efficient way that is also available on 3.4+ nodes. Where there are < 3.4 nodes in the cluster, it is enough to set {{queried}} columns to null (as we try to do now). > Broken test mixedModeReadColumnSubsetDigestCheck - > org.apache.cassandra.distributed.upgrade.MixedModeReadTest > ------------------------------------------------------------------------------------------------------------- > > Key: CASSANDRA-16415 > URL: https://issues.apache.org/jira/browse/CASSANDRA-16415 > Project: Cassandra > Issue Type: Bug > Components: Consistency/Coordination, Test/dtest/java > Reporter: Yifan Cai > Assignee: Jacek Lewandowski > Priority: Normal > Fix For: 3.11.x, 4.0-beta > > Time Spent: 10m > Remaining Estimate: 0h > > The test has been failing and can always be reproduced in the recent CI. > Stack trace: > {code:java} > junit.framework.AssertionFailedError: Found Digest Mismatch > at > org.apache.cassandra.distributed.upgrade.MixedModeReadTest.checkTraceForDigestMismatch(MixedModeReadTest.java:89) > at > org.apache.cassandra.distributed.upgrade.MixedModeReadTest.lambda$mixedModeReadColumnSubsetDigestCheck$0(MixedModeReadTest.java:63) > at > org.apache.cassandra.distributed.upgrade.UpgradeTestBase$TestCase.run(UpgradeTestBase.java:171) > at > org.apache.cassandra.distributed.upgrade.MixedModeReadTest.mixedModeReadColumnSubsetDigestCheck(MixedModeReadTest.java:76) > {code} > The initial investigation shows that > * The test only fails in the setup phase of > mixedModeReadColumnSubsetDigestCheck. The cluster version is > *Versions.Major.v3X* > * The test failure is likely a consequence of CASSANDRA-15962. After > dropping the commit in branch cassandra-3.11 and rebuild the dtest jar, the > upgrade test can pass. Meanwhile, dropping the other commits does not help. -- 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