Skip to content

4.19.1 (Apache) RelationOptionsIT fails on Scylla #121

@Bouncheck

Description

@Bouncheck

From https://jenkins.scylladb.com/job/scylla-master/job/driver-tests/job/java-driver-matrix-test/1780

[2025-10-17T22:29:06.228Z] [ERROR] com.datastax.oss.driver.querybuilder.RelationOptionsIT.should_create_table_with_crc_check_chance  Time elapsed: 10.661 s  <<< FAILURE!
[2025-10-17T22:29:06.228Z] java.lang.AssertionError: 
[2025-10-17T22:29:06.228Z] 
[2025-10-17T22:29:06.228Z] Expecting:
[2025-10-17T22:29:06.228Z]   "CREATE KEYSPACE ks_27 WITH replication = { 'class' : 'org.apache.cassandra.locator.SimpleStrategy', 'replication_factor': '1' } AND durable_writes = true;
[2025-10-17T22:29:06.229Z] 
[2025-10-17T22:29:06.229Z] CREATE TABLE ks_27.should_create_table_with_crc_check_chance (
[2025-10-17T22:29:06.229Z]     id int,
[2025-10-17T22:29:06.229Z]     age int,
[2025-10-17T22:29:06.229Z]     name text,
[2025-10-17T22:29:06.229Z]     PRIMARY KEY (id)
[2025-10-17T22:29:06.229Z] ) WITH bloom_filter_fp_chance = 0.01
[2025-10-17T22:29:06.229Z]     AND caching = {'keys':'ALL','rows_per_partition':'ALL'}
[2025-10-17T22:29:06.229Z]     AND comment = ''
[2025-10-17T22:29:06.229Z]     AND compaction = {'class':'IncrementalCompactionStrategy'}
[2025-10-17T22:29:06.229Z]     AND compression = {'sstable_compression':'org.apache.cassandra.io.compress.LZ4Compressor'}
[2025-10-17T22:29:06.229Z]     AND crc_check_chance = 1.0
[2025-10-17T22:29:06.229Z]     AND default_time_to_live = 0
[2025-10-17T22:29:06.229Z]     AND extensions = {'tombstone_gc':0x02000000040000006d6f64650700000074696d656f75741c00000070726f7061676174696f6e5f64656c61795f696e5f7365636f6e64730400000033363030}
[2025-10-17T22:29:06.229Z]     AND gc_grace_seconds = 864000
[2025-10-17T22:29:06.229Z]     AND max_index_interval = 2048
[2025-10-17T22:29:06.229Z]     AND memtable_flush_period_in_ms = 0
[2025-10-17T22:29:06.229Z]     AND min_index_interval = 128
[2025-10-17T22:29:06.229Z]     AND speculative_retry = '99.0PERCENTILE';"
[2025-10-17T22:29:06.229Z] to contain:
[2025-10-17T22:29:06.229Z]   "crc_check_chance = 0.8" 
[2025-10-17T22:29:06.229Z] 	at com.datastax.oss.driver.querybuilder.RelationOptionsIT.should_create_table_with_crc_check_chance(RelationOptionsIT.java:72)
[2025-10-17T22:29:06.229Z] 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[2025-10-17T22:29:06.229Z] 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[2025-10-17T22:29:06.229Z] 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[2025-10-17T22:29:06.229Z] 	at java.lang.reflect.Method.invoke(Method.java:498)
[2025-10-17T22:29:06.229Z] 	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
[2025-10-17T22:29:06.229Z] 	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
[2025-10-17T22:29:06.229Z] 	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
[2025-10-17T22:29:06.229Z] 	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
[2025-10-17T22:29:06.230Z] 	at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54)
[2025-10-17T22:29:06.230Z] 	at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54)
[2025-10-17T22:29:06.230Z] 	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
[2025-10-17T22:29:06.230Z] 	at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:61)
[2025-10-17T22:29:06.230Z] 	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
[2025-10-17T22:29:06.230Z] 	at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
[2025-10-17T22:29:06.230Z] 	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
[2025-10-17T22:29:06.230Z] 	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
[2025-10-17T22:29:06.230Z] 	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
[2025-10-17T22:29:06.230Z] 	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
[2025-10-17T22:29:06.230Z] 	at org.apache.maven.surefire.junitcore.pc.Scheduler$1.run(Scheduler.java:345)
[2025-10-17T22:29:06.230Z] 	at org.apache.maven.surefire.junitcore.pc.InvokerStrategy.schedule(InvokerStrategy.java:47)
[2025-10-17T22:29:06.230Z] 	at org.apache.maven.surefire.junitcore.pc.Scheduler.schedule(Scheduler.java:316)
[2025-10-17T22:29:06.230Z] 	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
[2025-10-17T22:29:06.230Z] 	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
[2025-10-17T22:29:06.230Z] 	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
[2025-10-17T22:29:06.230Z] 	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
[2025-10-17T22:29:06.230Z] 	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
[2025-10-17T22:29:06.230Z] 	at org.junit.runners.Suite.runChild(Suite.java:128)
[2025-10-17T22:29:06.230Z] 	at org.junit.runners.Suite.runChild(Suite.java:27)
[2025-10-17T22:29:06.230Z] 	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
[2025-10-17T22:29:06.230Z] 	at org.apache.maven.surefire.junitcore.pc.Scheduler$1.run(Scheduler.java:345)
[2025-10-17T22:29:06.230Z] 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
[2025-10-17T22:29:06.230Z] 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
[2025-10-17T22:29:06.230Z] 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
[2025-10-17T22:29:06.230Z] 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
[2025-10-17T22:29:06.230Z] 	at java.lang.Thread.run(Thread.java:750)
[2025-10-17T22:29:06.230Z] 
[2025-10-17T22:29:06.230Z] [ERROR] com.datastax.oss.driver.querybuilder.RelationOptionsIT.should_create_table_with_deprecated_options  Time elapsed: 8.64 s  <<< ERROR!
[2025-10-17T22:29:06.230Z] com.datastax.oss.driver.api.core.servererrors.InvalidConfigurationInQueryException: Missing sub-option 'sstable_compression' for the 'compression' option.
[2025-10-17T22:29:06.230Z] 	at com.datastax.oss.driver.api.core.servererrors.InvalidConfigurationInQueryException.copy(InvalidConfigurationInQueryException.java:54)
[2025-10-17T22:29:06.230Z] 	at com.datastax.oss.driver.internal.core.util.concurrent.CompletableFutures.getUninterruptibly(CompletableFutures.java:154)
[2025-10-17T22:29:06.231Z] 	at com.datastax.oss.driver.internal.core.cql.CqlRequestSyncProcessor.process(CqlRequestSyncProcessor.java:55)
[2025-10-17T22:29:06.231Z] 	at com.datastax.oss.driver.internal.core.cql.CqlRequestSyncProcessor.process(CqlRequestSyncProcessor.java:32)
[2025-10-17T22:29:06.231Z] 	at com.datastax.oss.driver.internal.core.session.DefaultSession.execute(DefaultSession.java:234)
[2025-10-17T22:29:06.231Z] 	at com.datastax.oss.driver.api.core.cql.SyncCqlSession.execute(SyncCqlSession.java:56)
[2025-10-17T22:29:06.231Z] 	at com.datastax.oss.driver.querybuilder.RelationOptionsIT.should_create_table_with_deprecated_options(RelationOptionsIT.java:112)
[2025-10-17T22:29:06.231Z] 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[2025-10-17T22:29:06.231Z] 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[2025-10-17T22:29:06.231Z] 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[2025-10-17T22:29:06.231Z] 	at java.lang.reflect.Method.invoke(Method.java:498)
[2025-10-17T22:29:06.231Z] 	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
[2025-10-17T22:29:06.231Z] 	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
[2025-10-17T22:29:06.231Z] 	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
[2025-10-17T22:29:06.231Z] 	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
[2025-10-17T22:29:06.231Z] 	at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54)
[2025-10-17T22:29:06.231Z] 	at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54)
[2025-10-17T22:29:06.231Z] 	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
[2025-10-17T22:29:06.231Z] 	at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:61)
[2025-10-17T22:29:06.231Z] 	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
[2025-10-17T22:29:06.231Z] 	at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
[2025-10-17T22:29:06.231Z] 	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
[2025-10-17T22:29:06.231Z] 	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
[2025-10-17T22:29:06.231Z] 	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
[2025-10-17T22:29:06.231Z] 	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
[2025-10-17T22:29:06.231Z] 	at org.apache.maven.surefire.junitcore.pc.Scheduler$1.run(Scheduler.java:345)
[2025-10-17T22:29:06.231Z] 	at org.apache.maven.surefire.junitcore.pc.InvokerStrategy.schedule(InvokerStrategy.java:47)
[2025-10-17T22:29:06.231Z] 	at org.apache.maven.surefire.junitcore.pc.Scheduler.schedule(Scheduler.java:316)
[2025-10-17T22:29:06.231Z] 	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
[2025-10-17T22:29:06.231Z] 	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
[2025-10-17T22:29:06.231Z] 	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
[2025-10-17T22:29:06.232Z] 	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
[2025-10-17T22:29:06.232Z] 	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
[2025-10-17T22:29:06.232Z] 	at org.junit.runners.Suite.runChild(Suite.java:128)
[2025-10-17T22:29:06.232Z] 	at org.junit.runners.Suite.runChild(Suite.java:27)
[2025-10-17T22:29:06.232Z] 	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
[2025-10-17T22:29:06.232Z] 	at org.apache.maven.surefire.junitcore.pc.Scheduler$1.run(Scheduler.java:345)
[2025-10-17T22:29:06.232Z] 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
[2025-10-17T22:29:06.232Z] 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
[2025-10-17T22:29:06.232Z] 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
[2025-10-17T22:29:06.232Z] 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
[2025-10-17T22:29:06.232Z] 	at java.lang.Thread.run(Thread.java:750)
[2025-10-17T22:29:06.232Z] 

There are two failing tests.
should_create_table_with_deprecated_options - most likely fails due to the difference in syntax between Scylla and Cassandra.
should_create_table_with_crc_check_chance - crc_check_chance as a part of the CREATE TABLE is marked as unsupported in https://docs.scylladb.com/manual/stable/using-scylla/cassandra-compatibility.html
Looks like it simply has no effect so that's why we see 1.0 instead of 0.8

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions