Re: IS JSON predicate support for domain base type as JSON/JSONB/BYTEA/TEXT

Andrew Dunstan <andrew@dunslane.net>

From: Andrew Dunstan <andrew@dunslane.net>
To: Kirill Reshke <reshkekirill@gmail.com>
Cc: jian he <jian.universality@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2026-03-17T19:23:07Z
Lists: pgsql-hackers
On 2026-03-13 Fr 9:47 AM, Andrew Dunstan wrote:
>
> On 2026-03-13 Fr 9:16 AM, Kirill Reshke wrote:
>> On Fri, 13 Mar 2026 at 17:30, Andrew Dunstan <andrew@dunslane.net> 
>> wrote:
>>>
>>> On 2026-03-12 Th 11:55 PM, jian he wrote:
>>>> Hi.
>>>>
>>>> The regression test was very verbose; I removed some of it.
>>>> Also polished function ExecEvalJsonIsPredicate a little bit.
>>>
>>>
>>> Here's a v4. I changed resultBaseType to exprBaseType - I think it's
>>> clearer. I also trimmed the tests a bit more, and dropped the new
>>> objects after testing them. The  error message now shows the domain 
>>> name
>>> rather than the underlying base type. I think that's more useful.
>>>
>>
>> Hi!
>> V4 looks good. The only thing that I cannot explain is removing the
>> `exprtype` variable inside ExecEvalJsonIsPredicate. We can just change
>> its declaration to
>>
>> exprtype =  pred->exprBaseType if i'm not mistaken?
>
>
>
> Yeah, we can do that.
>
>
>>
>> Anyway, LGTM
>>
>>
>
>

Committed with that change.


cheers


andrew

--
Andrew Dunstan
EDB: https://www.enterprisedb.com




Commits

  1. Allow IS JSON predicate to work with domain types

  2. SQL/JSON: support the IS JSON predicate