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 a2f8137713e..0ed3a47233d 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</replaceable></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</literal> is the parse tree for the <command>UPDATE</command> or
<command>DELETE</command> command, while <literal>target_rte</literal> and
diff --git a/doc/src/sgml/rules.sgml b/doc/src/sgml/rules.sgml
index 2074fcca8ea..3372b1ac2b1 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</acronym> entry to the empty target list,
to allow the executor to find the row to be deleted.
(<acronym>CTID</acronym> 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</command>,
- the rule system adds a <acronym>CTID</acronym> or whole-row variable so that
+ a <acronym>CTID</acronym> or whole-row variable is added so that
the executor can identify the old row to be updated.
</para>