-
- Downloads
Support UPDATE/DELETE WHERE CURRENT OF cursor_name, per SQL standard.
Along the way, allow FOR UPDATE in non-WITH-HOLD cursors; there may once have been a reason to disallow that, but it seems to work now, and it's really rather necessary if you want to select a row via a cursor and then update it in a concurrent-safe fashion. Original patch by Arul Shaji, rather heavily editorialized by Tom Lane.
Showing
- doc/src/sgml/ref/declare.sgml 68 additions, 81 deletionsdoc/src/sgml/ref/declare.sgml
- doc/src/sgml/ref/delete.sgml 27 additions, 5 deletionsdoc/src/sgml/ref/delete.sgml
- doc/src/sgml/ref/update.sgml 25 additions, 2 deletionsdoc/src/sgml/ref/update.sgml
- src/backend/executor/Makefile 2 additions, 2 deletionssrc/backend/executor/Makefile
- src/backend/executor/execCurrent.c 185 additions, 0 deletionssrc/backend/executor/execCurrent.c
- src/backend/executor/execMain.c 19 additions, 1 deletionsrc/backend/executor/execMain.c
- src/backend/executor/execQual.c 42 additions, 1 deletionsrc/backend/executor/execQual.c
- src/backend/executor/nodeTidscan.c 22 additions, 3 deletionssrc/backend/executor/nodeTidscan.c
- src/backend/nodes/copyfuncs.c 18 additions, 1 deletionsrc/backend/nodes/copyfuncs.c
- src/backend/nodes/equalfuncs.c 13 additions, 1 deletionsrc/backend/nodes/equalfuncs.c
- src/backend/nodes/outfuncs.c 13 additions, 1 deletionsrc/backend/nodes/outfuncs.c
- src/backend/nodes/readfuncs.c 17 additions, 1 deletionsrc/backend/nodes/readfuncs.c
- src/backend/optimizer/path/clausesel.c 11 additions, 1 deletionsrc/backend/optimizer/path/clausesel.c
- src/backend/optimizer/path/costsize.c 17 additions, 3 deletionssrc/backend/optimizer/path/costsize.c
- src/backend/optimizer/path/tidpath.c 13 additions, 1 deletionsrc/backend/optimizer/path/tidpath.c
- src/backend/optimizer/plan/setrefs.c 10 additions, 1 deletionsrc/backend/optimizer/plan/setrefs.c
- src/backend/optimizer/prep/prepunion.c 9 additions, 1 deletionsrc/backend/optimizer/prep/prepunion.c
- src/backend/optimizer/util/clauses.c 3 additions, 1 deletionsrc/backend/optimizer/util/clauses.c
- src/backend/optimizer/util/var.c 41 additions, 1 deletionsrc/backend/optimizer/util/var.c
- src/backend/parser/analyze.c 5 additions, 5 deletionssrc/backend/parser/analyze.c
Loading
Please register or sign in to comment