<feed xmlns='http://www.w3.org/2005/Atom'>
<title>postgresql.git/doc/src/sgml/installation.sgml, branch master</title>
<subtitle>This is the main PostgreSQL git repository.</subtitle>
<id>http://git.postgresql.org/cgit/postgresql.git/atom?h=master</id>
<link rel='self' href='http://git.postgresql.org/cgit/postgresql.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='http://git.postgresql.org/cgit/postgresql.git/'/>
<updated>2026-07-16T10:38:37Z</updated>
<entry>
<title>Revert "Make PL/Tcl require Tcl 8.6 or later"</title>
<updated>2026-07-16T10:38:37Z</updated>
<author>
<name>Peter Eisentraut</name>
</author>
<published>2026-07-16T10:38:37Z</published>
<link rel='alternate' type='text/html' href='http://git.postgresql.org/cgit/postgresql.git/commit/?id=f4f77f557bb1a173f82be42770a28758732f4cc0'/>
<id>urn:sha1:f4f77f557bb1a173f82be42770a28758732f4cc0</id>
<content type='text'>
This reverts commit b6d3ccf2f5f1a179e25e277bae3f432cc084ce58.

macOS still ships with Tcl 8.5.
</content>
</entry>
<entry>
<title>Require ICU 55 or later</title>
<updated>2026-07-16T10:03:05Z</updated>
<author>
<name>Peter Eisentraut</name>
</author>
<published>2026-07-16T09:47:41Z</published>
<link rel='alternate' type='text/html' href='http://git.postgresql.org/cgit/postgresql.git/commit/?id=4854b2373c738a3e2fe5a46c2667d908f7c7e13a'/>
<id>urn:sha1:4854b2373c738a3e2fe5a46c2667d908f7c7e13a</id>
<content type='text'>
Support for older versions is removed.  Since we no longer support
RHEL 7, we don't need to support these old versions anymore.  This
allows a fair amount of code cleanup, including some code blocks that
specifically catered to old versions that probably received very
little actual testing and use.

Reviewed-by: Jelte Fennema-Nio &lt;postgres@jeltef.nl&gt;
Discussion: https://www.postgresql.org/message-id/flat/CA+hUKGL7trhWiJ4qxpksBztMMTWDyPnP1QN+Lq341V7QL775DA@mail.gmail.com
</content>
</entry>
<entry>
<title>Make PL/Tcl require Tcl 8.6 or later</title>
<updated>2026-07-16T10:03:05Z</updated>
<author>
<name>Peter Eisentraut</name>
</author>
<published>2026-07-16T09:47:41Z</published>
<link rel='alternate' type='text/html' href='http://git.postgresql.org/cgit/postgresql.git/commit/?id=b6d3ccf2f5f1a179e25e277bae3f432cc084ce58'/>
<id>urn:sha1:b6d3ccf2f5f1a179e25e277bae3f432cc084ce58</id>
<content type='text'>
Support for Tcl 8.5 and 8.4 is removed.  Since we no longer support
RHEL 7, we don't need to support these old versions anymore.  This
allows some small amount of code cleanup.

Reviewed-by: Jelte Fennema-Nio &lt;postgres@jeltef.nl&gt;
Discussion: https://www.postgresql.org/message-id/flat/CA+hUKGL7trhWiJ4qxpksBztMMTWDyPnP1QN+Lq341V7QL775DA@mail.gmail.com
</content>
</entry>
<entry>
<title>Raise requirement to Visual Studio 2022</title>
<updated>2026-07-16T10:03:05Z</updated>
<author>
<name>Peter Eisentraut</name>
</author>
<published>2026-07-16T09:47:41Z</published>
<link rel='alternate' type='text/html' href='http://git.postgresql.org/cgit/postgresql.git/commit/?id=6319d6372c8f28cfb30bd2b7b0893f28e44491e6'/>
<id>urn:sha1:6319d6372c8f28cfb30bd2b7b0893f28e44491e6</id>
<content type='text'>
The use of _Generic from commit "Replace __builtin_types_compatible_p
with _Generic" causes compiler errors from VS 2019.  Apparently, that
compiler is just broken for that (even though it appears to support
_Generic in general, for example in commit 59c2f03d1ec).

