Hi, I wanted to revive this thread to summarize what was discussed and get a sense of next steps we could take.
The idea that gained the most traction is to make identifiers variable-length in the catalogs, which has the added benefit of reducing memory in syscaches in the common case. That presented two challenges: 1. That would require putting the name physically closer to the end of the column list. To make this less annoying for users, we'd need to separate physical order from display order (at least/at first only for system catalogs). This would require: - changing star expansion in SELECTs (expandRTE etc) - adjusting pg_dump, \d, etc That much seems clear and agreed upon. 2. We'd need to change how TupleDescs are stored and accessed. For this point, Matthias shared a prototype patch for a 'compact attribute access descriptor' and Andres wondered if we should "give up on the struct / ondisk layout mirroring for catalog tables, and generate explicit transformation routines via Catalog.pm". After this discussion dropped off, and it's not quite clear to me what the first logical step is to make progress on the thread subject, and what's nice to have for other reasons. Is Matthias's patch or something like it a good next step? -- John Naylor EDB: http://www.enterprisedb.com