Re: Adding nullable indicator to Describe - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Adding nullable indicator to Describe
Date
Msg-id 16334.1289972160@sss.pgh.pa.us
Whole thread Raw
In response to Adding nullable indicator to Describe  (Chris Forno <chris@forno.us>)
List pgsql-hackers
Chris Forno <chris@forno.us> writes:
> I'd like to add information about whether or not a parameter or result can
> potentially be NULL to the RowDescription message.

There is noplace to put that without a FE/BE protocol break; and it's
not worth it by itself.  This is one of a number of things that we'll
probably consider when we reach a critical mass of reasons to change
the protocol, but AFAICS we are not very close to that now.

So, to be blunt, a patch to do that would be dead on arrival, or at
least would get filed in the "maybe someday but not now" queue.

The other significant problem that you'd face is obtaining the
information to start with.  It'd really be impractical to mark a result
column as known-not-null except in the very trivial case where it comes
directly from a not-null table column.  Which, as was noted in that old
thread you mentioned, you could get from the system catalogs today given
the information that's already in RowDescription.  There isn't any
infrastructure in the backend that would enable deduction of this
property for other cases.

Since this has come up before, I've added the point to
http://wiki.postgresql.org/wiki/Todo#Wire_Protocol_Changes
but I'm afraid it's unlikely to go much further than that for awhile.
        regards, tom lane


pgsql-hackers by date:

Previous
From: Chris Forno
Date:
Subject: Adding nullable indicator to Describe
Next
From: Itagaki Takahiro
Date:
Subject: Re: Extensible executor nodes for preparation of SQL/MED