Per discussion, just drop support for VS 2019 and require at least VS
2022.  This just updates the documentation about that.  In passing,
some information about VS 2026 is added.

Reviewed-by: Jelte Fennema-Nio &lt;postgres@jeltef.nl&gt;
Discussion: https://www.postgresql.org/message-id/flat/CA+hUKGL7trhWiJ4qxpksBztMMTWDyPnP1QN+Lq341V7QL775DA@mail.gmail.com
</content>
</entry>
<entry>
<title>Revert "Change default value of default_toast_compression to "lz4""</title>
<updated>2026-03-04T23:25:35Z</updated>
<author>
<name>Michael Paquier</name>
</author>
<published>2026-03-04T23:25:35Z</published>
<link rel='alternate' type='text/html' href='http://git.postgresql.org/cgit/postgresql.git/commit/?id=4f0b3afab4da87255ee159b96ba531157ee5af3b'/>
<id>urn:sha1:4f0b3afab4da87255ee159b96ba531157ee5af3b</id>
<content type='text'>
This reverts commit 7c1849311e49, due to the fact that more than 60% of
the buildfarm members do not have lz4 installed.  As we are in the last
commit fest of the development cycle, and that it could take a couple
of weeks to stabilize things, this change is reverted for now.

This commit will be reworked in a lighter version, as
default_toast_compression's default can be changed to "lz4" without the
switch from --with-lz4 to --without-lz4.  This approach will keep the
buildfarm at bay, and still allow builds to take advantage of LZ4 in
TOAST by default, as long as the code is compiled with LZ4 support.

A harder requirement based on LZ4 should be achievable at some point,
but it is going to require some work from the buildfarm owners first.
Perhaps this part could be revisited at the beginning of the next
development cycle.

Discussion: https://postgr.es/m/CAOYmi+meTT0NbLbnVqOJD5OKwCtHL86PQ+RZZTrn6umfmHyWaw@mail.gmail.com
</content>
</entry>
<entry>
<title>Change default value of default_toast_compression to "lz4", when available</title>
<updated>2026-03-04T04:05:31Z</updated>
<author>
<name>Michael Paquier</name>
</author>
<published>2026-03-04T04:05:31Z</published>
<link rel='alternate' type='text/html' href='http://git.postgresql.org/cgit/postgresql.git/commit/?id=7c1849311e49ec57cb86b32a9aa630456588c3f0'/>
<id>urn:sha1:7c1849311e49ec57cb86b32a9aa630456588c3f0</id>
<content type='text'>
The default value for default_toast_compression was "pglz".  The main
reason for this choice is that this option is always available, pglz
code being embedded in Postgres.  However, it is known that LZ4 is more
efficient than pglz: less CPU required, more compression on average.  As
of this commit, the default value of default_toast_compression becomes
"lz4", if available.  By switching to LZ4 as the default, users should
see natural speedups on TOAST data reads and/or writes.

Support for LZ4 in TOAST compression was added in Postgres v14, or 5
releases ago.  This should be long enough to consider this feature as
stable.

--with-lz4 is removed, replaced by a --without-lz4 to disable LZ4 in the
builds on an option-basis, following a practice similar to readline or
ICU.  References to --with-lz4 are removed from the documentation.

While at it, quotes are removed from default_toast_compression in
postgresql.conf.sample.  Quotes are not required in this case.  The
in-place value replacement done by initdb if the build supports LZ4
would not use them in the postgresql.conf file added to a
freshly-initialized cluster.

For the reference, a similar switch has been done with ICU in
fcb21b3acdcb.  Some of the changes done in this commit are consistent
with that.

Note: this is going to create some disturbance in the buildfarm, in
environments where lz4 is not installed.

