From: | Michael Paquier <michael(dot)paquier(at)gmail(dot)com> |
---|---|
To: | boyko yordanov <b(dot)yordanov2(at)gmail(dot)com> |
Cc: | PostgreSQL mailing lists <pgsql-bugs(at)postgresql(dot)org> |
Subject: | Re: BUG #13680: PostgreSQL backend process crashes on jsonb_object_agg() in plpgsql recursive function |
Date: | 2015-10-15 11:31:41 |
Message-ID: | CAB7nPqQJab1d6EY3O=ZhG8VORXP01PjeMGSoELEZNzEELhfkkw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
On Thu, Oct 15, 2015 at 7:07 PM, boyko yordanov wrote:
> sravni_hstore=# select ('{"3": {"9703": {"c": 1}}}'::jsonb->'3') || ('{"3":
> {"8309": {"c": 1}}}'::jsonb->'3');
> -[ RECORD 1 ]----------------------------------
> ?column? | {"8309": {"c": 1}, "9703": {"c": 1}}
>
> sravni_hstore=# select '{"3": {"9703": {"c": 1}}}'::jsonb->'3' || '{"3":
> {"8309": {"c": 1}}}'::jsonb->'3';
> -[ RECORD 1 ]----------------
> ?column? | {"8309": {"c": 1}}
>
> What I expect is that there should be no difference in the output of the
> last two queries. Not sure if I should submit this as a separate bug?
The last one looks correct to me, the concat operator is using on the
right side '{"3": {"8309": {"c": 1}}}'::jsonb in your last query, and
not '{"3": {"8309": {"c": 1}}}'::jsonb->'3', so || takes precedence on
->. When applying the parenthesis, ('{"3": {"8309": {"c":
1}}}'::jsonb->'3') is completely taken into account.
--
Michael
From | Date | Subject | |
---|---|---|---|
Next Message | boyko yordanov | 2015-10-15 11:37:07 | Re: BUG #13680: PostgreSQL backend process crashes on jsonb_object_agg() in plpgsql recursive function |
Previous Message | boyko yordanov | 2015-10-15 10:07:53 | Re: BUG #13680: PostgreSQL backend process crashes on jsonb_object_agg() in plpgsql recursive function |