1
0
mirror of https://github.com/postgres/postgres.git synced 2025-06-11 20:28:21 +03:00

Remove sql_inheritance GUC.

This backward-compatibility GUC is long overdue for removal.

Discussion: http://postgr.es/m/CA+TgmoYe+EG7LdYX6pkcNxr4ygkP4+A=jm9o-CPXyOvRiCNwaQ@mail.gmail.com
This commit is contained in:
Robert Haas
2016-12-23 07:35:01 -05:00
parent 7819ba1ef6
commit e13486eba0
14 changed files with 20 additions and 93 deletions

View File

@ -7394,36 +7394,6 @@ dynamic_library_path = 'C:\tools\postgresql;H:\my_project\lib;$libdir'
</listitem>
</varlistentry>
<varlistentry id="guc-sql-inheritance" xreflabel="sql_inheritance">
<term><varname>sql_inheritance</varname> (<type>boolean</type>)
<indexterm>
<primary><varname>sql_inheritance</> configuration parameter</primary>
</indexterm>
<indexterm><primary>inheritance</></>
</term>
<listitem>
<para>
This setting controls whether undecorated table references are
considered to include inheritance child tables. The default is
<literal>on</>, which means child tables are included (thus,
a <literal>*</> suffix is assumed by default). If turned
<literal>off</>, child tables are not included (thus, an
<literal>ONLY</literal> prefix is assumed). The SQL standard
requires child tables to be included, so the <literal>off</> setting
is not spec-compliant, but it is provided for compatibility with
<productname>PostgreSQL</> releases prior to 7.1.
See <xref linkend="ddl-inherit"> for more information.
</para>
<para>
Turning <varname>sql_inheritance</> off is deprecated, because that
behavior has been found to be error-prone as well as contrary to SQL
standard. Discussions of inheritance behavior elsewhere in this
manual generally assume that it is <literal>on</>.
</para>
</listitem>
</varlistentry>
<varlistentry id="guc-standard-conforming-strings" xreflabel="standard_conforming_strings">
<term><varname>standard_conforming_strings</varname> (<type>boolean</type>)
<indexterm><primary>strings</><secondary>standard conforming</></>

View File

@ -2529,11 +2529,9 @@ SELECT name, altitude
WHERE altitude &gt; 500;
</programlisting>
Writing <literal>*</> is not necessary, since this behavior is
the default (unless you have changed the setting of the
<xref linkend="guc-sql-inheritance"> configuration option).
However writing <literal>*</> might be useful to emphasize that
additional tables will be searched.
Writing <literal>*</> is not necessary, since this behavior is always
the default. However, this syntax is still supported for
compatibility with older releases where the default could be changed.
</para>
<para>

View File

@ -145,11 +145,9 @@ FROM <replaceable>table_reference</replaceable> <optional>, <replaceable>table_r
<para>
Instead of writing <literal>ONLY</> before the table name, you can write
<literal>*</> after the table name to explicitly specify that descendant
tables are included. Writing <literal>*</> is not necessary since that
behavior is the default (unless you have changed the setting of the <xref
linkend="guc-sql-inheritance"> configuration option). However writing
<literal>*</> might be useful to emphasize that additional tables will be
searched.
tables are included. There is no real reason to use this syntax any more,
because searching descendent tables is now always the default behavior.
However, it is supported for compatibility with older releases.
</para>
<sect3 id="queries-join">