Jeff Cohen wrote:
> In order to make such error checking
> feasible, we would have to restrict the set of predicates you can use
> in the WHERE clause, so it wouldn't be completely general anyway.
Well, with an extensible system such as PostgreSQL you will need to have a
partitioning scheme that can deal with extensions. Perhaps people want to
partition by XML, GIS, text-search data, or whatever someone might come up
with in the future.
One possible way to achieve that might be to redefine your concepts of hash,
list, and range in terms of operator classes (or operator families or other
operator structures?). Those have well-defined properties as to how the
operators behave relative to each other, so checking the partition
definitions for mutual exclusivity and other properties would be possible.
--
Peter Eisentraut
http://developer.postgresql.org/~petere/