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-04 19:27:06 +02:00
2022-06-21 11:58:13 +03:00
2022-04-12 16:37:11 +03:00
2022-02-24 19:44:50 +03:00
2022-09-30 00:01:26 +03: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-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-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-10-04 16:21:48 +03: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-06-02 11:21:05 +03:00
2021-06-06 19:18:49 +03:00
2022-02-23 18:38:05 +01:00
2022-06-23 10:33:35 +03: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-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-01-18 12:15:18 +01:00
2022-02-24 19:44:29 +03:00
2022-10-03 13:20:28 +03:00
2022-01-18 12:15:18 +01:00
2022-02-28 12:36:03 +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-01-18 12:15:18 +01:00
2022-07-27 13:32:36 +03:00
2022-07-27 13:32:36 +03:00
2022-03-25 16:19:26 +02:00
2022-07-11 09:17:30 +02:00
2022-01-18 12:15:18 +01:00
2022-04-26 14:46:42 +03:00
2022-07-26 15:59:33 +03:00
2022-02-22 16:08:52 +01:00
2022-07-05 16:41:09 +02:00
2022-07-05 16:41:09 +02:00
2022-01-18 12:15:18 +01:00
2022-07-27 13:17:27 +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-18 12:15:18 +01:00
2022-01-18 12:15:18 +01:00
2022-01-18 12:15:18 +01:00
2022-05-07 13:04:16 +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-07-27 16:58:52 +03:00
2022-07-27 16:58:52 +03:00
2022-07-27 16:58:25 +03: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-03-25 16:19:26 +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-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-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-01-18 12:15:18 +01:00
2022-01-18 12:15:18 +01:00
2022-02-28 12:59:08 +02:00
2022-02-28 12:52:47 +02:00
2022-06-28 19:58:06 -03:00
2022-03-09 16:13:07 +02:00
2022-07-27 13:43:17 +03:00
2022-09-18 13:24:21 +03:00
2022-07-27 13:43:17 +03:00
2022-01-18 12:15:18 +01:00
2022-01-18 12:15:18 +01:00
2022-07-12 00:23:29 +03:00
2022-02-24 19:44:50 +03:00
2022-02-24 19:44:50 +03:00
2022-01-18 12:15:18 +01:00
2022-07-14 11:56:20 +03: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-01-18 12:15:18 +01:00
2022-01-18 12:15:18 +01:00
2022-07-06 08:17:08 +03: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-01-18 12:15:18 +01:00
2022-01-18 12:15:18 +01:00
2022-02-22 16:25:21 +01:00
2022-04-18 12:27:18 +03:00
2022-03-15 11:42:42 +02:00
2022-03-16 12:28:47 +03:00
2022-01-18 12:15:18 +01:00
2022-03-02 19:10: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-07-08 12:59:14 +03:00
2022-01-18 12:15:18 +01:00
2022-07-06 08:17:08 +03:00
2022-02-24 19:44:50 +03:00
2022-01-18 12:15:18 +01: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-06 08:17:08 +03: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-01-18 12:15:18 +01:00
2022-02-16 10:19:47 +02:00
2022-01-18 12:15:18 +01:00
2022-01-18 12:15:18 +01:00