Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Fix incorrect initialization of BackendActivityBuffer.
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 7 Aug 2018 20:00:44 +0000 (16:00 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 7 Aug 2018 20:01:09 +0000 (16:01 -0400)
Since commit c8e8b5a6e, this has been zeroed out using the wrong length.
In practice the length would always be too small, leading to not zeroing
the whole buffer rather than clobbering additional memory; and that's
pretty harmless, both because shmem would likely start out as zeroes
and because we'd reinitialize any given entry before use.  Still,
it's bogus, so fix it.

Reported by Petru-Florin Mihancea (bug #15312)

Discussion: https://postgr.es/m/153363913073.1303.6518849192351268091@wrigleys.postgresql.org

src/backend/postmaster/pgstat.c

index 3ec23d76ddc613d0817755bc3b6ffc64e2278fa2..83f2764229f0a194645ee557ec35f4ec65d42067 100644 (file)
@@ -2626,7 +2626,7 @@ CreateSharedBackendStatus(void)
 
    if (!found)
    {
-       MemSet(BackendActivityBuffer, 0, size);
+       MemSet(BackendActivityBuffer, 0, BackendActivityBufferSize);
 
        /* Initialize st_activity pointers. */
        buffer = BackendActivityBuffer;