Tom Lane wrote:

Yes, you can check if they're binary compatible from the pg_cast table....

But nearly all of the interesting cases require you to understand the type's interpretation of typmod, and you can't learn that from a table. How many cases are there where blindly looking for a binary-compatible cast in pg_cast will really do you much good? AFAICS you'd have to set atttypmod to -1 if you change atttypid without knowing very specifically what you are changing from and to.

AFAICS there's few interpretation about atttypmod necessary because only few datatypes binary convertible (castfunc=0) do use atttypmod at all. Most special case is varchar<->text, one supporting length, the other not; both need atttypmod=-1. bpchar<->varchar both allow typmod in a similar fashion.
It's already implemented in pgAdmin3 this way.


---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend

Reply via email to