Robert Haas <robertmh...@gmail.com> wrote: > Can you, or can anyone, show a plausible example of something > that would work under the old rules and work under the new rules > but with a different meaning? I have to admit that I'm having > some difficulty imagining exactly when that happens. Tom's > examples upthread were not things that seemed all that likely.
I think very few will see any problems. At Wisconsin Courts we had millions of lines of code when we moved to PostgreSQL and saw one or two queries which had problems with this. The example I gave earlier on this thread was: | test=# select 'f'::boolean = 'f'::boolean >= 'f'::boolean; | ?column? | ---------- | f | (1 row) Now, that was a simple case for purposes of illustration, but imagine that the first two literals are column names in a complex query and it becomes slightly less ridiculous. Imagine they are being passed in to some plpgsql function which accepts different types, and the statement is run through EXECUTE and it may be somewhat reasonable. The upshot is that for at least 99% of shops turning this on will not generate any warnings at all. So, the question is what is better for the cases where it will actually matter? Either way it is like leaving the barn door open so that horses are capable of running out. We have an alarm that lets you know when something is going through the barn door; the question is whether to default that alarm on or off. -- Kevin Grittner EDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers