postgresql/src/backend
Tom Lane 55d26ff638 Rationalize handling of single and double quotes in bootstrap data.
Change things around so that proper quoting of values interpolated into
the BKI data by initdb is the responsibility of initdb, not something
we half-heartedly handle by putting double quotes into the raw BKI data.
(Note: experimentation shows that it still doesn't work to put a double
quote into the initial superuser username, but that's the fault of
inadequate quoting while interpolating the name into SQL scripts;
the BKI aspect of it works fine now.)

Having done that, we can remove the special-case handling of values
that look like "something" from genbki.pl, and instead teach it to
escape double --- and single --- quotes properly.  This removes the
nowhere-documented need to treat those specially in the BKI source
data; whatever you write will be passed through unchanged into the
inserted data value, modulo Perl's rules about single-quoted strings.

Add documentation explaining the (pre-existing) handling of backslashes
in the BKI data.

Per an earlier discussion with John Naylor.

Discussion: https://postgr.es/m/CAJVSVGUNao=-Q2-vAN3PYcdF5tnL5JAHwGwzZGuYHtq+Mk_9ng@mail.gmail.com
2018-04-17 19:53:50 -04:00
..
access Fix confusion on the padding of GIDs in on commit and abort records. 2018-04-17 16:10:42 -04:00
bootstrap Rationalize handling of array type names in bootstrap data. 2018-04-17 18:29:11 -04:00
catalog Rationalize handling of single and double quotes in bootstrap data. 2018-04-17 19:53:50 -04:00
commands Add more infinite recursion detection while locking a view. 2018-04-17 16:59:17 +09:00
executor Update Append's idea of first_partial_plan 2018-04-17 16:25:02 -03:00
foreign Remove bogus "extern" annotations on function definitions. 2018-02-19 12:07:44 -05:00
jit Fix partial-build problems introduced by having more generated headers. 2018-04-09 16:42:10 -04:00
lib Fix non-portable use of round(). 2018-03-31 20:26:47 -07:00
libpq Make be-secure-common.c more consistent for future SSL implementations 2018-04-02 11:37:40 -04:00
main Update copyright for 2018 2018-01-02 23:30:12 -05:00
nodes Revert MERGE patch 2018-04-12 11:22:56 +01:00
optimizer Reorganize partitioning code 2018-04-14 21:12:14 -03:00
parser Reorganize partitioning code 2018-04-14 21:12:14 -03:00
partitioning Reorganize partitioning code 2018-04-14 21:12:14 -03:00
po Translation updates 2017-08-07 13:55:34 -04:00
port Fix and improve pg_atomic_flag fallback implementation. 2018-04-06 19:55:32 -07:00
postmaster Allocate enough shared string memory for stats of auxiliary processes. 2018-04-11 23:39:49 +03:00
regex Update copyright for 2018 2018-01-02 23:30:12 -05:00
replication Don't attempt to verify checksums on new pages 2018-04-15 14:05:56 +02:00
rewrite Simplify view-expansion code in rewriteHandler.c. 2018-04-14 21:01:03 -04:00
snowball Avoid unnecessary use of pg_strcasecmp for already-downcased identifiers. 2018-01-26 18:25:14 -05:00
statistics Fast ALTER TABLE ADD COLUMN with a non-NULL default 2018-03-28 10:43:52 +10:30
storage Fix incorrect close() call in dsm_impl_mmap(). 2018-04-10 18:34:54 -04:00
tcop Reorganize partitioning code 2018-04-14 21:12:14 -03:00
tsearch Improve regression test coverage for src/backend/tsearch/spell.c. 2018-04-13 13:49:52 -04:00
utils Clean up callers of JsonbIteratorNext(). 2018-04-15 12:40:01 -04:00
.gitignore
common.mk Remove PARTIAL_LINKING build mode. 2018-03-30 17:33:04 -07:00
Makefile Fix partial-build problems introduced by having more generated headers. 2018-04-09 16:42:10 -04:00
nls.mk Translation updates 2017-05-15 12:19:54 -04:00