postgresql/doc/src/sgml
Robert Haas ae65f6066d Provide for forward compatibility with future minor protocol versions.
Previously, any attempt to request a 3.x protocol version other than
3.0 would lead to a hard connection failure, which made the minor
protocol version really no different from the major protocol version
and precluded gentle protocol version breaks.  Instead, when the
client requests a 3.x protocol version where x is greater than 0, send
the new NegotiateProtocolVersion message to convey that we support
only 3.0.  This makes it possible to introduce new minor protocol
versions without requiring a connection retry when the server is
older.

In addition, if the startup packet includes name/value pairs where
the name starts with "_pq_.", assume that those are protocol options,
not GUCs.  Include those we don't support (i.e. all of them, at
present) in the NegotiateProtocolVersion message so that the client
knows they were not understood.  This makes it possible for the
client to request previously-unsupported features without bumping
the protocol version at all; the client can tell from the server's
response whether the option was understood.

It will take some time before servers that support these new
facilities become common in the wild; to speed things up and make
things easier for a future 3.1 protocol version, back-patch to all
supported releases.

Robert Haas and Badrul Chowdhury

Discussion: http://postgr.es/m/BN6PR21MB0772FFA0CBD298B76017744CD1730@BN6PR21MB0772.namprd21.prod.outlook.com
Discussion: http://postgr.es/m/30788.1498672033@sss.pgh.pa.us
2017-11-21 13:56:24 -05:00
..
ref Parameter toast_tuple_target controls TOAST for new rows 2017-11-20 09:50:10 +11:00
.gitignore git-ignore intermediate files from new docs toolchain. 2017-05-15 15:48:40 -04:00
acronyms.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
adminpack.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
advanced.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
amcheck.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
arch-dev.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
array.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
auth-delay.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
auto-explain.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
backup.sgml Remove secondary checkpoint 2017-11-07 12:56:30 -05:00
bgworker.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
biblio.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
bki.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
bloom.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
brin.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
btree-gin.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
btree-gist.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
catalogs.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
charset.sgml Fix typo 2017-10-30 14:37:44 +01:00
citext.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
client-auth.sgml Remove inbound links to sql-createuser 2017-10-31 14:04:49 -04:00
config.sgml Add parallel_leader_participation GUC. 2017-11-15 08:23:18 -05:00
contrib-spi.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
contrib.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
cube.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
custom-scan.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
datatype.sgml Support domains over composite types. 2017-10-26 13:47:45 -04:00
datetime.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
dblink.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
ddl.sgml Add hash partitioning. 2017-11-09 18:07:44 -05:00
dfunc.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
dict-int.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
dict-xsyn.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
diskusage.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
dml.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
docguide.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
earthdistance.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
ecpg.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
errcodes.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
event-trigger.sgml Mention CREATE/DROP STATISTICS in event triggers docs 2017-11-13 19:36:23 +01:00
extend.sgml Documentation improvements around domain types. 2017-10-24 14:08:40 -04:00
external-projects.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
fdwhandler.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
features.sgml Update SQL features/conformance information to SQL:2011 2012-05-17 09:50:04 +03:00
file-fdw.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
filelist.sgml Remove unused documentation file 2017-10-09 07:47:44 -04:00
func.sgml Fix quoted-substring handling in format parsing for to_char/to_number/etc. 2017-11-18 12:16:37 -05:00
fuzzystrmatch.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
generate-errcodes-table.pl Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
generic-wal.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
geqo.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
gin.sgml Change TRUE/FALSE to true/false 2017-11-08 11:37:28 -05:00
gist.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
high-availability.sgml doc: Mention pg_stat_wal_receiver in streaming replication docs 2017-11-01 14:32:05 -04:00
history.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
hstore.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
indexam.sgml Change TRUE/FALSE to true/false 2017-11-08 11:37:28 -05:00
indices.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
info.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
information_schema.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
install-windows.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
installation.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
intagg.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
intarray.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
intro.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
isn.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
json.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
keywords.sgml Update key words table for version 10 2017-06-08 17:19:50 -04:00
legal.sgml Update manual set of copyright files for 2017 2017-01-03 13:45:17 -05:00
libpq.sgml Change TRUE/FALSE to true/false 2017-11-08 11:37:28 -05:00
lo.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
lobj.sgml Document changes in large-object privilege checking. 2017-11-14 12:33:10 -05:00
logical-replication.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
logicaldecoding.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
ltree.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
maintenance.sgml Doc: update URL for check_postgres. 2017-11-01 22:07:14 -04:00
Makefile Add -wnet to SP invocations 2017-11-10 08:31:08 -05:00
manage-ag.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
mk_feature_tables.pl Clean up Perl code according to perlcritic 2017-03-27 08:18:22 -04:00
monitoring.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
mvcc.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
nls.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
notation.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
oid2name.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
pageinspect.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
parallel.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
passwordcheck.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
perform.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
pgbuffercache.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
pgcrypto.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
pgfreespacemap.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
pgprewarm.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
pgrowlocks.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
pgstandby.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
pgstatstatements.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
pgstattuple.sgml doc: Clarify pgstattuple privileges information 2017-11-02 12:13:36 -04:00
pgtrgm.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
pgvisibility.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
planstats.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
plhandler.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
plperl.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
plpgsql.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
plpython.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
pltcl.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
postgres-fdw.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
postgres.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
problems.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
protocol.sgml Provide for forward compatibility with future minor protocol versions. 2017-11-21 13:56:24 -05:00
queries.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
query.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
rangetypes.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
README.links docs: improve xref description for xreflabel and refentry links 2014-01-30 12:26:18 -05:00
recovery-config.sgml doc: Update text for new recovery_target_lsn setting 2017-11-04 14:42:20 -04:00
reference.sgml Implement multivariate n-distinct coefficients 2017-03-24 14:06:10 -03:00
regress.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
release-7.4.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
release-8.0.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
release-8.1.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
release-8.2.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
release-8.3.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
release-8.4.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
release-9.0.sgml Convert another SGML ID to lower case 2017-10-21 12:25:31 -04:00
release-9.1.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
release-9.2.sgml Last-minute updates for release notes. 2017-11-06 12:02:30 -05:00
release-9.3.sgml Last-minute updates for release notes. 2017-11-06 12:02:30 -05:00
release-9.4.sgml Last-minute updates for release notes. 2017-11-06 12:02:30 -05:00
release-9.5.sgml Last-minute updates for release notes. 2017-11-06 12:02:30 -05:00
release-9.6.sgml Last-minute updates for release notes. 2017-11-06 12:02:30 -05:00
release-10.sgml Last-minute updates for release notes. 2017-11-06 12:02:30 -05:00
release-old.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
release.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
replication-origins.sgml Fix ordering/categorization of some recently-added system views. 2016-05-05 12:33:29 -04:00
rowtypes.sgml Support domains over composite types. 2017-10-26 13:47:45 -04:00
rules.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
runtime.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
seg.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
sepgsql.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
sourcerepo.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
sources.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
spgist.sgml Change TRUE/FALSE to true/false 2017-11-08 11:37:28 -05:00
spi.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
sslinfo.sgml Change TRUE/FALSE to true/false 2017-11-08 11:37:28 -05:00
standalone-install.xml Get rid of parameterized marked sections in SGML 2017-09-27 11:26:08 -04:00
standalone-profile.xsl Get rid of parameterized marked sections in SGML 2017-09-27 11:26:08 -04:00
start.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
storage.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
stylesheet-common.xsl doc: Change xref style to number only 2017-04-03 10:50:32 -04:00
stylesheet-fo.xsl doc: Improve PDF bookmarks 2017-08-15 14:37:44 -04:00
stylesheet-hh.xsl Fix display of <command> elements on man pages 2012-04-30 21:18:03 +03:00
stylesheet-html-common.xsl doc: Convert ids to upper case at build time 2017-11-03 14:14:02 -04:00
stylesheet-html-nochunk.xsl Remove use of Jade and DSSSL 2017-04-06 22:09:11 -04:00
stylesheet-man.xsl doc: Supply XSLT template for superscript element in man pages 2016-07-17 17:01:07 -04:00
stylesheet-speedup-common.xsl doc: Further speed improvements for HTML XSLT build 2016-12-22 15:41:44 -05:00
stylesheet-speedup-xhtml.xsl doc: Further speed improvements for HTML XSLT build 2016-12-22 15:41:44 -05:00
stylesheet-text.xsl Create INSTALL file via XSLT 2017-03-08 08:41:23 -05:00
stylesheet.css doc: Tweak CSS 2017-04-12 15:41:41 -04:00
stylesheet.xsl Change documentation references to PG website to use https: not http: 2017-05-20 21:50:47 -04:00
syntax.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
tablefunc.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
tablesample-method.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
tcn.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
test-decoding.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
textsearch.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
trigger.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
tsm-system-rows.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
tsm-system-time.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
typeconv.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
unaccent.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
user-manag.sgml Remove inbound links to sql-createuser 2017-10-31 14:04:49 -04:00
uuid-ossp.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
vacuumlo.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
wal.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
xaggr.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
xfunc.sgml Support domains over composite types. 2017-10-26 13:47:45 -04:00
xindex.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
xml2.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
xoper.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
xplang.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
xtypes.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00

<!-- doc/src/sgml/README.links -->

Linking within SGML documents can be confusing, so here is a summary:


Intra-document Linking
----------------------

<xref>
	use to get chapter/section number from the title of the target
	link, or xreflabel if defined at the target, or refentrytitle if target
        is a refentry;  has no close tag
	http://www.oasis-open.org/docbook/documentation/reference/html/xref.html

<link>
	use to supply text for the link, requires </link>
	http://www.oasis-open.org/docbook/documentation/reference/html/link.html

linkend=
	controls the target of the link/xref, required

endterm=
	for <xref>, allows the text of the link/xref to be taken from a
	different link target title


External Linking
----------------

<ulink>
	like <link>, but uses a URL (not a document target);  requires
	</ulink>; if no text is specified, the URL appears as the link
	text
	http://www.oasis-open.org/docbook/documentation/reference/html/ulink.html

url=
	used by <ulink> to specify the URL, required


Guidelines
----------

o  If you want to supply text, use <link>, else <xref>
o  Do not use text with <ulink> so the URL appears in printed output
o  Specific nouns like GUC variables, SQL commands, and contrib modules
   usually have xreflabels