Peter Eisentraut <peter_e@gmx.net> writes:
> In general, I don't see a point in accepting a zero byte in character
> strings. If you want to store binary data there are binary data types (or
> effort could be invested in them).
If we were starting in a green field then I'd think it worthwhile to
maintain null-byte-cleanness for the textual datatypes. At this point,
though, the amount of pain involved seems to vastly outweigh the value.
The major problem is that I/O conventions not based on null-terminated
strings would break all existing user-defined datatypes. (Changing our
own code is one thing, breaking users' code is something else.) There
are minor-by-comparison problems like not being able to use strcoll()
for locale-sensitive comparisons anymore...
I agree with Peter that spending some extra effort on bytea and/or
similar types is probably a more profitable answer.
regards, tom lane