Author: Euler Taveira &lt;euler@eulerto.com&gt;
Reviewed-by: Peter Eisentraut &lt;peter@eisentraut.org&gt;
Reviewed-by: Aleksander Alekseev &lt;aleksander@tigerdata.com&gt;
Discussion: https://posgr.es/m/435df33a-129e-4f0c-a803-f3935c5a5ecb@eisentraut.org
</content>
</entry>
<entry>
<title>Restore AIX support.</title>
<updated>2026-02-23T18:34:22Z</updated>
<author>
<name>Tom Lane</name>
</author>
<published>2026-02-23T18:34:22Z</published>
<link rel='alternate' type='text/html' href='http://git.postgresql.org/cgit/postgresql.git/commit/?id=4a1b05caa55dc14a1f936af78d8d19c843bfd8b9'/>
<id>urn:sha1:4a1b05caa55dc14a1f936af78d8d19c843bfd8b9</id>
<content type='text'>
The concerns that led us to remove AIX support in commit 0b16bb877
have now been alleviated:

1. IBM has stepped forward to provide support, including buildfarm
animal(s).
2. AIX 7.2 and later seem to be fine with large pg_attribute_aligned
requirements.  Since 7.1 is now EOL anyway, we can just cease to
support it.
3. Tossing xlc support overboard seems okay as well.  It's a bit
sad to drop one of the few remaining non-gcc-alike compilers, but
working around xlc's bugs and idiosyncrasies doesn't seem justified
by the theoretical portability benefits.
4. Likewise, we can stop supporting 32-bit AIX builds.  This is
not so much about whether we could build such executables as that
they're too much of a pain to manage in the field, due to limited
address space available for dynamic library loading.
5. We hit on a way to manage catalog column alignment that doesn't
require continuing developer effort (see commit ecae09725).

Hence, this commit reverts 0b16bb877 and some follow-on commits
such as e6bb491bf, except for not putting back XLC support nor
the changes related to catalog column alignment.

Some other notable changes from the way things were in v16:

Prefer unnamed POSIX semaphores on AIX, rather than the default
choice of SysV semaphores.

Include /opt/freeware/lib in -Wl,-blibpath, even when it is not
mentioned anywhere in LDFLAGS.

Remove platform-specific adjustment of MEMSET_LOOP_LIMIT; maybe
that's still the right thing, but it really ought to be re-tested.

Silence compiler warnings related to getpeereid(), wcstombs_l(),
and PAM conversation procs.

Accept "libpythonXXX.a" as an okay name for the Python shared
library (but only on AIX!).

Author: Aditya Kamath &lt;Aditya.Kamath1@ibm.com&gt;
Author: Srirama Kucherlapati &lt;sriram.rk@in.ibm.com&gt;
Co-authored-by: Peter Eisentraut &lt;peter@eisentraut.org&gt;
Reviewed-by: Tom Lane &lt;tgl@sss.pgh.pa.us&gt;
Discussion: https://postgr.es/m/CY5PR11MB63928CC05906F27FB10D74D0FD322@CY5PR11MB6392.namprd11.prod.outlook.com
</content>
</entry>
<entry>
<title>meson: allow disabling building/installation of static libraries.</title>
<updated>2026-02-23T15:45:40Z</updated>
<author>
<name>Peter Eisentraut</name>
</author>
<published>2026-02-23T15:25:54Z</published>
<link rel='alternate' type='text/html' href='http://git.postgresql.org/cgit/postgresql.git/commit/?id=78727dcba32ed374eb2e92df976649bff56e2056'/>
<id>urn:sha1:78727dcba32ed374eb2e92df976649bff56e2056</id>
<content type='text'>
We now support the common meson option -Ddefault_library, with values
'both' (the default), 'shared' (install only shared libraries), and
'static' (install only static libraries).  The 'static' choice doesn't
actually work, since psql and other programs insist on linking to the
shared version of libpq, but it's there pro-forma.  It could be built
out if we really wanted, but since we have never supported the
equivalent in the autoconf build system, there doesn't appear to be an
urgent need.

With an eye to re-supporting AIX, the internal implementation
distinguishes whether to install libpgport.a and other static-only
libraries from whether to build/install the static variant of
libraries that we can build both ways.  This detail isn't exposed as a
meson option, though it could be if there's demand.

