-
- Downloads
Fix trigger WHEN conditions when both BEFORE and AFTER triggers exist.
Due to tuple-slot mismanagement, evaluation of WHEN conditions for AFTER ROW UPDATE triggers could crash if there had been a BEFORE ROW trigger fired for the same update. Fix by not trying to overload the use of estate->es_trig_tuple_slot. Per report from Yoran Heling. Back-patch to 9.0, when trigger WHEN conditions were introduced.
Showing
- src/backend/commands/trigger.c 3 additions, 3 deletionssrc/backend/commands/trigger.c
- src/backend/executor/execMain.c 1 addition, 0 deletionssrc/backend/executor/execMain.c
- src/backend/executor/execUtils.c 1 addition, 0 deletionssrc/backend/executor/execUtils.c
- src/include/nodes/execnodes.h 2 additions, 1 deletionsrc/include/nodes/execnodes.h
- src/test/regress/expected/triggers.out 29 additions, 0 deletionssrc/test/regress/expected/triggers.out
- src/test/regress/sql/triggers.sql 26 additions, 0 deletionssrc/test/regress/sql/triggers.sql
Loading
Please register or sign in to comment