Обсуждение: int2[] vs int2vector in pg_catalog?
Dear hackers, I'm wondering for the rationnal of the types used in various tables in pg_catalog (v 7.4.2) so as to represent the very same thing: - in pg_index, the indkey is represented by a int2vector - in pg_constraint, conkey and confkey are represented my smallint[] As I was trying to compare the two, I have to resort to some hacks. It also appears that there are very few available function to deal with int2vector at the SQL or PL/pgSQL level. Basically I found none:-( Any comments? -- Fabien Coelho - coelho@cri.ensmp.fr
Fabien COELHO <coelho@cri.ensmp.fr> writes:
> I'm wondering for the rationnal of the types used in various tables in
> pg_catalog (v 7.4.2) so as to represent the very same thing:
History and backwards compatibility, mostly.
From the standpoint of the backend I don't think there is any
fundamental reason why we couldn't change pg_index.indkey and indclass
into varlena arrays, but I'd be worried about breaking existing
client-side code that looks at those columns. In particular the
question of whether indexing starts at 0 or 1 would be nasty.
regards, tom lane