Bruce Momjian <maillist@candle.pha.pa.us> writes:
>> Would it make sense to use atttypmod to distinguish several different
>> subtypes of CIDR? "4 bytes", "4 bytes + mask", "6 bytes", "6 bytes
>> + mask" seem like interesting possibilities.
> Yes, that is the proper way to go, though atttypmod is something on
> column, not on each data row. It is specified when the column is
> created.
Right, that's what I had in mind. If you *know* that every entry in
your table only needs IPv4, you can specify that when making the table
and save a couple of bytes per entry.
The alternative solution is to make CIDR a variable-length type, but
I think the overhead of that would be as much or more than the possible
savings, no?
I don't know whether having multiple top-level types would be better
or worse than one type with a subtype code.
regards, tom lane