Streaming basebackups vs pg_stat_tmp - Mailing list pgsql-hackers

From Magnus Hagander
Subject Streaming basebackups vs pg_stat_tmp
Date
Msg-id CABUevEwiPFm6OGDLBax=ANqLAOoA71i9ScTOoaKPJ0T4TrRVgw@mail.gmail.com
Whole thread Raw
Responses Re: Streaming basebackups vs pg_stat_tmp  (David Steele <david@pgmasters.net>)
List pgsql-hackers
In 9.6 and earlier, if you change pg_stat_tmp to be a symlink, basebackups no longer work. That's because we create symlink entry in the tarfile for it instead of an empty directory, but with no data, which Breaks Everything (TM).

This was fixed in head in 6ad8ac60, which introduced "more excludes", due to the refactoring. That commit message refers to it also fixing this bug, but it seems the bugfix was never backpatched.

Or did I miss something?

Attached patch fixds this (based on 9.5 which is where I ran into it, but it needs to go in other back branches as well) by bringing back a (modified) version of the functoin _tarWriteDir() to the back branches.

I'd appreciate a look-over before committing, but it works fine in my tests.
Attachment

pgsql-hackers by date:

Previous
From: Gilles Darold
Date:
Subject: Re: Patch to implement pg_current_logfile() function
Next
From: Amit Kapila
Date:
Subject: Re: Proposal: scan key push down to heap [WIP]