Nadav Har'El
abb6817261
cql: validate bloom_filter_fp_chance up-front
...
Scylla's Bloom filter implementation has a minimal false-positive rate
that it can support (6.71e-5). When setting bloom_filter_fp_chance any
lower than that, the compute_bloom_spec() function, which writes the bloom
filter, throws an exception. However, this is too late - it only happens
while flushing the memtable to disk, and a failure at that point causes
Scylla to crash.
Instead, we should refuse the table creation with the unsupported
bloom_filter_fp_chance. This is also what Cassandra did six years ago -
see CASSANDRA-11920.
This patch also includes a regression test, which crashes Scylla before
this patch but passes after the patch (and also passes on Cassandra).
Fixes #11524 .
Signed-off-by: Nadav Har'El <nyh@scylladb.com >
Closes #11576
(cherry picked from commit 4c93a694b7 )
2022-10-04 16:21:48 +03:00
..
2022-07-22 20:14:48 +03:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-01-18 12:15:18 +01:00
2022-01-18 12:15:18 +01:00
2022-07-25 09:53:33 +02:00
2022-05-13 07:11:58 +02:00
2022-07-07 15:02:16 +03:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-01-18 12:15:18 +01:00
2022-01-18 12:15:18 +01:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-06-22 20:16:49 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-06-16 19:23:46 +03:00
2022-05-13 07:11:58 +02:00
2022-10-04 16:21:48 +03:00
2022-07-25 09:53:33 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-07-18 15:25:41 +02:00
2022-07-18 15:25:41 +02:00
2022-07-20 18:19:22 +02:00
2022-07-18 15:25:41 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-01-18 12:15:18 +01:00
2022-01-18 12:15:18 +01:00
2022-07-25 09:53:33 +02:00
2022-05-13 07:11:58 +02:00
2022-07-07 15:02:16 +03:00
2022-05-13 07:11:58 +02:00
2022-07-22 20:14:48 +03:00
2022-07-22 20:14:48 +03:00
2022-07-22 20:14:48 +03:00
2022-05-13 07:11:58 +02:00
2022-01-18 12:15:18 +01:00
2022-01-18 12:15:18 +01:00
2022-01-24 15:12:50 +01:00
2022-01-24 15:12:50 +01:00
2022-01-24 15:12:50 +01:00
2022-01-24 15:12:50 +01:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-01-18 12:15:18 +01:00
2022-01-18 12:15:18 +01:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-04 18:59:56 +03:00
2022-07-18 15:25:41 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-01-18 12:15:18 +01:00
2022-01-18 12:15:18 +01:00
2022-01-18 12:15:18 +01:00
2022-01-18 12:15:18 +01:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-07-22 20:14:48 +03:00
2022-07-22 20:14:48 +03:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-19 10:11:50 +02:00
2022-05-19 10:11:50 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-06-23 16:14:41 +02:00
2022-05-13 07:11:58 +02:00
2022-07-22 20:14:48 +03:00
2022-07-01 16:29:11 +02:00
2022-02-27 11:48:03 +02:00
2022-02-27 11:48:03 +02:00
2022-03-31 07:04:00 +03:00
2022-01-18 12:15:18 +01:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-07-22 20:14:48 +03:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00
2022-05-13 07:11:58 +02:00