diff --git a/e2e-tests/functions b/e2e-tests/functions index 8c88ffc07..5a8722606 100644 --- a/e2e-tests/functions +++ b/e2e-tests/functions @@ -55,6 +55,7 @@ deploy_operator() { fi yq eval '.spec.template.spec.containers[0].image = "'${IMAGE}'"' "${DEPLOY_DIR}/${cw_prefix}operator.yaml" \ | yq eval '(.spec.template.spec.containers[] | select(.name=="operator") | .env[] | select(.name=="DISABLE_TELEMETRY") | .value) = "'${disable_telemetry}'"' - \ + | yq eval '(.spec.template.spec.containers[] | select(.name=="operator") | .env[] | select(.name=="LOG_LEVEL") | .value) = "DEBUG"' - \ | kubectl -n "${OPERATOR_NS:-$NAMESPACE}" apply -f - } diff --git a/percona/controller/pgbackup/controller.go b/percona/controller/pgbackup/controller.go index 3e5311ffe..2ef563ac6 100644 --- a/percona/controller/pgbackup/controller.go +++ b/percona/controller/pgbackup/controller.go @@ -297,7 +297,6 @@ func (r *PGBackupReconciler) Reconcile(ctx context.Context, request reconcile.Re if err != nil { return reconcile.Result{}, errors.Wrap(err, "failed to create exec client") } - latestRestorableTime, err := watcher.GetLatestCommitTimestamp(ctx, r.Client, execCli, pgCluster, pgBackup) if err == nil { log.Info("Got latest restorable timestamp", "timestamp", latestRestorableTime) diff --git a/percona/controller/pgcluster/backup.go b/percona/controller/pgcluster/backup.go index 61835bade..37d19b355 100644 --- a/percona/controller/pgcluster/backup.go +++ b/percona/controller/pgcluster/backup.go @@ -39,6 +39,10 @@ func (r *PGClusterReconciler) reconcileBackups(ctx context.Context, cr *v2.Perco func (r *PGClusterReconciler) cleanupOutdatedBackups(ctx context.Context, cr *v2.PerconaPGCluster) error { log := logging.FromContext(ctx) + if !cr.Spec.Backups.IsEnabled() { + return nil + } + if cr.Status.State != v2.AppStateReady { return nil } diff --git a/percona/controller/pgcluster/controller.go b/percona/controller/pgcluster/controller.go index 040052240..b2dede1c6 100644 --- a/percona/controller/pgcluster/controller.go +++ b/percona/controller/pgcluster/controller.go @@ -978,6 +978,8 @@ func (r *PGClusterReconciler) reconcileExternalWatchers(ctx context.Context, cr } func (r *PGClusterReconciler) startExternalWatchers(ctx context.Context, cr *v2.PerconaPGCluster) error { + log := logging.FromContext(ctx) + if !cr.Spec.Backups.IsEnabled() { return nil } @@ -986,8 +988,6 @@ func (r *PGClusterReconciler) startExternalWatchers(ctx context.Context, cr *v2. return nil } - log := logging.FromContext(ctx) - watcherName, watcherFunc := watcher.GetWALWatcher(cr) if r.Watchers.IsExist(watcherName) { return nil diff --git a/percona/watcher/wal.go b/percona/watcher/wal.go index c2aa12e6b..6fa0b9343 100644 --- a/percona/watcher/wal.go +++ b/percona/watcher/wal.go @@ -38,6 +38,10 @@ func GetWALWatcher(cr *pgv2.PerconaPGCluster) (string, WALWatcher) { func WatchCommitTimestamps(ctx context.Context, cli client.Client, eventChan chan event.GenericEvent, stopChan chan event.DeleteEvent, cr *pgv2.PerconaPGCluster) { log := logging.FromContext(ctx).WithName("WALWatcher") + if !cr.Spec.Backups.IsEnabled() { + return + } + log.Info("Watching commit timestamps") execCli, err := clientcmd.NewClient() @@ -52,8 +56,6 @@ func WatchCommitTimestamps(ctx context.Context, cli client.Client, eventChan cha for { select { case <-ticker.C: - log.V(1).Info("Running WAL watcher") - localCr := cr.DeepCopy() err := cli.Get(ctx, client.ObjectKeyFromObject(cr), localCr) if err != nil { @@ -61,6 +63,11 @@ func WatchCommitTimestamps(ctx context.Context, cli client.Client, eventChan cha return } + if !localCr.Spec.Backups.IsEnabled() { + continue + } + log.V(1).Info("Running WAL watcher") + latestBackup, err := getLatestBackup(ctx, cli, localCr) if err != nil { if !errors.Is(err, errRunningBackup) && !errors.Is(err, errNoBackups) { @@ -69,7 +76,6 @@ func WatchCommitTimestamps(ctx context.Context, cli client.Client, eventChan cha continue } - ts, err := GetLatestCommitTimestamp(ctx, cli, execCli, localCr, latestBackup) if err != nil { switch {