I was recently annoyed to find postgres indexes don't support skipping [1] you also can't have the nul character in a string (\u0000) [2]. Its great, but it has some strange WTF gaps in places. [1] https://wiki.postgresql.org/wiki/Loose_indexscan [2] https://stackoverflow.com/questions/28813409/are-null-bytes-...
What is a reasonable use for a null character in a string? My first instinct is that strings with nulls in them should absolutely be rejected.
There's a lot to complain about with nul-terminated strings, but not being able to store arbitrary bytes ain't one of them.