Skip to content

Commit

Permalink
Debug tests vol.4
Browse files Browse the repository at this point in the history
  • Loading branch information
usernamedt committed Mar 27, 2023
1 parent 0e7a662 commit 68100f1
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 13 deletions.
3 changes: 2 additions & 1 deletion docker/gp_tests/scripts/tests/restore_point.sh
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,8 @@ if [ "$EXIT_STATUS" -eq 0 ] ; then
fi

# should pick backup restore point
RESTORE_TIME=$(wal-g backup-list --config=${TMP_CONFIG} | awk '{ if (NR == 2) { print $2 } }')
RESTORE_TIME=$(wal-g backup-list --pretty --json --config=${TMP_CONFIG} | grep 'time' | awk '{ print $2 }' | tr -d '",')
wal-g restore-point-list --config=${TMP_CONFIG}
# should not fail
wal-g backup-fetch LATEST --restore-point-ts=${RESTORE_TIME} --in-place --config=${TMP_CONFIG}
delete_cluster_dirs
Expand Down
17 changes: 10 additions & 7 deletions internal/databases/greenplum/backup_push_handler.go
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@ type CurrBackupInfo struct {
backupName string
segmentBackups map[string]*cluster.SegConfig
startTime time.Time
finishTime time.Time
systemIdentifier *uint64
gpVersion semver.Version
segmentsMetadata map[string]PgSegmentSentinelDto
Expand Down Expand Up @@ -220,19 +221,22 @@ func (bh *BackupHandler) HandleBackupPush() {
restoreLSNs, err := createRestorePoint(bh.workers.Conn, bh.currBackupInfo.backupName)
tracelog.ErrorLogger.FatalOnError(err)

err = bh.uploadRestorePointMetadata(restoreLSNs)
tracelog.ErrorLogger.FatalOnError(err)

bh.currBackupInfo.segmentsMetadata, err = bh.fetchSegmentBackupsMetadata()
tracelog.ErrorLogger.FatalOnError(err)

sentinelDto := NewBackupSentinelDto(bh.currBackupInfo, &bh.prevBackupInfo,
bh.currBackupInfo.finishTime = utility.TimeNowCrossPlatformUTC()

sentinelDto := NewBackupSentinelDto(&bh.currBackupInfo, &bh.prevBackupInfo,
restoreLSNs, bh.arguments.userData, bh.arguments.isPermanent)
err = bh.uploadSentinel(sentinelDto)
if err != nil {
tracelog.ErrorLogger.Printf("Failed to upload sentinel file for backup: %s", bh.currBackupInfo.backupName)
tracelog.ErrorLogger.FatalError(err)
}

err = bh.uploadRestorePointMetadata(restoreLSNs)
tracelog.ErrorLogger.FatalOnError(err)

tracelog.InfoLogger.Printf("Backup %s successfully created", bh.currBackupInfo.backupName)
bh.disconnect()
}
Expand All @@ -246,7 +250,7 @@ func (bh *BackupHandler) uploadRestorePointMetadata(restoreLSNs map[int]string)
meta := RestorePointMetadata{
Name: bh.currBackupInfo.backupName,
StartTime: bh.currBackupInfo.startTime,
FinishTime: utility.TimeNowCrossPlatformUTC(),
FinishTime: bh.currBackupInfo.finishTime,
Hostname: hostname,
GpVersion: bh.currBackupInfo.gpVersion.String(),
SystemIdentifier: bh.currBackupInfo.systemIdentifier,
Expand All @@ -257,8 +261,7 @@ func (bh *BackupHandler) uploadRestorePointMetadata(restoreLSNs map[int]string)
tracelog.InfoLogger.Printf("Uploading restore point metadata file %s", metaFileName)
tracelog.InfoLogger.Println(meta.String())

rpFolder := bh.workers.Uploader.UploadingFolder.GetSubFolder(utility.BaseBackupPath)
if err := internal.UploadDto(rpFolder, meta, metaFileName); err != nil {
if err := internal.UploadDto(bh.workers.Uploader.UploadingFolder, meta, metaFileName); err != nil {
return fmt.Errorf("upload metadata file for restore point %s: %w", meta.Name, err)
}
return nil
Expand Down
8 changes: 3 additions & 5 deletions internal/databases/greenplum/backup_sentinel_dto.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,8 @@ import (

"github.com/wal-g/wal-g/internal/databases/postgres"

"github.com/wal-g/tracelog"
"github.com/wal-g/wal-g/utility"

"github.com/greenplum-db/gp-common-go-libs/cluster"
"github.com/wal-g/tracelog"
)

type SegmentRole string
Expand Down Expand Up @@ -98,7 +96,7 @@ func (s *BackupSentinelDto) String() string {
}

// NewBackupSentinelDto returns new BackupSentinelDto instance
func NewBackupSentinelDto(currBackupInfo CurrBackupInfo, prevBackupInfo *PrevBackupInfo, restoreLSNs map[int]string, userData interface{},
func NewBackupSentinelDto(currBackupInfo *CurrBackupInfo, prevBackupInfo *PrevBackupInfo, restoreLSNs map[int]string, userData interface{},
isPermanent bool) BackupSentinelDto {
hostname, err := os.Hostname()
if err != nil {
Expand All @@ -110,7 +108,7 @@ func NewBackupSentinelDto(currBackupInfo CurrBackupInfo, prevBackupInfo *PrevBac
Segments: make([]SegmentMetadata, 0, len(currBackupInfo.segmentBackups)),
UserData: userData,
StartTime: currBackupInfo.startTime,
FinishTime: utility.TimeNowCrossPlatformUTC(),
FinishTime: currBackupInfo.finishTime,
DatetimeFormat: MetadataDatetimeFormat,
Hostname: hostname,
GpVersion: currBackupInfo.gpVersion.String(),
Expand Down

0 comments on commit 68100f1

Please sign in to comment.