RE: Limitations - Mailing list pgsql-general

From Ansley, Michael
Subject RE: Limitations
Date
Msg-id 1BF7C7482189D211B03F00805F8527F70ECFAC@S-NATH-EXCH2
Whole thread Raw
List pgsql-general
> >>> > I've been attempting to port applications from Pervasive SQL to PG.
> >>> > Pervasive is interesting because it runs on top of btrieve. This
allow
> >>> > legacy apps
> >>> > and SQL systems to co-exist. It's quirky and buggy, but it's better
than PG
> >>> > because it can do the following.
> >>> >
> >>> >
> >>> > 1.  Have more than 7 fields on a btree index
> >>>
> >>> We have never understood why someone would want an index with more
than
> >>> seven columns.
>
> Legacy apps, Bruce.  Sometimes you come across tables with ten fields in
the index.  I'm
> working on a (fairly specialised) system now where the primary key of one
of the tables has
> twenty-four fields in it.  It is a summary table, and probably not the
best design, but that's the
> way it is, and I have to live with it.  Unfortunately, because we don't
have a database that can
> have that many fields in a key, we have to construct manual indices in
code.  Even Oracle
> (which is what we are using) only goes up to about 21 or something.
However, if you are
> going to summarise heavily, then the number of fields in your primary key
can get quite large.
>
> How difficult would it be to make the number of fields in an index
unlimited (or arbitrarily large).
> Perhaps there could be a compile-time variable which is defaulted to 7,
but which can be
> increased using the configure script (./configure --with-index-fields=24).
I realise that there
> are performance issues, but that's a trade off that only the system
designers can make.
>
> MikeA...
I forgot to add that a trigger to check for uniqueness on this table would
be quite slow (especially
without the required index), as about two million rows are being added
daily.

MikeA...

pgsql-general by date:

Previous
From: "Ansley, Michael"
Date:
Subject:
Next
From: Alex Shnitman
Date:
Subject: *Old* PostgreSQL version