Re: BUG #17969: Assert failed in bloom_init() when false_positive_rate = 0.25

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: BUG #17969: Assert failed in bloom_init() when false_positive_rate = 0.25
Дата
Msg-id 836412.1686502986@sss.pgh.pa.us
обсуждение исходный текст
Ответ на BUG #17969: Assert failed in bloom_init() when false_positive_rate = 0.25  (PG Bug reporting form <noreply@postgresql.org>)
Ответы Re: BUG #17969: Assert failed in bloom_init() when false_positive_rate = 0.25  (Masahiko Sawada <sawada.mshk@gmail.com>)
Список pgsql-bugs
PG Bug reporting form <noreply@postgresql.org> writes:
> The following script:
> CREATE TABLE tbl (i int);
> CREATE INDEX idx ON tbl USING brin (i int4_bloom_ops(false_positive_rate =
> 0.25));
> INSERT INTO tbl VALUES(1);

> triggers an assertion failure:
> TRAP: failed Assert("(false_positive_rate >= BLOOM_MIN_FALSE_POSITIVE_RATE)
> && (false_positive_rate < BLOOM_MAX_FALSE_POSITIVE_RATE)"), File:
> "brin_bloom.c", Line: 282, PID: 1062784

> Reproduced starting from 77b88cd1b.

Hmph.  Surely that should read "false_positive_rate <=
BLOOM_MAX_FALSE_POSITIVE_RATE" ?

> Maybe that Assert is not needed at all...

Seems a little excessive to me too, given the comment near the #define
that the range limits are pretty arbitrary.  Perhaps what would be
suitable is "Assert(false_positive_rate > 0 && false_positive_rate < 1)"
to show that we don't need to check for failure of the subsequent log()
call, and that the log() must be negative so that the nbits result
will be sane.

            regards, tom lane



В списке pgsql-bugs по дате отправления:

Предыдущее
От: PG Bug reporting form
Дата:
Сообщение: BUG #17969: Assert failed in bloom_init() when false_positive_rate = 0.25
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Comparing date strings with jsonpath expression