The Cirrus CI task SanityCheck now uses -Ddefault_library=shared to
save a little bit of build time (and to test this option).

Author: Peter Eisentraut &lt;peter@eisentraut.org&gt;
Reviewed-by: Andres Freund &lt;andres@anarazel.de&gt;
Reviewed-by: Tom Lane &lt;tgl@sss.pgh.pa.us&gt;
Discussion: https://postgr.es/m/e8aa97db-872b-4087-b073-f296baae948d@eisentraut.org
</content>
</entry>
<entry>
<title>MSVC: Support building for AArch64.</title>
<updated>2026-01-07T19:42:57Z</updated>
<author>
<name>Nathan Bossart</name>
</author>
<published>2026-01-07T19:42:57Z</published>
<link rel='alternate' type='text/html' href='http://git.postgresql.org/cgit/postgresql.git/commit/?id=a516b3f00d7469cbd1885a2c5903fbd62430a2ac'/>
<id>urn:sha1:a516b3f00d7469cbd1885a2c5903fbd62430a2ac</id>
<content type='text'>
This commit does the following to get tests passing for
MSVC/AArch64:

* Implements spin_delay() with an ISB instruction (like we do for
gcc/clang on AArch64).

* Sets USE_ARMV8_CRC32C unconditionally.  Vendor-supported versions
of Windows for AArch64 require at least ARMv8.1, which is where CRC
extension support became mandatory.

* Implements S_UNLOCK() with _InterlockedExchange().  The existing
implementation for MSVC uses _ReadWriteBarrier() (a compiler
barrier), which is insufficient for this purpose on non-TSO
architectures.

There are likely other changes required to take full advantage of
the hardware (e.g., atomics/arch-arm.h, simd.h,
pg_popcount_aarch64.c), but those can be dealt with later.

Author: Niyas Sait &lt;niyas.sait@linaro.org&gt;
Co-authored-by: Greg Burd &lt;greg@burd.me&gt;
Co-authored-by: Dave Cramer &lt;davecramer@gmail.com&gt;
Reviewed-by: Michael Paquier &lt;michael@paquier.xyz&gt;
Reviewed-by: John Naylor &lt;johncnaylorls@gmail.com&gt;
Reviewed-by: Peter Eisentraut &lt;peter@eisentraut.org&gt;
Reviewed-by: Andres Freund &lt;andres@anarazel.de&gt;
Reviewed-by: Thomas Munro &lt;thomas.munro@gmail.com&gt;
Tested-by: Andrew Dunstan &lt;andrew@dunslane.net&gt;
Discussion: https://postgr.es/m/A6152C7C-F5E3-4958-8F8E-7692D259FF2F%40greg.burd.me
Discussion: https://postgr.es/m/CAFPTBD-74%2BAEuN9n7caJ0YUnW5A0r-KBX8rYoEJWqFPgLKpzdg%40mail.gmail.com
</content>
</entry>
<entry>
<title>doc: Assorted documentation improvements</title>
<updated>2025-11-20T14:04:41Z</updated>
<author>
<name>Daniel Gustafsson</name>
</author>
<published>2025-11-20T14:04:41Z</published>
<link rel='alternate' type='text/html' href='http://git.postgresql.org/cgit/postgresql.git/commit/?id=fa0ffa28778fbf4056a77f7b76361d295a737df6'/>
<id>urn:sha1:fa0ffa28778fbf4056a77f7b76361d295a737df6</id>
<content type='text'>
A set of wording improvements and spelling fixes.

Author: Oleg Sibiryakov &lt;o.sibiryakov@postgrespro.ru&gt;
Reviewed-by: Daniel Gustafsson &lt;daniel@yesql.se&gt;
Reviewed-by: Peter Eisentraut &lt;peter@eisentraut.org&gt;
Discussion: https://postgr.es/m/e62bedb5-c26f-4d37-b4ed-ce9b55f1e980@postgrespro.ru
</content>
</entry>
</feed>
