Skip to content

Releases: arenadata/gpbackup

1.29.4_arenadata8

05 Feb 13:55
34fce22
Compare
Choose a tag to compare

What's Changed

  • ADBDEV-4597: Run gpbackup unit-tests on github actions by @RekGRpth in #54
  • ADBDEV-4534 Implement gpdb 7 support for gpbackup ordering patch by @dnskvlnk in #56

Full Changelog: 1.29.4_arenadata7...1.29.4_arenadata8

1.29.4_arenadata7

10 Dec 12:14
9ef2f51
Compare
Choose a tag to compare
Fix pipe recreation when restoring to smaller cluster (#50)

Restoring the same table to smaller cluster is logically divided to batches.
Each batch (one or more) represents a segment's data from larger cluster. The
writer (gprestore helper) writes batches to pipe while the reader (COPY command
initiated by gprestore) reads and applies all data from it. If reader is fast
enough, there can be a race between it and writer. For the next batch, reader
can open flushed, but not yet deleted pipe. This cause writer to wait endlessly
on ENXIO loop and reader to wait on deleted pipe. The solution is to recreate
pipe before flushing. The reader still able to read from such unlinked pipe and
the next reader loop will open a new pipe with the same name.

I spent much time trying to find an explanation of "data holdover bug" mentioned
in pipe recreation comment. To save our time in the future, I decided to update
a comment to clear this problem too. The comment also highlights general
suboptimality of current solution with a plan of future refactoring.

I found no easy way to automate testing of this race condition. To prove a bug,
I advice to add a sleep after flush on non-patched version. Performing a restore
from larger to smaller after this will cause the restore process to hang.

1.29.4_arenadata6

06 Oct 13:30
146799f
Compare
Choose a tag to compare
Merge pull request #39 from arenadata/1.29.4-sync

Sync 1.29.4 changes

1.29.2_arenadata6

25 Aug 14:57
7d7f7d5
Compare
Choose a tag to compare
Merge pull request #36 from arenadata/1.29.2-sync

Sync 1.29.2 changes

1.29.1_arenadata6

04 Aug 11:22
faba58c
Compare
Choose a tag to compare
Backup privilege statements as separate entries (#31)

Before patch, all privilege statements placed in metadata file as one pre-data
section entry. `editStatementsRedirectSchema()`, used by schema redirection,
replace only first schema name occurrence in entry. This caused a bug - only
first privilege statement was modifed. This, in turn, caused vaious errors.
`gprestore`, used on same database, applied most of privilege statements to
original schema. Or, when used on different database, caused `schema does not
exist` error.

From now, `GetPrivilegesStatements()` returns a set of separate statements,
which later used as separate entries. `strings.TrimSpace()` was removed as all
statements are already trimmed.

Existed tests were modified as separate entries have different format. New test
shows correct privilege applying.

1.28.0_arenadata6

16 Jun 14:39
4571242
Compare
Choose a tag to compare
Merge pull request #26 from arenadata/1.28.0-sync

ADBDEV-3822 1.28.0 sync

1.27.0_arenadata6

26 Jan 12:21
dcce34a
Compare
Choose a tag to compare
Merge pull request #25 from arenadata/1.27.0-sync

ADBDEV-3299 1.27.0 sync

1.25.0_arenadata6

11 Oct 12:40
11da7e0
Compare
Choose a tag to compare
ADBDEV-2901 Fix order of restoring metadata  (#23)

Initially, gpbackup created consistent copies of databases, ordering
all object by oid, which created a correct sequence of objects. But in
ADBDEV-1973 (#9) the backup order was changed and the objects started to be
sorted by their size, which broke the logic of backup process. This
patch restores ordering by oid, but doesn't break order based on relation
size, because gpbackup stores two different lists of metadata and data
objects. This patch reorders metadata only, so all objects can be correclty
restored, but doesn't alter data objects order, so the data can be recovered
in any desired way.

1.25.0_arenadata5

07 Jul 12:27
b55652d
Compare
Choose a tag to compare
Merge pull request #21 from arenadata/1.25.0-sync

ADBDEV-2798 1.25.0 sync

1.24.0_arenadata5

30 Mar 08:02
a177c3a
Compare
Choose a tag to compare
Merge pull request #19 from arenadata/1.24.0-sync

ADBDEV-2506 1.24.0 sync