On 9/1/22 10:08, Tom Lane wrote:
Wesley Schwengle <wesley.schwengle@xxxxxxxxx> writes:
There is a view that we create and it uses a function and the view
definition changes between runs. I'm not sure why this is happening,
does someone know?
The core reason for the discrepancy is that the parser inserts
implicit coercion steps into your initial, not-very-consistently-typed
query; but the view-dumping logic (ruleutils.c) tends to display
those steps as explicit coercions.
Thanks for the clarification, it makes a whole lot of sense. And indeed,
when I type the SQL like so ARRAY[foo.bar::text, foo.baz::varchar::text]
the view definition does not change between runs.
Cheers,
Wesley
--
Wesley Schwengle, Developer
xxllnc Zaaksysteem, https://www.zaaksysteem.nl