Robert Haas <robertmh...@gmail.com> writes: > I'm going to say this one more time: I really, really, really think > you need to avoid trying to convert the partition bounds to a common > type. I said before that the infrastructure to do that is not present > in our type system, and I'm pretty sure that statement is 100% > correct. The fact that you can find other cases where we do something > sorta like that but in a different case with different requirements > doesn't make that false.
It's not just a matter of lack of infrastructure: the very attempt is flawed, because in some cases there simply isn't a supertype that can hold all values of both types. An easy counterexample is float8 vs numeric: you can't convert float8 'Infinity' to numeric, but also there are values of numeric that can't be converted to float8 without overflow and/or loss of precision. The whole business of precision loss makes things very touchy for almost anything involving float and a non-float type, actually. What I'm going to ask one more time, though, is why we are even discussing this. Surely the partition bounds of a partitioned table must all be of the same type already. If there is a case where they are not, that is a bug we had better close off before v10 ships, not a feature that we need to write a lot of code to accommodate. regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers