Hi
> For release 13+, I have given some more thought to what should be done. > I think the bar for altering the behaviour of a function should be > rather higher than we have in the present case, and the longer the > function has been sanctioned by time the higher the bar should be. > However, I think there is a case to be made for providing a non-strict > jsonb_set type function. To advance th4e discussion, attached is a POC > patch that does that. This can also be done as an extension, meaning > that users of back branches could deploy it immediately. I've tested > this against release 12, but I think it could go probably all the way > back to 9.5. The new function is named jsonb_ set_lax, but I'm open to > bikeshedding. > > I am sending a review of this patch 1. this patch does what was proposed and it is based on discussion. 2. there are not any problem with patching or compilation, all regress tests passed. 4. code looks well and it is well commented. 5. the patch has enough regress tests My notes: a) missing documentation b) error message is not finalized + ereport(ERROR, + (errcode(ERRCODE_INVALID_PARAMETER_VALUE), + errmsg("null jsonb value"))); Any other looks well, and this function can be very handy. Regards Pavel