[ 
https://issues.apache.org/jira/browse/CASSANDRA-21462?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18099898#comment-18099898
 ] 

Jon Haddad commented on CASSANDRA-21462:
----------------------------------------

I should mention, the randomized test classes 
(RandomDifferentialCompactionTest, BtiRandomDifferentialCompactionTest) don't 
hardcode their example count or seed — both are read from system properties 
with sane small defaults, so they run fast in normal CI but can be scaled way 
up for a dedicated bug hunt:
 * -Dcassandra.test.differential.examples=N — how many random schema+workload 
examples to generate and run (default 10). Each example is a fresh random 
schema (via QuickTheories) and a fresh random multi-round mutation workload 
against it, compacted through both the iterator and cursor paths and compared 
byte-for-byte.
 * -Dcassandra.test.differential.seed=N — pins the run to a single specific 
seed as example 0, for reproducing one exact failure instead of soaking.

These are how I've found all the issues in the epic.

> Add byte for byte test harness to detect and resolve cursor deviations from 
> iterator path
> -----------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-21462
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-21462
>             Project: Apache Cassandra
>          Issue Type: Sub-task
>          Components: Local/Compaction
>            Reporter: Jon Haddad
>            Assignee: Jon Haddad
>            Priority: High
>             Fix For: 6.0
>
>
> This issue addresses various deviations and inconsistencies with the cursor 
> path by introducing tests that verify both the old iterator path and the new 
> cursor path generate the same outputs given the same inputs.  It also fixes 
> various issues found in the process of creating this test system that 
> resulted in corruption or incorrect values being carried into the resulting 
> SSTable.
> It adds a test that uses the JVM's internal memory tracking to assert that we 
> do NOT do unnecessary allocations in the cursor path that should guard 
> against future regressions, and fixes an unnecessary enum allocation.
> It does NOT add support for BTI, multi-cell columns, counters, etc.
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to