Re: remaining sql/json patches
От | Amit Langote |
---|---|
Тема | Re: remaining sql/json patches |
Дата | |
Msg-id | CA+HiwqGNmJ67n6BKAROEBHqv0faGA3GxU+vH1wO8x-m9i=hRoQ@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: remaining sql/json patches (Nikita Malakhov <hukutoc@gmail.com>) |
Ответы |
Re: remaining sql/json patches
Re: remaining sql/json patches |
Список | pgsql-hackers |
Hi, On Mon, Oct 16, 2023 at 5:34 PM Nikita Malakhov <hukutoc@gmail.com> wrote: > > Hi, > > Also FYI - the following case results in segmentation fault: > > postgres@postgres=# CREATE TABLE test_jsonb_constraints ( > js text, > i int, > x jsonb DEFAULT JSON_QUERY(jsonb '[1,2]', '$[*]' WITH WRAPPER) > CONSTRAINT test_jsonb_constraint1 > CHECK (js IS JSON) > CONSTRAINT test_jsonb_constraint5 > CHECK (JSON_QUERY(js::jsonb, '$.mm' RETURNING char(5) OMIT QUOTES EMPTY ARRAY ON EMPTY) > 'a' COLLATE"C") > CONSTRAINT test_jsonb_constraint6 > CHECK (JSON_EXISTS(js::jsonb, 'strict $.a' RETURNING int TRUE ON ERROR) < 2) > ); > CREATE TABLE > Time: 13.518 ms > postgres@postgres=# INSERT INTO test_jsonb_constraints VALUES ('[]'); > server closed the connection unexpectedly > This probably means the server terminated abnormally > before or while processing the request. > The connection to the server was lost. Attempting reset: Failed. > The connection to the server was lost. Attempting reset: Failed. > Time: 6.858 ms > @!> > > We're currently looking into this case. Thanks for the report. I think I've figured out the problem -- ExecEvalJsonExprCoercion() mishandles the EMPTY ARRAY ON EMPTY case. I'm reading the other 2 patches... -- Thanks, Amit Langote EDB: http://www.enterprisedb.com
В списке pgsql-hackers по дате отправления: