]> granicus.if.org Git - postgresql/commit
Handle unaligned SerializeSnapshot() buffer.
authorNoah Misch <noah@leadboat.com>
Thu, 2 Mar 2017 05:03:27 +0000 (00:03 -0500)
committerNoah Misch <noah@leadboat.com>
Thu, 2 Mar 2017 05:03:32 +0000 (00:03 -0500)
commit0cc864b002b0b4a5970e2fdc9445216d0a23b7d6
tree408c7563890c3221eba7874f0688dc9b44882492
parent3a1a422fa57a193f5dda93ea1b7941fdac42ac96
Handle unaligned SerializeSnapshot() buffer.

Likewise in RestoreSnapshot().  Do so by copying between the user buffer
and a stack buffer of known alignment.  Back-patch to 9.6, where this
last applies cleanly.  In master, the select_parallel test dies with
SIGBUS on "Oracle Solaris 10 1/13 s10s_u11wos_24a SPARC", building
32-bit with gcc 4.9.2.  In 9.6 and 9.5, the buffers in question happen
to be sufficiently-aligned, and this change is mere insurance against
future 9.6 changes or extension code compromising that.
src/backend/utils/time/snapmgr.c