"Oleg Lebedev" <oleg.lebedev@waterford.org> writes:
> We have several tables each of which has an objectid field. These fields
> contain id values, 99% of which are in a 0 to 1,000,000 range and 1% of
> ids is randomly dispersed between 1,000,000 and 10,000,000,000 (these
> are the identity values we imported from SQL Server when moving to
> Postgres).
> We started a new project and want to use id values > 10,000,000,000 for
> it, so that they do not overlap with existing values.
> 1. Will this hit performance of queries involving this table?
Doesn't seem to be a big problem.
> 2. Can I help the planner by providing stats about ranges of values in
> this table? If yes then how?
Run ANALYZE ;-).
It might be worth pushing up the statistics target for the object ID
columns (see ALTER TABLE) to ensure that the planner has a pretty good
idea about the distribution of the IDs. Offhand I think the default
target (10) would be okay, but it'd be worth your while to experiment.
regards, tom lane