[
https://issues.apache.org/jira/browse/CASSANDRA-21462?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18102832#comment-18102832
]
Jon Haddad edited comment on CASSANDRA-21462 at 8/7/26 4:28 PM:
----------------------------------------------------------------
[~dnk]
Fixed the temp-directory cleanup: DifferentialCompactionTester now deletes its
per-run scratch directory of captured sstable copies as soon as the
iterator-vs-cursor comparison is done, instead of leaving it for
JVM/CI-agent-level temp cleanup.
Timing for the full suite (14 classes / 68 tests, all green):
||Test class||Tests||Suite time||
|BigVolumeDifferentialCompactionTest|1|17.2s|
|EdgeCaseDifferentialCompactionTest|26|16.5s|
|LargePartitionDifferentialCompactionTest|1|16.1s|
|CursorCompactionAllocationGateTest|8|12.1s|
|PartialSetDifferentialCompactionTest|3|6.2s|
|BasicDifferentialCompactionTest|6|5.3s|
|CursorSupportMatrixTest|9|4.6s|
|RandomDifferentialCompactionTest|1|4.1s|
|PurgeBoundaryDifferentialCompactionTest|3|3.5s|
|DroppedColumnDifferentialCompactionTest|4|3.3s|
|MultiOutputDifferentialCompactionTest|3|3.2s|
|AccordTableDifferentialCompactionTest|1|3.2s|
|MaterializedViewDifferentialCompactionTest|1|2.6s|
|HarryDifferentialCompactionTest|1|2.3s|
Sum of suite times ≈ 100s; full ant test invocation (build check + 14 forked
JVMs) ≈ 1m56s wall clock.
BigVolumeDifferentialCompactionTest and
LargePartitionDifferentialCompactionTest16-17s each for a single test method.
Want me to move those two into the long-test category?
was (Author: rustyrazorblade):
Fixed the temp-directory cleanup: DifferentialCompactionTester now deletes its
per-run scratch directory of captured sstable copies as soon as the
iterator-vs-cursor comparison is done, instead of leaving it for
JVM/CI-agent-level temp cleanup.
Timing for the full suite (14 classes / 68 tests, all green):
||Test class||Tests||Suite time||
|BigVolumeDifferentialCompactionTest|1|17.2s|
|EdgeCaseDifferentialCompactionTest|26|16.5s|
|LargePartitionDifferentialCompactionTest|1|16.1s|
|CursorCompactionAllocationGateTest|8|12.1s|
|PartialSetDifferentialCompactionTest|3|6.2s|
|BasicDifferentialCompactionTest|6|5.3s|
|CursorSupportMatrixTest|9|4.6s|
|RandomDifferentialCompactionTest|1|4.1s|
|PurgeBoundaryDifferentialCompactionTest|3|3.5s|
|DroppedColumnDifferentialCompactionTest|4|3.3s|
|MultiOutputDifferentialCompactionTest|3|3.2s|
|AccordTableDifferentialCompactionTest|1|3.2s|
|MaterializedViewDifferentialCompactionTest|1|2.6s|
|HarryDifferentialCompactionTest|1|2.3s|
Sum of suite times ≈ 100s; full ant test invocation (build check + 14 forked
JVMs) ≈ 1m56s wall clock.
BigVolumeDifferentialCompactionTest and
LargePartitionDifferentialCompactionTest16-17s each for a single test method.
Want me to move those two into the long-test category?
> 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]