Michael Paquier 4b87b605bb Work around failure with SPARC in base backup code
As reported by buildfarm members thorntail and billbug, both running
SPARC, 4a92c8c29b is making the base backup code unstable on such
platforms.

The only suspicion I have at this stage is a stack frame issue, pointing
to something unrelated to 4a92c8c29b, that the addition of an array
worth a size of PG_CONTROL_FILE_SIZE within perform_base_backup() is
able to trigger.

thorntail complained with a SIGBUS, pointing at misaligned access, with
a sporadic failure.  billbug complained with a SIGSEGV (siglongjmp issue
with PG_ENSURE_ERROR_CLEANUP perhaps?) in a more stable fashion.

The code is changed to use a palloc0() instead, which should cool down
the problem with the stack, hopefully.  Unfortunately, I could not test
this hypothesis directly, lacking an environment able to do so.

Discussion: https://postgr.es/m/auGYf3jXtzLrr4gA@paquier.xyz
Backpatch-through: 15
2026-10-29 09:44:23 +09:00
2025-08-14 12:18:23 -04:00
2026-01-07 15:49:05 +01:00
2019-12-18 09:13:13 +01:00
2025-08-15 10:29:16 +02:00
2026-08-10 16:57:41 -04:00
2026-08-10 16:57:41 -04:00
2026-01-01 13:24:10 -05:00
2020-02-10 20:47:50 +01:00
2020-02-10 20:47:50 +01:00
2020-02-10 20:47:50 +01:00

PostgreSQL Database Management System
=====================================

This directory contains the source code distribution of the PostgreSQL
database management system.

PostgreSQL is an advanced object-relational database management system
that supports an extended subset of the SQL standard, including
transactions, foreign keys, subqueries, triggers, user-defined types
and functions.  This distribution also contains C language bindings.

PostgreSQL has many language interfaces, many of which are listed here:

	https://www.postgresql.org/download/

See the file INSTALL for instructions on how to build and install
PostgreSQL.  That file also lists supported operating systems and
hardware platforms and contains information regarding any other
software packages that are required to build or run the PostgreSQL
system.  Copyright and license information can be found in the
file COPYRIGHT.  A comprehensive documentation set is included in this
distribution; it can be read as described in the installation
instructions.

The latest version of this software may be obtained at
https://www.postgresql.org/download/.  For more information look at our
web site located at https://www.postgresql.org/.
Languages
C 83.9%
PLpgSQL 6.2%
Perl 5.4%
Yacc 1.2%
Meson 0.7%
Other 2.4%