summaryrefslogtreecommitdiff
path: root/doc/src
diff options
context:
space:
mode:
Diffstat (limited to 'doc/src')
-rw-r--r--doc/src/sgml/fdwhandler.sgml7
-rw-r--r--doc/src/sgml/rules.sgml8
2 files changed, 9 insertions, 6 deletions
diff --git a/doc/src/sgml/fdwhandler.sgml b/doc/src/sgml/fdwhandler.sgml
index cfa68084179..67f512d1240 100644
--- a/doc/src/sgml/fdwhandler.sgml
+++ b/doc/src/sgml/fdwhandler.sgml
@@ -429,11 +429,14 @@ AddForeignUpdateTargets (Query *parsetree,
<literal>wholerow</literal>, or
<literal>wholerow<replaceable>N</></literal>, as the core system can
generate junk columns of these names.
+ If the extra expressions are more complex than simple Vars, they
+ must be run through <function>eval_const_expressions</function>
+ before adding them to the targetlist.
</para>
<para>
- This function is called in the rewriter, not the planner, so the
- information available is a bit different from that available to the
+ Although this function is called during planning, the
+ information provided is a bit different from that available to other
planning routines.
<literal>parsetree</> is the parse tree for the <command>UPDATE</> or
<command>DELETE</> command, while <literal>target_rte</> and
diff --git a/doc/src/sgml/rules.sgml b/doc/src/sgml/rules.sgml
index bcbc1703355..6344da95855 100644
--- a/doc/src/sgml/rules.sgml
+++ b/doc/src/sgml/rules.sgml
@@ -167,12 +167,12 @@
<para>
<command>DELETE</command> commands don't need a normal target list
- because they don't produce any result. Instead, the rule system
+ because they don't produce any result. Instead, the planner
adds a special <acronym>CTID</> entry to the empty target list,
to allow the executor to find the row to be deleted.
(<acronym>CTID</> is added when the result relation is an ordinary
- table. If it is a view, a whole-row variable is added instead,
- as described in <xref linkend="rules-views-update">.)
+ table. If it is a view, a whole-row variable is added instead, by
+ the rule system, as described in <xref linkend="rules-views-update">.)
</para>
<para>
@@ -194,7 +194,7 @@
column = expression</literal> part of the command. The planner will
handle missing columns by inserting expressions that copy the values
from the old row into the new one. Just as for <command>DELETE</>,
- the rule system adds a <acronym>CTID</> or whole-row variable so that
+ a <acronym>CTID</> or whole-row variable is added so that
the executor can identify the old row to be updated.
</para>