pgsql: Use zic's new "-b slim" option to generate smaller timezonefile - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Use zic's new "-b slim" option to generate smaller timezonefile
Date
Msg-id E1hzlHQ-0001wI-4s@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Use zic's new "-b slim" option to generate smaller timezone files.

IANA tzcode release 2019b adds an option that tells zic not to emit
the old 32-bit section of the timezone files, and to skip some other
space-wasting hacks needed for compatibility with old timezone client
libraries.  Since we only expect our own code to use the timezone data
we install, and our code is up-to-date with 2019b, there's no apparent
reason not to generate the smallest possible files.

Unfortunately, while the individual zone files do get significantly
smaller in many cases, they were not that big to begin with; which
means that no real space savings ensues on filesystems that don't
optimize small files.  (For instance, on ext4 with 4K block size,
"du" says the installed timezone tree is the same size as before.)
Still, it seems worth making the change, if only because this is
presumably the wave of the future.  At the very least, we'll save
some cycles while reading a zone file.

But given the marginal value and the fact that this is a new code
path, it doesn't seem worth the risk of back-patching this change
into stable branches.  Hence, unlike most of our timezone-related
changes, apply to HEAD only.

Discussion: https://postgr.es/m/24998.1563403327@sss.pgh.pa.us

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/a12079109686e75c833b0b04925af8cb2fa011c0

Modified Files
--------------
src/timezone/Makefile     | 2 +-
src/tools/msvc/Install.pm | 5 +++--
2 files changed, 4 insertions(+), 3 deletions(-)


pgsql-committers by date:

Previous
From: Alvaro Herrera
Date:
Subject: pgsql: Replace genetic algorithm ASCII-art with a real figure
Next
From: Tom Lane
Date:
Subject: pgsql: Add "headerscheck" script to test header-file compilabilityunde