pgsql: Fix bogus initialization of replication origin shared memory sta

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Fix bogus initialization of replication origin shared memory sta
Дата
Msg-id E1jZjP3-0001Cd-UJ@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Fix bogus initialization of replication origin shared memory state.

The previous coding zeroed out offsetof(ReplicationStateCtl, states)
more bytes than it was entitled to, as a consequence of starting the
zeroing from the wrong pointer (or, if you prefer, using the wrong
calculation of how much to zero).

It's unsurprising that this has not caused any reported problems,
since it can be expected that the newly-allocated block is at the end
of what we've used in shared memory, and we always make the shmem
block substantially bigger than minimally necessary.  Nonetheless,
this is wrong and it could bite us someday; plus it's a dangerous
model for somebody to copy.

This dates back to the introduction of this code (commit 5aa235042),
so back-patch to all supported branches.

Branch
------
REL9_5_STABLE

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

Modified Files
--------------
src/backend/replication/logical/origin.c | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: pgsql: Rename assorted LWLock tranches.
Следующее
От: Tom Lane
Дата:
Сообщение: pgsql: Drop the redundant "Lock" suffix from LWLock wait event names.