Include the string terminator in GID size calculation
authorPavan Deolasee <[email protected]>
Tue, 1 Mar 2016 13:27:23 +0000 (18:57 +0530)
committerPavan Deolasee <[email protected]>
Tue, 18 Oct 2016 10:00:18 +0000 (15:30 +0530)
src/backend/access/transam/twophase.c

index 61b9feb2f043818c86ee69fe84c482038f841adc..67b9fb0d743a202e23165cc5cb1f2519fd3693b6 100644 (file)
@@ -995,7 +995,7 @@ StartPrepare(GlobalTransaction gxact)
        hdr.nabortrels = smgrGetPendingDeletes(false, &abortrels);
        hdr.ninvalmsgs = xactGetCommittedInvalidationMessages(&invalmsgs,
                                                                                                                  &hdr.initfileinval);
-       hdr.gidlen = strlen(gxact->gid);
+       hdr.gidlen = strlen(gxact->gid) + 1; /* Include '\0' */
 
        save_state_data(&hdr, sizeof(TwoPhaseFileHeader));
        save_state_data(gxact->gid, hdr.gidlen);