Jeff Davis <pgsql@j-davis.com> writes:
> The documentation doesn't give much of a hint that the protocol is using
> unsigned integers. For instance, under ParameterDescription here:
> http://www.postgresql.org/docs/9.3/static/protocol-message-formats.html
> it says that the object ID is an Int32, which is described here:
> http://www.postgresql.org/docs/9.3/static/protocol-message-types.html
> as just a plain 32-bit integer. But the code (e.g.
> getParamDescriptions()) is clearly reading it into an Oid, which is
> unsigned.
> Is there a reason this isn't clear? Is it meant to be ambiguous because
> (as far as the protocol is concerned) it's just an opaque 32 bits?
I think it was just laziness, and/or not wanting to add a uint32 type
to the documentation's notation, since (IIRC) there aren't any places
where a field is unsigned and that really matters to the protocol.
If you think it's worth being more precise, feel free to submit a patch.
regards, tom lane