BUG #18809: Inconsistent JSON behavoir

From: PG Bug reporting form <noreply(at)postgresql(dot)org>
To: pgsql-bugs(at)lists(dot)postgresql(dot)org
Cc: mark(dot)drake(at)golden-hind(dot)com
Subject: BUG #18809: Inconsistent JSON behavoir
Date: 2025-02-13 03:22:20
Message-ID: 18809-601694c9be8a4026@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

The following bug has been logged on the website:

Bug reference: 18809
Logged by: Mark Drake
Email address: mark(dot)drake(at)golden-hind(dot)com
PostgreSQL version: 17.0
Operating system: Linux
Description:

broadway=# select jsonb('[2,3,1]') @> to_jsonb(1);
?column?
----------
t
(1 row)

broadway=# select jsonb('[2,3,1]') @> to_jsonb(4);
?column?
----------
f
(1 row)

broadway=# select jsonb('[2,3,1]') @> to_jsonb(4);
?column?
----------
f
(1 row)

broadway=# select jsonb('[2,3,1]') - 1;
?column?
----------
[2, 1]
(1 row)

broadway=#
broadway=# select jsonb('[2,3,1]') - to_jsonb(1);
ERROR: operator does not exist: jsonb - jsonb
LINE 1: select jsonb('[2,3,1]') - to_jsonb(1);
^
HINT: No operator matches the given name and argument types. You might need
to add explicit type casts.
broadway=#

Given that the first statement show the array contains an element that
matches to_jsonb(1) the fourth statement should delete the third ( index 2)
item from the array, not return an argument type mismatch. This would solve
the problem of not being able to delete from a JSON integer array by value

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Ashutosh Bapat 2025-02-13 04:55:19 Re: BUG #18806: When enable_rartitionwise_join is set to ON, the database shuts down abnormally
Previous Message Richard Guo 2025-02-13 03:14:21 Re: BUG #18806: When enable_rartitionwise_join is set to ON, the database shuts down abnormally