On 23.11.2012 17:53, Tom Lane wrote:
> Euler Taveira<euler@timbira.com> writes:
>> On 22-11-2012 04:27, Pavel Stehule wrote:
>>>> significantly larger catalog
>
>> Less than 5% of catalog columns? I don't buy your argument.
>
> It's not about count, it's about size. For instance, pg_attribute
> currently requires 140 bytes per row (counting the tuple header and
> line pointer), so adding 64 bytes would represent 45% bloat. In
> a database with lots of tables that would be painful.
>
> We could avoid this problem if we were prepared to make type "name"
> be varlena, ...
It would actually be nice to do that because it would *reduce* the
amount of space and memory used for the catalogs in the typical case,
where the attribute names are much smaller than 64 bytes. I received a
complaint just the other day that our backend processes consume a lot of
memory, even when idle; the catalog caches are a large part of that.
- Heikki