"John Prevost" <j.prevost@gmail.com> writes:
> So, what's the problem? Well=97I have twelve tables that are
> partitioned by hour. There are 24 hours in a day, there are seven
> days in a week, and... you may see where I'm going here. PostgreSQL
> gets a lock on each individual table queried (in this case, every
> single partition) and it doesn't take very long at all for the maximum
> number of locks (~2240 by default) to be taken out, particularly when
> data is being aggregated across the twelve different partitioned
> tables.
So what's the problem? Increase max_locks_per_transaction. The reason
we have that as a tunable is mainly to support systems with very large
numbers of tables.
regards, tom lane