Skip site navigation (1) Skip section navigation (2)

Patch: incorrect array offset in backend replication tar header

From: Brian Weaver <cmdrclueless(at)gmail(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Patch: incorrect array offset in backend replication tar header
Date: 2012-09-24 23:51:20
Message-ID: CAAhXZGvwGwHN1m6jtgu4hGyr_Hjq9vkAPn4thNVkwvomw0ftxw@mail.gmail.com (view raw or flat)
Thread:
Lists: pgsql-hackers
While researching the way streaming replication works I was examining
the construction of the tar file header. By comparing documentation on
the tar header format from various sources I certain the following
patch should be applied to so the group identifier is put into thee
header properly.

While I realize that wikipedia isn't always the best source of
information, the header offsets seem to match the other documentation
I've found. The format is just easier to read on wikipedia

http://en.wikipedia.org/wiki/Tar_(file_format)#File_header

Here is the trivial patch:

diff --git a/src/backend/replication/basebackup.c
b/src/backend/replication/basebackup.c
index 4aaa9e3..524223e 100644
--- a/src/backend/replication/basebackup.c
+++ b/src/backend/replication/basebackup.c
@@ -871,7 +871,7 @@ _tarWriteHeader(const char *filename, const char
*linktarget,
        sprintf(&h[108], "%07o ", statbuf->st_uid);

        /* Group 8 */
-       sprintf(&h[117], "%07o ", statbuf->st_gid);
+       sprintf(&h[116], "%07o ", statbuf->st_gid);

        /* File size 12 - 11 digits, 1 space, no NUL */
        if (linktarget != NULL || S_ISDIR(statbuf->st_mode))


-- Brian

-- 

/* insert witty comment here */


Responses

pgsql-hackers by date

Next:From: Michael PaquierDate: 2012-09-24 23:57:14
Subject: Re: PostgreSQL in the French news
Previous:From: Andres FreundDate: 2012-09-24 23:46:18
Subject: Re: DROP INDEX CONCURRENTLY is not really concurrency safe & leaves around undroppable indexes

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group