aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/numeric.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2021-07-09 11:02:26 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2021-07-09 11:02:26 -0400
commit39b6e85f135f7a1dcf43c0551d7d10e8c57b7fce (patch)
tree148e10f54310282dd8ffc389a15f6133a9ebb9bf /src/backend/utils/adt/numeric.c
parent8d48a3436dd83f7d6e3cde2d76f91f49f27ba16d (diff)
downloadpostgresql-39b6e85f135f7a1dcf43c0551d7d10e8c57b7fce.tar.gz
postgresql-39b6e85f135f7a1dcf43c0551d7d10e8c57b7fce.zip
Reject cases where a query in WITH rewrites to just NOTIFY.
Since the executor can't cope with a utility statement appearing as a node of a plan tree, we can't support cases where a rewrite rule inserts a NOTIFY into an INSERT/UPDATE/DELETE command appearing in a WITH clause of a larger query. (One can imagine ways around that, but it'd be a new feature not a bug fix, and so far there's been no demand for it.) RewriteQuery checked for this, but it missed the case where the DML command rewrites to *only* a NOTIFY. That'd lead to crashes later on in planning. Add the missed check, and improve the level of testing of this area. Per bug #17094 from Yaoguang Chen. It's been busted since WITH was introduced, so back-patch to all supported branches. Discussion: https://postgr.es/m/17094-bf15dff55eaf2e28@postgresql.org
Diffstat (limited to 'src/backend/utils/adt/numeric.c')
0 files changed, 0 insertions, 0 deletions