Thread: printing oid with %d

printing oid with %d

From
Justin Pryzby
Date:
+JsonEncodeDateTime(char *buf, Datum value, Oid typid)
...
+                       elog(ERROR, "unknown jsonb value datetime type oid %d", typid);

I think this should be %u.

commit cc4feded0a31d2b732d4ea68613115cb720e624e
Author: Andrew Dunstan <andrew@dunslane.net>
Date:   Tue Jan 16 19:07:13 2018 -0500

    Centralize json and jsonb handling of datetime types



Re: printing oid with %d

From
Michael Paquier
Date:
On Mon, Jul 27, 2020 at 08:55:23PM -0500, Justin Pryzby wrote:
> +JsonEncodeDateTime(char *buf, Datum value, Oid typid)
> ...
> +                       elog(ERROR, "unknown jsonb value datetime type oid %d", typid);
>
> I think this should be %u.

Good catch.  Yep, Oids are unsigned.  We don't backpatch such things
usually, do we?  Particularly, this one should not be triggerable
normally because no code paths should call JsonEncodeDateTime() with
an unsupported type Oid.
--
Michael

Attachment

Re: printing oid with %d

From
Tom Lane
Date:
Michael Paquier <michael@paquier.xyz> writes:
> Good catch.  Yep, Oids are unsigned.  We don't backpatch such things
> usually, do we?  Particularly, this one should not be triggerable
> normally because no code paths should call JsonEncodeDateTime() with
> an unsupported type Oid.

Yeah, given that it should be an unreachable case, there's likely
no need to back-patch.

            regards, tom lane



Re: printing oid with %d

From
Michael Paquier
Date:
On Tue, Jul 28, 2020 at 10:35:54AM -0400, Tom Lane wrote:
> Yeah, given that it should be an unreachable case, there's likely
> no need to back-patch.

Thanks.  Fixed on HEAD then.
--
Michael

Attachment