disabled_docs_v3.patch
application/octet-stream
Filename: disabled_docs_v3.patch
Type: application/octet-stream
Part: 0
Message:
Re: On disable_cost
Patch
Format: unified
Series: patch v3
| File | + | − |
|---|---|---|
| doc/src/sgml/perform.sgml | 25 | 0 |
diff --git a/doc/src/sgml/perform.sgml b/doc/src/sgml/perform.sgml
index ff689b6524..cd12b9ce48 100644
--- a/doc/src/sgml/perform.sgml
+++ b/doc/src/sgml/perform.sgml
@@ -578,6 +578,31 @@ WHERE t1.unique1 < 100 AND t1.unique2 = t2.unique2;
discussed <link linkend="using-explain-analyze">below</link>.
</para>
+ <para>
+ When using the enable/disable flags to disable plan node types, many of
+ the flags only discourage the use of the corresponding plan node and don't
+ outright disallow the planner's ability to use the plan node type. This
+ is by design so that the planner still maintains the ability to form a
+ plan for a given query. When the resulting plan contains a disabled node,
+ the <command>EXPLAIN</command> output will indicate this fact.
+
+<screen>
+SET enable_seqscan = off;
+EXPLAIN SELECT * FROM unit;
+
+ QUERY PLAN
+---------------------------------------------------------
+ Seq Scan on unit (cost=0.00..21.30 rows=1130 width=44)
+ Disabled: true
+</screen>
+ </para>
+
+ <para>
+ Because the <literal>unit</literal> table has no indexes, there is no
+ other means to read the table data, so the sequential scan is the only
+ option available to the query planner.
+ </para>
+
<para>
<indexterm>
<primary>subplan</primary>