postgresql/src
Tom Lane 5c837ddd70 Rethink flex flags for syncrep_scanner.l.
Using flex's -i switch to achieve case-insensitivity is not a very safe
practice, because the scanner's behavior may then depend on the locale
that flex was invoked in.  In the particular example at hand, that's
not academic: the possible matches for "FIRST" will be different in a
Turkish locale than elsewhere.  Do it the hard way instead, as our
other scanners do.

Also, drop use of -b -CF -p, because this scanner is only used when
parsing the contents of a GUC variable.  That's not done often, and
the amount of text to be parsed can be expected to be trivial, so
prioritizing scanner speed over code size seems like quite the wrong
tradeoff.  Using flex's default optimization options reduces the
size of syncrep_gram.o by more than 50%.

The case-insensitivity problem is new in HEAD (cf commit 3901fd70c).
The poor choice of optimization flags exists also in 9.6, but it doesn't
seem important enough to back-patch.

Discussion: https://postgr.es/m/24403.1495225931@sss.pgh.pa.us
2017-05-19 18:05:20 -04:00
..
backend Rethink flex flags for syncrep_scanner.l. 2017-05-19 18:05:20 -04:00
bin pg_upgrade: Handle hash index upgrades more smoothly. 2017-05-19 16:49:38 -04:00
common Post-PG 10 beta1 pgperltidy run 2017-05-17 19:01:23 -04:00
fe_utils Allow psql variable substitution to occur in backtick command strings. 2017-04-01 21:44:54 -04:00
include Post-PG 10 beta1 pgindent run 2017-05-17 16:31:56 -04:00
interfaces libpq: Try next host if one of them times out. 2017-05-19 16:19:51 -04:00
makefiles Try to fix non-MSVC Windows builds in the wake of logical replication. 2017-01-20 12:51:31 -05:00
pl Post-PG 10 beta1 pgperltidy run 2017-05-17 19:01:23 -04:00
port Post-PG 10 beta1 pgindent run 2017-05-17 16:31:56 -04:00
template Remove "sco" and "unixware" ports. 2016-10-11 11:26:04 -04:00
test Copy partitioned_rels lists to avoid shared substructure. 2017-05-19 15:26:05 -04:00
timezone Guard against null t->tm_zone in strftime.c. 2017-05-07 12:33:12 -04:00
tools Post-PG 10 beta1 pgperltidy run 2017-05-17 19:01:23 -04:00
tutorial Recommend wrappers of PG_DETOAST_DATUM_PACKED(). 2017-03-12 19:35:33 -04:00
.gitignore
DEVELOPERS
Makefile Remove redundant coverage target 2017-02-17 08:56:57 -05:00
Makefile.global.in Specify --outputdir for isolation install check, not just plain check. 2017-05-13 15:13:17 -07:00
Makefile.shlib Remove support for bcc and msvc standalone libpq builds 2017-04-11 15:22:21 +02:00
nls-global.mk nls-global.mk: search build dir for source files, too 2016-06-07 18:55:18 -04:00