Обсуждение: pgsql: Fix the volatility marking of textanycat() and anytextcat(): they

Поиск
Список
Период
Сортировка

pgsql: Fix the volatility marking of textanycat() and anytextcat(): they

От
tgl@postgresql.org (Tom Lane)
Дата:
Log Message:
-----------
Fix the volatility marking of textanycat() and anytextcat(): they were marked
immutable, but that is wrong in general because the cast from the polymorphic
argument to text could be stable or even volatile.  Mark them volatile for
safety.  In the typical case where the cast isn't volatile, the planner will
deduce the correct expression volatility after inlining the function, so
performance is not lost.  The just-committed fix in CREATE INDEX also ensures
this won't break any indexing cases that ought to be allowed.

Per discussion, I'm not bumping catversion for this change, as it doesn't
seem critical enough to force an initdb on beta testers.

Modified Files:
--------------
    pgsql/src/include/catalog:
        pg_proc.h (r1.570 -> r1.571)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_proc.h?r1=1.570&r2=1.571)