Log: /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/e2e-tests/logs/pitr-physical-backup-source.log WARNING: version difference between client (1.33) and server (1.30) exceeds the supported minor version skew of +/-1 WARNING: version difference between client (1.33) and server (1.30) exceeds the supported minor version skew of +/-1 WARNING: version difference between client (1.33) and server (1.30) exceeds the supported minor version skew of +/-1 + main + create_infra pitr-physical-backup-source-19532 + local ns=pitr-physical-backup-source-19532 + [[ 1 == 1 ]] + delete_crd + desc 'get and delete old CRDs and RBAC' + set +o xtrace ----------------------------------------------------------------------------------- get and delete old CRDs and RBAC ----------------------------------------------------------------------------------- + kubectl_bin delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/deploy/crd.yaml --ignore-not-found --wait=false ++ mktemp + local LAST_OUT=/tmp/tmp.3KAeP8VZ9a ++ mktemp + local LAST_ERR=/tmp/tmp.EYkBDFLu9m + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/deploy/crd.yaml --ignore-not-found --wait=false + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.3KAeP8VZ9a customresourcedefinition.apiextensions.k8s.io "perconaservermongodbbackups.psmdb.percona.com" deleted customresourcedefinition.apiextensions.k8s.io "perconaservermongodbrestores.psmdb.percona.com" deleted customresourcedefinition.apiextensions.k8s.io "perconaservermongodbs.psmdb.percona.com" deleted + cat /tmp/tmp.EYkBDFLu9m + rm /tmp/tmp.3KAeP8VZ9a /tmp/tmp.EYkBDFLu9m + return 0 ++ grep -v '\-\-\-' ++ yq eval .metadata.name /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/deploy/crd.yaml + for crd_name in '$(yq eval '\''.metadata.name'\'' "${src_dir}/deploy/crd.yaml" | grep -v '\''\-\-\-'\'')' + xargs -L 1 sh -xc 'kubectl patch perconaservermongodbbackups.psmdb.percona.com -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' + grep -v NAMESPACE + kubectl get perconaservermongodbbackups.psmdb.percona.com --all-namespaces -o wide No resources found + kubectl patch perconaservermongodbbackups.psmdb.percona.com -n sh --type=merge -p '{"metadata":{"finalizers":[]}}' error: the server doesn't have a resource type "perconaservermongodbbackups" + : + kubectl_bin wait --for=delete crd perconaservermongodbbackups.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.d5xa9cNkzL ++ mktemp + local LAST_ERR=/tmp/tmp.LCLQSh8772 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl wait --for=delete crd perconaservermongodbbackups.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.d5xa9cNkzL + cat /tmp/tmp.LCLQSh8772 + rm /tmp/tmp.d5xa9cNkzL /tmp/tmp.LCLQSh8772 + return 0 + for crd_name in '$(yq eval '\''.metadata.name'\'' "${src_dir}/deploy/crd.yaml" | grep -v '\''\-\-\-'\'')' + kubectl get perconaservermongodbrestores.psmdb.percona.com --all-namespaces -o wide + grep -v NAMESPACE + xargs -L 1 sh -xc 'kubectl patch perconaservermongodbrestores.psmdb.percona.com -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' error: the server doesn't have a resource type "perconaservermongodbrestores" + kubectl patch perconaservermongodbrestores.psmdb.percona.com -n sh --type=merge -p '{"metadata":{"finalizers":[]}}' error: the server doesn't have a resource type "perconaservermongodbrestores" + : + kubectl_bin wait --for=delete crd perconaservermongodbrestores.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.Mdc0wHIigH ++ mktemp + local LAST_ERR=/tmp/tmp.plcltnUSp0 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl wait --for=delete crd perconaservermongodbrestores.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.Mdc0wHIigH + cat /tmp/tmp.plcltnUSp0 + rm /tmp/tmp.Mdc0wHIigH /tmp/tmp.plcltnUSp0 + return 0 + for crd_name in '$(yq eval '\''.metadata.name'\'' "${src_dir}/deploy/crd.yaml" | grep -v '\''\-\-\-'\'')' + kubectl get perconaservermongodbs.psmdb.percona.com --all-namespaces -o wide + grep -v NAMESPACE + xargs -L 1 sh -xc 'kubectl patch perconaservermongodbs.psmdb.percona.com -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' error: the server doesn't have a resource type "perconaservermongodbs" + kubectl patch perconaservermongodbs.psmdb.percona.com -n sh --type=merge -p '{"metadata":{"finalizers":[]}}' error: the server doesn't have a resource type "perconaservermongodbs" + : + kubectl_bin wait --for=delete crd perconaservermongodbs.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.1zsh89l9Nc ++ mktemp + local LAST_ERR=/tmp/tmp.hEu4pW5Wpf + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl wait --for=delete crd perconaservermongodbs.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.1zsh89l9Nc + cat /tmp/tmp.hEu4pW5Wpf + rm /tmp/tmp.1zsh89l9Nc /tmp/tmp.hEu4pW5Wpf + return 0 + local rbac_yaml=rbac.yaml + '[' -n psmdb-operator ']' + rbac_yaml=cw-rbac.yaml + kubectl_bin delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/deploy/cw-rbac.yaml --ignore-not-found ++ mktemp + local LAST_OUT=/tmp/tmp.OSRZ36LaOh ++ mktemp + local LAST_ERR=/tmp/tmp.DxrKPCRfOK + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/deploy/cw-rbac.yaml --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.OSRZ36LaOh clusterrole.rbac.authorization.k8s.io "percona-server-mongodb-operator" deleted clusterrolebinding.rbac.authorization.k8s.io "service-account-percona-server-mongodb-operator" deleted + cat /tmp/tmp.DxrKPCRfOK + rm /tmp/tmp.OSRZ36LaOh /tmp/tmp.DxrKPCRfOK + return 0 + check_crd_for_deletion PR-1912-ab1be45a + local git_tag=PR-1912-ab1be45a ++ curl -s https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/PR-1912-ab1be45a/deploy/crd.yaml ++ /usr/bin/sed ':a;N;$!ba;s/\n/ /g' ++ /usr/bin/sed s/---//g ++ yq eval .metadata.name + for crd_name in '$(curl -s https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/${git_tag}/deploy/crd.yaml | yq eval '\''.metadata.name'\'' | $sed '\''s/---//g'\'' | $sed '\'':a;N;$!ba;s/\n/ /g'\'')' ++ kubectl_bin get crd/null -o 'jsonpath={.status.conditions[-1].type}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.xEXAcAA0tL +++ mktemp ++ local LAST_ERR=/tmp/tmp.IwFJmxLEbi ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get crd/null -o 'jsonpath={.status.conditions[-1].type}' ++ exit_status=1 ++ set -e ++ '[' 1 '!=' 0 -a -n 1 ']' ++ cat /tmp/tmp.xEXAcAA0tL ++ cat /tmp/tmp.IwFJmxLEbi Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ sleep 0 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get crd/null -o 'jsonpath={.status.conditions[-1].type}' ++ exit_status=1 ++ set -e ++ '[' 1 '!=' 0 -a -n 1 ']' ++ cat /tmp/tmp.xEXAcAA0tL ++ cat /tmp/tmp.IwFJmxLEbi Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ sleep 4 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get crd/null -o 'jsonpath={.status.conditions[-1].type}' ++ exit_status=1 ++ set -e ++ '[' 1 '!=' 0 -a -n 1 ']' ++ cat /tmp/tmp.xEXAcAA0tL ++ cat /tmp/tmp.IwFJmxLEbi Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ sleep 8 ++ cat /tmp/tmp.xEXAcAA0tL ++ cat /tmp/tmp.IwFJmxLEbi Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ rm /tmp/tmp.xEXAcAA0tL /tmp/tmp.IwFJmxLEbi ++ return 1 + [[ '' == \T\e\r\m\i\n\a\t\i\n\g ]] + '[' -n psmdb-operator ']' + create_namespace psmdb-operator + local namespace=psmdb-operator + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ awk '-F ' '{print $2}' ++ tail -n1 ++ sed s/NAMESPACE// ++ helm list --all-namespaces --filter chaos-mesh + local chaos_mesh_ns= + desc 'destroy chaos-mesh' + set +o xtrace ----------------------------------------------------------------------------------- destroy chaos-mesh ----------------------------------------------------------------------------------- + '[' -n '' ']' ++ grep chaos-mesh ++ awk '{print $1}' ++ kubectl get MutatingWebhookConfiguration + timeout 30 kubectl delete MutatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ awk '{print $1}' ++ grep chaos-mesh + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep validate-auth ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ grep chaos-mesh ++ awk '{print $1}' ++ kubectl api-resources ++ kubectl get crd ++ grep chaos-mesh.org ++ awk '{print $1}' + timeout 30 kubectl delete crd error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrolebinding ++ awk '{print $1}' ++ grep chaos-mesh + timeout 30 kubectl delete clusterrolebinding error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrole ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete clusterrole error: resource(s) were provided, but no name was specified + : + desc 'cleaned up all old namespaces' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up all old namespaces ----------------------------------------------------------------------------------- + '[' -n '' ']' + desc 'cleaned up old namespaces psmdb-operator' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces psmdb-operator ----------------------------------------------------------------------------------- + kubectl_bin delete namespace psmdb-operator --ignore-not-found ++ mktemp + local LAST_OUT=/tmp/tmp.mzNl36Jkzf + xargs kubectl delete ns + awk '{print$1}' + egrep -v '^kube-|^default|Terminating|psmdb-operator|openshift|gke-mcs|^NAME' + kubectl_bin get ns ++ mktemp + local LAST_ERR=/tmp/tmp.4T9z866YpS + local exit_status=0 + local timeout=4 ++ mktemp ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl delete namespace psmdb-operator --ignore-not-found + local LAST_OUT=/tmp/tmp.K6iBXb4Gis ++ mktemp + local LAST_ERR=/tmp/tmp.fDSrbx9mpa + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl get ns + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.K6iBXb4Gis + cat /tmp/tmp.fDSrbx9mpa + rm /tmp/tmp.K6iBXb4Gis /tmp/tmp.fDSrbx9mpa + return 0 namespace "gke-managed-cim" deleted namespace "gke-managed-system" deleted namespace "gmp-public" deleted namespace "gmp-system" deleted namespace "pitr-physical-backup-source-2904" deleted + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.mzNl36Jkzf namespace "psmdb-operator" deleted + cat /tmp/tmp.4T9z866YpS + rm /tmp/tmp.mzNl36Jkzf /tmp/tmp.4T9z866YpS + return 0 + kubectl_bin wait --for=delete namespace psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.qyyclas0JP ++ mktemp + local LAST_ERR=/tmp/tmp.XPTyMNRuge + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl wait --for=delete namespace psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.qyyclas0JP + cat /tmp/tmp.XPTyMNRuge + rm /tmp/tmp.qyyclas0JP /tmp/tmp.XPTyMNRuge + return 0 + desc 'create namespace psmdb-operator' + set +o xtrace ----------------------------------------------------------------------------------- create namespace psmdb-operator ----------------------------------------------------------------------------------- + kubectl_bin create namespace psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.cbCzG83LDt ++ mktemp + local LAST_ERR=/tmp/tmp.I26jnZRLjo + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl create namespace psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.cbCzG83LDt namespace/psmdb-operator created + cat /tmp/tmp.I26jnZRLjo + rm /tmp/tmp.cbCzG83LDt /tmp/tmp.I26jnZRLjo + return 0 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.HG4iDjdYYs +++ mktemp ++ local LAST_ERR=/tmp/tmp.7mSM0hVwS7 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl config current-context ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.HG4iDjdYYs ++ cat /tmp/tmp.7mSM0hVwS7 ++ rm /tmp/tmp.HG4iDjdYYs /tmp/tmp.7mSM0hVwS7 ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-1912-ab1be45a-6-cluster2 --namespace=psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.HRmmCp2R1Y ++ mktemp + local LAST_ERR=/tmp/tmp.DyyA1NsFQM + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-1912-ab1be45a-6-cluster2 --namespace=psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.HRmmCp2R1Y Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-1912-ab1be45a-6-cluster2" modified. + cat /tmp/tmp.DyyA1NsFQM + rm /tmp/tmp.HRmmCp2R1Y /tmp/tmp.DyyA1NsFQM + return 0 + deploy_operator + desc 'start PSMDB operator' + set +o xtrace ----------------------------------------------------------------------------------- start PSMDB operator ----------------------------------------------------------------------------------- + local cr_file + '[' -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/e2e-tests/pitr-physical-backup-source/conf/crd.yaml ']' + cr_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/deploy/crd.yaml + kubectl_bin apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/deploy/crd.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.R7XIxUAK8F ++ mktemp + local LAST_ERR=/tmp/tmp.2cVyolaDgi + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/deploy/crd.yaml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.R7XIxUAK8F customresourcedefinition.apiextensions.k8s.io/perconaservermongodbbackups.psmdb.percona.com serverside-applied customresourcedefinition.apiextensions.k8s.io/perconaservermongodbrestores.psmdb.percona.com serverside-applied customresourcedefinition.apiextensions.k8s.io/perconaservermongodbs.psmdb.percona.com serverside-applied + cat /tmp/tmp.2cVyolaDgi + rm /tmp/tmp.R7XIxUAK8F /tmp/tmp.2cVyolaDgi + return 0 + '[' -n psmdb-operator ']' + apply_rbac cw-rbac + local operator_namespace=psmdb-operator + local rbac=cw-rbac + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/deploy/cw-rbac.yaml + sed -e 's^namespace: .*^namespace: psmdb-operator^' + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.uGavPq9caK ++ mktemp + local LAST_ERR=/tmp/tmp.PhD6TxVTid + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl apply -n psmdb-operator -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.uGavPq9caK clusterrole.rbac.authorization.k8s.io/percona-server-mongodb-operator created serviceaccount/percona-server-mongodb-operator created clusterrolebinding.rbac.authorization.k8s.io/service-account-percona-server-mongodb-operator created + cat /tmp/tmp.PhD6TxVTid + rm /tmp/tmp.uGavPq9caK /tmp/tmp.PhD6TxVTid + return 0 + kubectl_bin apply -f - + yq eval ' (.spec.template.spec.containers[].image = "perconalab/percona-server-mongodb-operator:PR-1912-ab1be45a") | ((.. | select(.[] == "DISABLE_TELEMETRY")) |= .value="true") | ((.. | select(.[] == "LOG_LEVEL")) |= .value="DEBUG")' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/deploy/cw-operator.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.TyVJiDZBzs ++ mktemp + local LAST_ERR=/tmp/tmp.p3rNBZtDiR + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl apply -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.TyVJiDZBzs deployment.apps/percona-server-mongodb-operator created + cat /tmp/tmp.p3rNBZtDiR + rm /tmp/tmp.TyVJiDZBzs /tmp/tmp.p3rNBZtDiR + return 0 + sleep 2 ++ get_operator_pod ++ kubectl_bin get pods --selector=name=percona-server-mongodb-operator -o 'jsonpath={.items[].metadata.name}' -n psmdb-operator +++ mktemp ++ local LAST_OUT=/tmp/tmp.H8MN1vLFLF +++ mktemp ++ local LAST_ERR=/tmp/tmp.HK134CLWJk ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=percona-server-mongodb-operator -o 'jsonpath={.items[].metadata.name}' -n psmdb-operator ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.H8MN1vLFLF ++ cat /tmp/tmp.HK134CLWJk ++ rm /tmp/tmp.H8MN1vLFLF /tmp/tmp.HK134CLWJk ++ return 0 + wait_pod percona-server-mongodb-operator-5b4f87c7bd-qcfqk + local pod=percona-server-mongodb-operator-5b4f87c7bd-qcfqk + set +o xtrace waiting for pod/percona-server-mongodb-operator-5b4f87c7bd-qcfqk to be ready.OK + echo 'Print operator info from log' Print operator info from log ++ get_operator_pod ++ kubectl_bin get pods --selector=name=percona-server-mongodb-operator -o 'jsonpath={.items[].metadata.name}' -n psmdb-operator + grep 'Manager starting up' +++ mktemp ++ local LAST_OUT=/tmp/tmp.hqAwhxPLEm +++ mktemp ++ local LAST_ERR=/tmp/tmp.TIIhLHCOLm ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=percona-server-mongodb-operator -o 'jsonpath={.items[].metadata.name}' -n psmdb-operator ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.hqAwhxPLEm ++ cat /tmp/tmp.TIIhLHCOLm ++ rm /tmp/tmp.hqAwhxPLEm /tmp/tmp.TIIhLHCOLm ++ return 0 + kubectl_bin logs percona-server-mongodb-operator-5b4f87c7bd-qcfqk ++ mktemp + local LAST_OUT=/tmp/tmp.fMI56l6Lgg ++ mktemp + local LAST_ERR=/tmp/tmp.50aSHwNO0O + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl logs percona-server-mongodb-operator-5b4f87c7bd-qcfqk + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.fMI56l6Lgg + cat /tmp/tmp.50aSHwNO0O + rm /tmp/tmp.fMI56l6Lgg /tmp/tmp.50aSHwNO0O + return 0 2025-05-21T12:52:38.719Z INFO setup Manager starting up {"gitCommit": "ab1be45a35452d5d20912637f506f22dd6dd4c33", "gitBranch": "PR-1912-ab1be45a", "buildTime": "", "goVersion": "go1.24.3", "os": "linux", "arch": "amd64"} + create_namespace pitr-physical-backup-source-19532 + local namespace=pitr-physical-backup-source-19532 + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ sed s/NAMESPACE// ++ awk '-F ' '{print $2}' ++ helm list --all-namespaces --filter chaos-mesh ++ tail -n1 + local chaos_mesh_ns= + desc 'destroy chaos-mesh' + set +o xtrace ----------------------------------------------------------------------------------- destroy chaos-mesh ----------------------------------------------------------------------------------- + '[' -n '' ']' ++ kubectl get MutatingWebhookConfiguration ++ awk '{print $1}' ++ grep chaos-mesh + timeout 30 kubectl delete MutatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ awk '{print $1}' ++ kubectl get ValidatingWebhookConfiguration ++ grep validate-auth + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl api-resources ++ grep chaos-mesh ++ awk '{print $1}' ++ grep chaos-mesh.org ++ awk '{print $1}' ++ kubectl get crd + timeout 30 kubectl delete crd error: resource(s) were provided, but no name was specified + : ++ grep chaos-mesh ++ awk '{print $1}' ++ kubectl get clusterrolebinding + timeout 30 kubectl delete clusterrolebinding error: resource(s) were provided, but no name was specified + : ++ awk '{print $1}' ++ grep chaos-mesh ++ kubectl get clusterrole + timeout 30 kubectl delete clusterrole error: resource(s) were provided, but no name was specified + : + desc 'cleaned up all old namespaces' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up all old namespaces ----------------------------------------------------------------------------------- + '[' -n '' ']' + desc 'cleaned up old namespaces pitr-physical-backup-source-19532' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces pitr-physical-backup-source-19532 ----------------------------------------------------------------------------------- + kubectl_bin delete namespace pitr-physical-backup-source-19532 --ignore-not-found + xargs kubectl delete ns ++ mktemp + kubectl_bin get ns + egrep -v '^kube-|^default|Terminating|psmdb-operator|openshift|gke-mcs|^NAME' + awk '{print$1}' + local LAST_OUT=/tmp/tmp.1T2w0rewlU ++ mktemp + local LAST_OUT=/tmp/tmp.vtI1R2d48g ++ mktemp + local LAST_ERR=/tmp/tmp.YW6Xi4jvo0 + local exit_status=0 + local timeout=4 ++ seq 0 2 ++ mktemp + for i in '$(seq 0 2)' + set +e + kubectl delete namespace pitr-physical-backup-source-19532 --ignore-not-found + local LAST_ERR=/tmp/tmp.FMTJXm1sPD + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl get ns + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.vtI1R2d48g + cat /tmp/tmp.FMTJXm1sPD + rm /tmp/tmp.vtI1R2d48g /tmp/tmp.FMTJXm1sPD + return 0 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.1T2w0rewlU + cat /tmp/tmp.YW6Xi4jvo0 + rm /tmp/tmp.1T2w0rewlU /tmp/tmp.YW6Xi4jvo0 + return 0 + kubectl_bin wait --for=delete namespace pitr-physical-backup-source-19532 ++ mktemp + local LAST_OUT=/tmp/tmp.5sYnYHWQ9q ++ mktemp + local LAST_ERR=/tmp/tmp.Yriwg8Er56 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl wait --for=delete namespace pitr-physical-backup-source-19532 namespace "gke-managed-cim" deleted + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.5sYnYHWQ9q + cat /tmp/tmp.Yriwg8Er56 + rm /tmp/tmp.5sYnYHWQ9q /tmp/tmp.Yriwg8Er56 + return 0 + desc 'create namespace pitr-physical-backup-source-19532' + set +o xtrace ----------------------------------------------------------------------------------- create namespace pitr-physical-backup-source-19532 ----------------------------------------------------------------------------------- + kubectl_bin create namespace pitr-physical-backup-source-19532 ++ mktemp + local LAST_OUT=/tmp/tmp.DOeO9pe5Fx ++ mktemp + local LAST_ERR=/tmp/tmp.lBQ5BWkdy7 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl create namespace pitr-physical-backup-source-19532 namespace "gke-managed-system" deleted namespace "gmp-public" deleted namespace "gmp-system" deleted + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.DOeO9pe5Fx namespace/pitr-physical-backup-source-19532 created + cat /tmp/tmp.lBQ5BWkdy7 + rm /tmp/tmp.DOeO9pe5Fx /tmp/tmp.lBQ5BWkdy7 + return 0 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.MyVF8GoBC3 +++ mktemp ++ local LAST_ERR=/tmp/tmp.hqKsA9wLsQ ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl config current-context ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.MyVF8GoBC3 ++ cat /tmp/tmp.hqKsA9wLsQ ++ rm /tmp/tmp.MyVF8GoBC3 /tmp/tmp.hqKsA9wLsQ ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-1912-ab1be45a-6-cluster2 --namespace=pitr-physical-backup-source-19532 ++ mktemp + local LAST_OUT=/tmp/tmp.tVis5zLjCC ++ mktemp + local LAST_ERR=/tmp/tmp.P5t8aqPYHx + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-1912-ab1be45a-6-cluster2 --namespace=pitr-physical-backup-source-19532 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.tVis5zLjCC Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-1912-ab1be45a-6-cluster2" modified. + cat /tmp/tmp.P5t8aqPYHx + rm /tmp/tmp.tVis5zLjCC /tmp/tmp.P5t8aqPYHx + return 0 + deploy_minio + desc 'install Minio' + set +o xtrace ----------------------------------------------------------------------------------- install Minio ----------------------------------------------------------------------------------- + helm uninstall minio-service Error: uninstall: Release not loaded: minio-service: release: not found + : + helm repo remove minio "minio" has been removed from your repositories + helm repo add minio https://charts.min.io/ "minio" has been added to your repositories + retry 10 60 helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/.minio/ --set persistence.size=2G --set securityContext.enabled=false minio/minio + local max=10 + local delay=60 + shift 2 + local n=1 + helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/.minio/ --set persistence.size=2G --set securityContext.enabled=false minio/minio NAME: minio-service LAST DEPLOYED: Wed May 21 12:53:03 2025 NAMESPACE: pitr-physical-backup-source-19532 STATUS: deployed REVISION: 1 TEST SUITE: None NOTES: MinIO can be accessed via port 9000 on the following DNS name from within your cluster: minio-service.pitr-physical-backup-source-19532.cluster.local To access MinIO from localhost, run the below commands: 1. export POD_NAME=$(kubectl get pods --namespace pitr-physical-backup-source-19532 -l "release=minio-service" -o jsonpath="{.items[0].metadata.name}") 2. kubectl port-forward $POD_NAME 9000 --namespace pitr-physical-backup-source-19532 Read more about port forwarding here: http://kubernetes.io/docs/user-guide/kubectl/kubectl_port-forward/ You can now access MinIO server on http://localhost:9000. Follow the below steps to connect to MinIO server with mc client: 1. Download the MinIO mc client - https://min.io/docs/minio/linux/reference/minio-mc.html#quickstart 2. export MC_HOST_minio-service-local=http://$(kubectl get secret --namespace pitr-physical-backup-source-19532 minio-service -o jsonpath="{.data.rootUser}" | base64 --decode):$(kubectl get secret --namespace pitr-physical-backup-source-19532 minio-service -o jsonpath="{.data.rootPassword}" | base64 --decode)@localhost:9000 3. mc ls minio-service-local ++ kubectl_bin get pods --selector=release=minio-service -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.tf90JP5oES +++ mktemp ++ local LAST_ERR=/tmp/tmp.gH0gRnQPis ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=release=minio-service -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.tf90JP5oES ++ cat /tmp/tmp.gH0gRnQPis ++ rm /tmp/tmp.tf90JP5oES /tmp/tmp.gH0gRnQPis ++ return 0 + MINIO_POD=minio-service-86dfccd949-tflwq + wait_pod minio-service-86dfccd949-tflwq + local pod=minio-service-86dfccd949-tflwq + set +o xtrace waiting for pod/minio-service-86dfccd949-tflwq to be ready.OK + '[' -n psmdb-operator ']' + kubectl_bin create svc -n psmdb-operator externalname minio-service --external-name=minio-service.pitr-physical-backup-source-19532.svc.cluster.local --tcp=9000 ++ mktemp + local LAST_OUT=/tmp/tmp.FGzGf4ww5v ++ mktemp + local LAST_ERR=/tmp/tmp.52b4MyFY95 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl create svc -n psmdb-operator externalname minio-service --external-name=minio-service.pitr-physical-backup-source-19532.svc.cluster.local --tcp=9000 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.FGzGf4ww5v service/minio-service created + cat /tmp/tmp.52b4MyFY95 + rm /tmp/tmp.FGzGf4ww5v /tmp/tmp.52b4MyFY95 + return 0 + create_minio_bucket operator-testing + local bucket=operator-testing + kubectl_bin run -i --rm aws-cli --image=perconalab/awscli --restart=Never -- bash -c 'AWS_ACCESS_KEY_ID=some-access-key AWS_SECRET_ACCESS_KEY=some-secret-key AWS_DEFAULT_REGION=us-east-1 /usr/bin/aws --endpoint-url http://minio-service:9000 s3 mb s3://operator-testing' ++ mktemp + local LAST_OUT=/tmp/tmp.aStBugldyP ++ mktemp + local LAST_ERR=/tmp/tmp.I5zH54Kcrb + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl run -i --rm aws-cli --image=perconalab/awscli --restart=Never -- bash -c 'AWS_ACCESS_KEY_ID=some-access-key AWS_SECRET_ACCESS_KEY=some-secret-key AWS_DEFAULT_REGION=us-east-1 /usr/bin/aws --endpoint-url http://minio-service:9000 s3 mb s3://operator-testing' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.aStBugldyP pod "aws-cli" deleted + cat /tmp/tmp.I5zH54Kcrb If you don't see a command prompt, try pressing enter. + rm /tmp/tmp.aStBugldyP /tmp/tmp.I5zH54Kcrb + return 0 + desc 'create secrets and start client' + set +o xtrace ----------------------------------------------------------------------------------- create secrets and start client ----------------------------------------------------------------------------------- + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/e2e-tests/conf/client.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/e2e-tests/conf/minio-secret.yml ++ mktemp + local LAST_OUT=/tmp/tmp.335SzguRGq ++ mktemp + local LAST_ERR=/tmp/tmp.c2j8uPyIKs + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/e2e-tests/conf/client.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/e2e-tests/conf/minio-secret.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.335SzguRGq secret/some-users created deployment.apps/psmdb-client created secret/minio-secret created + cat /tmp/tmp.c2j8uPyIKs + rm /tmp/tmp.335SzguRGq /tmp/tmp.c2j8uPyIKs + return 0 + cluster=some-name + desc 'create first PSMDB cluster some-name' + set +o xtrace ----------------------------------------------------------------------------------- create first PSMDB cluster some-name ----------------------------------------------------------------------------------- + apply_cluster /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/e2e-tests/pitr-physical-backup-source/conf/some-name-rs0.yml + '[' -z '' ']' + cat_config /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/e2e-tests/pitr-physical-backup-source/conf/some-name-rs0.yml + kubectl_bin apply -f - + yq eval '(.spec | select(.image == null)).image = "perconalab/percona-server-mongodb-operator:main-mongod7.0"' + yq eval '(.spec | select(has("initImage"))).initImage = "perconalab/percona-server-mongodb-operator:PR-1912-ab1be45a"' + yq eval '(.spec | select(has("backup"))).backup.image = "perconalab/percona-server-mongodb-operator:main-backup"' + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/e2e-tests/pitr-physical-backup-source/conf/some-name-rs0.yml + yq eval '.spec.upgradeOptions.apply="Never"' ++ mktemp + yq eval '(.spec | select(has("pmm"))).pmm.image = "perconalab/pmm-client:dev-latest"' + local LAST_OUT=/tmp/tmp.kgWE5pb5Xk ++ mktemp + local LAST_ERR=/tmp/tmp.G450SXUdUu + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl apply -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.kgWE5pb5Xk perconaservermongodb.psmdb.percona.com/some-name created + cat /tmp/tmp.G450SXUdUu + rm /tmp/tmp.kgWE5pb5Xk /tmp/tmp.G450SXUdUu + return 0 + desc 'check if all 3 Pods started' + set +o xtrace ----------------------------------------------------------------------------------- check if all 3 Pods started ----------------------------------------------------------------------------------- + wait_for_running some-name-rs0 3 + local name=some-name-rs0 + let last_pod=2 + local check_cluster_readyness=true + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=rs0 + local cluster_name=some-name ++ seq 0 2 + for i in '$(seq 0 $last_pod)' + [[ 0 -eq 2 ]] + wait_pod some-name-rs0-0 + local pod=some-name-rs0-0 + set +o xtrace waiting for pod/some-name-rs0-0 to be ready......OK + for i in '$(seq 0 $last_pod)' + [[ 1 -eq 2 ]] + wait_pod some-name-rs0-1 + local pod=some-name-rs0-1 + set +o xtrace waiting for pod/some-name-rs0-1 to be ready........OK + for i in '$(seq 0 $last_pod)' + [[ 2 -eq 2 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.L7LldbdfVd +++ mktemp ++ local LAST_ERR=/tmp/tmp.d2PcxxTEKv ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].arbiter.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.L7LldbdfVd ++ cat /tmp/tmp.d2PcxxTEKv ++ rm /tmp/tmp.L7LldbdfVd /tmp/tmp.d2PcxxTEKv ++ return 0 + [[ '' == \t\r\u\e ]] + wait_pod some-name-rs0-2 + local pod=some-name-rs0-2 + set +o xtrace waiting for pod/some-name-rs0-2 to be ready......OK ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].non_voting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.0YrLclGfYB +++ mktemp ++ local LAST_ERR=/tmp/tmp.h7nb4MTScJ ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].non_voting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.0YrLclGfYB ++ cat /tmp/tmp.h7nb4MTScJ ++ rm /tmp/tmp.0YrLclGfYB /tmp/tmp.h7nb4MTScJ ++ return 0 + [[ '' == \t\r\u\e ]] + sleep 10 + [[ true == \t\r\u\e ]] + set +x Waiting for cluster readyness...................................... + wait_for_running some-name-cfg 3 false + local name=some-name-cfg + let last_pod=2 + local check_cluster_readyness=false + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=cfg + local cluster_name=some-name ++ seq 0 2 + for i in '$(seq 0 $last_pod)' + [[ 0 -eq 2 ]] + wait_pod some-name-cfg-0 + local pod=some-name-cfg-0 + set +o xtrace waiting for pod/some-name-cfg-0 to be ready.OK + for i in '$(seq 0 $last_pod)' + [[ 1 -eq 2 ]] + wait_pod some-name-cfg-1 + local pod=some-name-cfg-1 + set +o xtrace waiting for pod/some-name-cfg-1 to be ready.OK + for i in '$(seq 0 $last_pod)' + [[ 2 -eq 2 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.uIxkjSgBnt +++ mktemp ++ local LAST_ERR=/tmp/tmp.gFSXbvHtGG ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].arbiter.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.uIxkjSgBnt ++ cat /tmp/tmp.gFSXbvHtGG ++ rm /tmp/tmp.uIxkjSgBnt /tmp/tmp.gFSXbvHtGG ++ return 0 + [[ '' == \t\r\u\e ]] + wait_pod some-name-cfg-2 + local pod=some-name-cfg-2 + set +o xtrace waiting for pod/some-name-cfg-2 to be ready.OK ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].non_voting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.f1t1Aby5DX +++ mktemp ++ local LAST_ERR=/tmp/tmp.15IcITgNs9 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].non_voting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.f1t1Aby5DX ++ cat /tmp/tmp.15IcITgNs9 ++ rm /tmp/tmp.f1t1Aby5DX /tmp/tmp.15IcITgNs9 ++ return 0 + [[ '' == \t\r\u\e ]] + sleep 10 + [[ false == \t\r\u\e ]] + sleep 10 + write_initial_data + desc 'create user myApp' + set +o xtrace ----------------------------------------------------------------------------------- create user myApp ----------------------------------------------------------------------------------- + run_mongos 'db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})' userAdmin:userAdmin123456@some-name-mongos.pitr-physical-backup-source-19532 + local 'command=db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})' + local uri=userAdmin:userAdmin123456@some-name-mongos.pitr-physical-backup-source-19532 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local port=27017 + local mongo_bin=mongo ++ echo .svc.cluster.local ++ awk -F: '{print $2}' + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27017 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.pdTK9KUXbC +++ mktemp ++ local LAST_ERR=/tmp/tmp.SdJy3bV9n1 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.pdTK9KUXbC ++ cat /tmp/tmp.SdJy3bV9n1 ++ rm /tmp/tmp.pdTK9KUXbC /tmp/tmp.SdJy3bV9n1 ++ return 0 + local client_container=psmdb-client-66f577db5f-5bzjf + kubectl_bin exec psmdb-client-66f577db5f-5bzjf -- bash -c 'printf '\''db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})\n'\'' | mongo mongodb://userAdmin:userAdmin123456@some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.mzIDccY1l1 ++ mktemp + local LAST_ERR=/tmp/tmp.PdUZQ45CA9 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl exec psmdb-client-66f577db5f-5bzjf -- bash -c 'printf '\''db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})\n'\'' | mongo mongodb://userAdmin:userAdmin123456@some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.mzIDccY1l1 Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("afb50d84-f97c-44d1-b603-79adb1a6c4db") } Percona Server for MongoDB server version: v7.0.18-11 WARNING: shell and server versions do not match Successfully added user: { "user" : "myApp", "roles" : [ { "db" : "myApp", "role" : "readWrite" } ] } bye + cat /tmp/tmp.PdUZQ45CA9 + rm /tmp/tmp.mzIDccY1l1 /tmp/tmp.PdUZQ45CA9 + return 0 + sleep 2 + write_document + local cmp_postfix= + local sleep_value=0 + desc 'write initial data, read from all' + set +o xtrace ----------------------------------------------------------------------------------- write initial data, read from all ----------------------------------------------------------------------------------- + run_mongos 'use myApp\n db.test.insert({ x: 100500 })' myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 + local 'command=use myApp\n db.test.insert({ x: 100500 })' + local uri=myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local port=27017 + local mongo_bin=mongo ++ awk -F: '{print $2}' ++ echo .svc.cluster.local + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27017 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.EQns97k5XL +++ mktemp ++ local LAST_ERR=/tmp/tmp.ojsMEkzaXU ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.EQns97k5XL ++ cat /tmp/tmp.ojsMEkzaXU ++ rm /tmp/tmp.EQns97k5XL /tmp/tmp.ojsMEkzaXU ++ return 0 + local client_container=psmdb-client-66f577db5f-5bzjf + kubectl_bin exec psmdb-client-66f577db5f-5bzjf -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100500 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.ZvCNMMeDq8 ++ mktemp + local LAST_ERR=/tmp/tmp.rd5A2MODQ6 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl exec psmdb-client-66f577db5f-5bzjf -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100500 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.ZvCNMMeDq8 Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("724207aa-1649-44e0-a7f5-d5979622948a") } Percona Server for MongoDB server version: v7.0.18-11 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.rd5A2MODQ6 + rm /tmp/tmp.ZvCNMMeDq8 /tmp/tmp.rd5A2MODQ6 + return 0 + sleep 0 + compare_mongos_cmd find myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 + local command=find + local uri=myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 + local postfix= + local suffix= + local database=myApp + local collection=test + local port=27017 + /usr/bin/sed -re 's/ObjectId\("[0-9a-f]+"\)//; s/-[0-9]+.svc/-xxx.svc/' + run_mongos 'use myApp\n db.test.find()' myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 mongodb '' '' 27017 + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local port=27017 + local mongo_bin=mongo + egrep -v 'I NETWORK|W NETWORK|Error saving history file|Percona Server for MongoDB|connecting to:|Unable to reach primary for set|Implicit session:|versions do not match|Error saving history file:' ++ awk -F: '{print $2}' ++ echo .svc.cluster.local + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27017 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Kwnw7Klx50 +++ mktemp ++ local LAST_ERR=/tmp/tmp.8lNSPFgj5J ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.Kwnw7Klx50 ++ cat /tmp/tmp.8lNSPFgj5J ++ rm /tmp/tmp.Kwnw7Klx50 /tmp/tmp.8lNSPFgj5J ++ return 0 + local client_container=psmdb-client-66f577db5f-5bzjf + kubectl_bin exec psmdb-client-66f577db5f-5bzjf -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.YdD5qXKwkh ++ mktemp + local LAST_ERR=/tmp/tmp.brFdfbQZTe + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl exec psmdb-client-66f577db5f-5bzjf -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.YdD5qXKwkh + cat /tmp/tmp.brFdfbQZTe + rm /tmp/tmp.YdD5qXKwkh /tmp/tmp.brFdfbQZTe + return 0 + [[ 0 -eq 0 ]] + diff /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/e2e-tests/pitr-physical-backup-source/compare/find.json /tmp/tmp.VnAsP1ZnB4/find + wait_backup_agent some-name-rs0-0 + local agent_pod=some-name-rs0-0 + set +o xtrace waiting for pbm-agent to be ready in some-name-rs0-0...2025-05-21T12:56:59.000+0000 I listening for the commands + wait_backup_agent some-name-rs0-1 + local agent_pod=some-name-rs0-1 + set +o xtrace waiting for pbm-agent to be ready in some-name-rs0-1...2025-05-21T12:56:56.000+0000 I listening for the commands + wait_backup_agent some-name-rs0-2 + local agent_pod=some-name-rs0-2 + set +o xtrace waiting for pbm-agent to be ready in some-name-rs0-2...2025-05-21T12:56:55.000+0000 I listening for the commands + wait_backup_agent some-name-rs1-0 + local agent_pod=some-name-rs1-0 + set +o xtrace waiting for pbm-agent to be ready in some-name-rs1-0...2025-05-21T12:56:59.000+0000 I listening for the commands + wait_backup_agent some-name-rs1-1 + local agent_pod=some-name-rs1-1 + set +o xtrace waiting for pbm-agent to be ready in some-name-rs1-1...2025-05-21T12:56:57.000+0000 I listening for the commands + wait_backup_agent some-name-rs1-2 + local agent_pod=some-name-rs1-2 + set +o xtrace waiting for pbm-agent to be ready in some-name-rs1-2...2025-05-21T12:56:57.000+0000 I listening for the commands + wait_backup_agent some-name-rs2-0 + local agent_pod=some-name-rs2-0 + set +o xtrace waiting for pbm-agent to be ready in some-name-rs2-0...2025-05-21T12:57:00.000+0000 I listening for the commands + wait_backup_agent some-name-rs2-1 + local agent_pod=some-name-rs2-1 + set +o xtrace waiting for pbm-agent to be ready in some-name-rs2-1...2025-05-21T12:56:57.000+0000 I listening for the commands + wait_backup_agent some-name-rs2-2 + local agent_pod=some-name-rs2-2 + set +o xtrace waiting for pbm-agent to be ready in some-name-rs2-2...2025-05-21T12:56:57.000+0000 I listening for the commands + echo 'Sleeping for 360 seconds' Sleeping for 360 seconds + sleep 360 + backup_name_minio=backup-minio + desc 'restore pitr type date using backupSource' + set +o xtrace ----------------------------------------------------------------------------------- restore pitr type date using backupSource ----------------------------------------------------------------------------------- + run_backup backup-minio 1 physical + local name=backup-minio + local idx=1 + local type=physical + desc 'run backup backup-minio-1' + set +o xtrace ----------------------------------------------------------------------------------- run backup backup-minio-1 ----------------------------------------------------------------------------------- + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/e2e-tests/pitr-physical-backup-source/conf/backup-minio.yml + /usr/bin/sed -e 's/name:/name: backup-minio-1/' + /usr/bin/sed -e 's/type:/type: physical/' + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.wo83GNKoZF ++ mktemp + local LAST_ERR=/tmp/tmp.JBZvffwq9t + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl apply -f - + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.wo83GNKoZF perconaservermongodbbackup.psmdb.percona.com/backup-minio-1 created + cat /tmp/tmp.JBZvffwq9t + rm /tmp/tmp.wo83GNKoZF /tmp/tmp.JBZvffwq9t + return 0 + wait_backup backup-minio-1 + local backup_name=backup-minio-1 + local target_state=ready + set +o xtrace waiting for backup-minio-1 to reach ready state....... + compare_latest_restorable_time some-name-rs0 backup-minio-1 + local cluster=some-name-rs0 + local backup_name=backup-minio-1 + local latest_restorable_time + local backup_time ++ get_latest_restorable_time some-name-rs0 ++ local cluster=some-name-rs0 ++ local first_timestamp ++ local second_timestamp ++ local retry=0 ++ [[ '' != '' ]] +++ jq '.backups.pitrChunks.pitrChunks | last | .range.end' +++ kubectl_bin exec some-name-rs0-0 -c backup-agent -- pbm status -o json ++++ mktemp +++ local LAST_OUT=/tmp/tmp.BylRZjoAuu ++++ mktemp +++ local LAST_ERR=/tmp/tmp.DccfbXS4AG +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.BylRZjoAuu +++ cat /tmp/tmp.DccfbXS4AG +++ rm /tmp/tmp.BylRZjoAuu /tmp/tmp.DccfbXS4AG +++ return 0 ++ first_timestamp=null ++ sleep 5 ++ [[ null != '' ]] ++ [[ null != \n\u\l\l ]] ++ let retry+=1 ++ [[ 1 -gt 30 ]] ++ [[ null != '' ]] ++ [[ null != \n\u\l\l ]] +++ jq '.backups.pitrChunks.pitrChunks | last | .range.end' +++ kubectl_bin exec some-name-rs0-0 -c backup-agent -- pbm status -o json ++++ mktemp +++ local LAST_OUT=/tmp/tmp.mhpT8XO7eT ++++ mktemp +++ local LAST_ERR=/tmp/tmp.i5g1KBcN1U +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.mhpT8XO7eT +++ cat /tmp/tmp.i5g1KBcN1U +++ rm /tmp/tmp.mhpT8XO7eT /tmp/tmp.i5g1KBcN1U +++ return 0 ++ first_timestamp=null ++ sleep 5 ++ [[ null != '' ]] ++ [[ null != \n\u\l\l ]] ++ let retry+=1 ++ [[ 2 -gt 30 ]] ++ [[ null != '' ]] ++ [[ null != \n\u\l\l ]] +++ kubectl_bin exec some-name-rs0-0 -c backup-agent -- pbm status -o json ++++ mktemp +++ jq '.backups.pitrChunks.pitrChunks | last | .range.end' +++ local LAST_OUT=/tmp/tmp.dValXyThHp ++++ mktemp +++ local LAST_ERR=/tmp/tmp.c3PTTqHnHg +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.dValXyThHp +++ cat /tmp/tmp.c3PTTqHnHg +++ rm /tmp/tmp.dValXyThHp /tmp/tmp.c3PTTqHnHg +++ return 0 ++ first_timestamp=null ++ sleep 5 ++ [[ null != '' ]] ++ [[ null != \n\u\l\l ]] ++ let retry+=1 ++ [[ 3 -gt 30 ]] ++ [[ null != '' ]] ++ [[ null != \n\u\l\l ]] +++ kubectl_bin exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ jq '.backups.pitrChunks.pitrChunks | last | .range.end' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.bJI7wzt4Vz ++++ mktemp +++ local LAST_ERR=/tmp/tmp.bIQ3CUGuna +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.bJI7wzt4Vz +++ cat /tmp/tmp.bIQ3CUGuna +++ rm /tmp/tmp.bJI7wzt4Vz /tmp/tmp.bIQ3CUGuna +++ return 0 ++ first_timestamp=null ++ sleep 5 ++ [[ null != '' ]] ++ [[ null != \n\u\l\l ]] ++ let retry+=1 ++ [[ 4 -gt 30 ]] ++ [[ null != '' ]] ++ [[ null != \n\u\l\l ]] +++ jq '.backups.pitrChunks.pitrChunks | last | .range.end' +++ kubectl_bin exec some-name-rs0-0 -c backup-agent -- pbm status -o json ++++ mktemp +++ local LAST_OUT=/tmp/tmp.WPlKDekgtj ++++ mktemp +++ local LAST_ERR=/tmp/tmp.vKDnqZl8GX +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.WPlKDekgtj +++ cat /tmp/tmp.vKDnqZl8GX +++ rm /tmp/tmp.WPlKDekgtj /tmp/tmp.vKDnqZl8GX +++ return 0 ++ first_timestamp=1747832673 ++ sleep 5 ++ [[ 1747832673 != '' ]] ++ [[ 1747832673 != \n\u\l\l ]] +++ kubectl_bin exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ jq '.backups.pitrChunks.pitrChunks | last | .range.end' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.ExzP4lq2kx ++++ mktemp +++ local LAST_ERR=/tmp/tmp.k0gQA5gmcC +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.ExzP4lq2kx +++ cat /tmp/tmp.k0gQA5gmcC +++ rm /tmp/tmp.ExzP4lq2kx /tmp/tmp.k0gQA5gmcC +++ return 0 ++ second_timestamp=1747832673 ++ let retry+=1 ++ [[ 5 -gt 30 ]] ++ [[ 1747832673 != '' ]] ++ [[ 1747832673 != \n\u\l\l ]] ++ [[ 1747832673 == 1747832673 ]] ++ /usr/bin/date -u -d @1747832673 +%Y-%m-%dT%H:%M:%SZ + latest_restorable_time=2025-05-21T13:04:33Z ++ get_latest_restorable_time_from_backup_object backup-minio-1 ++ local backup_name=backup-minio-1 ++ local latestRestorableTime ++ local retry=0 ++ [[ '' != '' ]] ++ sleep 5 +++ kubectl_bin get psmdb-backup backup-minio-1 -o 'jsonpath={.status.latestRestorableTime}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.jsGD8JZ4fd ++++ mktemp +++ local LAST_ERR=/tmp/tmp.RLcQ4QZ1qD +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl get psmdb-backup backup-minio-1 -o 'jsonpath={.status.latestRestorableTime}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.jsGD8JZ4fd +++ cat /tmp/tmp.RLcQ4QZ1qD +++ rm /tmp/tmp.jsGD8JZ4fd /tmp/tmp.RLcQ4QZ1qD +++ return 0 ++ latestRestorableTime=2025-05-21T13:04:33Z ++ let retry+=1 ++ [[ 1 -gt 30 ]] ++ [[ 2025-05-21T13:04:33Z != '' ]] ++ [[ 2025-05-21T13:04:33Z != \n\u\l\l ]] ++ echo 2025-05-21T13:04:33Z + backup_time=2025-05-21T13:04:33Z + [[ 2025-05-21T13:04:33Z != \2\0\2\5\-\0\5\-\2\1\T\1\3\:\0\4\:\3\3\Z ]] + reset_collection + desc 'reset data' + set +o xtrace ----------------------------------------------------------------------------------- reset data ----------------------------------------------------------------------------------- + run_mongos 'use myApp\n db.test.remove({})' myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 + local 'command=use myApp\n db.test.remove({})' + local uri=myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local port=27017 + local mongo_bin=mongo ++ echo .svc.cluster.local ++ awk -F: '{print $2}' + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27017 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.4WeJWOlMuv +++ mktemp ++ local LAST_ERR=/tmp/tmp.UQOsLAlVPZ ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.4WeJWOlMuv ++ cat /tmp/tmp.UQOsLAlVPZ ++ rm /tmp/tmp.4WeJWOlMuv /tmp/tmp.UQOsLAlVPZ ++ return 0 + local client_container=psmdb-client-66f577db5f-5bzjf + kubectl_bin exec psmdb-client-66f577db5f-5bzjf -- bash -c 'printf '\''use myApp\n db.test.remove({})\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.NAMRfwz21Z ++ mktemp + local LAST_ERR=/tmp/tmp.UguK6wCxyS + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl exec psmdb-client-66f577db5f-5bzjf -- bash -c 'printf '\''use myApp\n db.test.remove({})\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.NAMRfwz21Z Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("12018ab6-d53e-474e-b5fd-df13b8b0df58") } Percona Server for MongoDB server version: v7.0.18-11 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nRemoved" : 1 }) bye + cat /tmp/tmp.UguK6wCxyS + rm /tmp/tmp.NAMRfwz21Z /tmp/tmp.UguK6wCxyS + return 0 + sleep 2 + write_document '' 120 + local cmp_postfix= + local sleep_value=120 + desc 'write initial data, read from all' + set +o xtrace ----------------------------------------------------------------------------------- write initial data, read from all ----------------------------------------------------------------------------------- + run_mongos 'use myApp\n db.test.insert({ x: 100500 })' myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 + local 'command=use myApp\n db.test.insert({ x: 100500 })' + local uri=myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local port=27017 + local mongo_bin=mongo ++ echo .svc.cluster.local ++ awk -F: '{print $2}' + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27017 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.duMy5QX9cv +++ mktemp ++ local LAST_ERR=/tmp/tmp.siLfNzqvK9 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.duMy5QX9cv ++ cat /tmp/tmp.siLfNzqvK9 ++ rm /tmp/tmp.duMy5QX9cv /tmp/tmp.siLfNzqvK9 ++ return 0 + local client_container=psmdb-client-66f577db5f-5bzjf + kubectl_bin exec psmdb-client-66f577db5f-5bzjf -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100500 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.Mofh6XUXLl ++ mktemp + local LAST_ERR=/tmp/tmp.oEKih5YUzY + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl exec psmdb-client-66f577db5f-5bzjf -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100500 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.Mofh6XUXLl Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("d4448a2c-3d8d-4d3d-8992-578eb2a46298") } Percona Server for MongoDB server version: v7.0.18-11 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.oEKih5YUzY + rm /tmp/tmp.Mofh6XUXLl /tmp/tmp.oEKih5YUzY + return 0 + sleep 120 + compare_mongos_cmd find myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 + local command=find + local uri=myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 + local postfix= + local suffix= + local database=myApp + local collection=test + local port=27017 + egrep -v 'I NETWORK|W NETWORK|Error saving history file|Percona Server for MongoDB|connecting to:|Unable to reach primary for set|Implicit session:|versions do not match|Error saving history file:' + run_mongos 'use myApp\n db.test.find()' myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 mongodb '' '' 27017 + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local port=27017 + local mongo_bin=mongo ++ echo .svc.cluster.local ++ awk -F: '{print $2}' + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27017 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' + /usr/bin/sed -re 's/ObjectId\("[0-9a-f]+"\)//; s/-[0-9]+.svc/-xxx.svc/' +++ mktemp ++ local LAST_OUT=/tmp/tmp.ADB5qfWAlM +++ mktemp ++ local LAST_ERR=/tmp/tmp.nywycZokxi ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.ADB5qfWAlM ++ cat /tmp/tmp.nywycZokxi ++ rm /tmp/tmp.ADB5qfWAlM /tmp/tmp.nywycZokxi ++ return 0 + local client_container=psmdb-client-66f577db5f-5bzjf + kubectl_bin exec psmdb-client-66f577db5f-5bzjf -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.yVr8U8ydJc ++ mktemp + local LAST_ERR=/tmp/tmp.LDAYZQ9MhN + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl exec psmdb-client-66f577db5f-5bzjf -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.yVr8U8ydJc + cat /tmp/tmp.LDAYZQ9MhN + rm /tmp/tmp.yVr8U8ydJc /tmp/tmp.LDAYZQ9MhN + return 0 + [[ 0 -eq 0 ]] + diff /mnt/jenkins/workspace/cloud-psmdb-operator_PR-1912/e2e-tests/pitr-physical-backup-source/compare/find.json /tmp/tmp.VnAsP1ZnB4/find ++ run_mongos 'new Date().getTime() / 1000' myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 mongodb '' --quiet ++ local 'command=new Date().getTime() / 1000' ++ local uri=myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 ++ local driver=mongodb ++ local suffix=.svc.cluster.local ++ local mongo_flag=--quiet ++ local port=27017 ++ local mongo_bin=mongo ++ grep -E -v 'I NETWORK|W NETWORK|Error saving history file|Percona Server for MongoDB|connecting to:|Unable to reach primary for set|Implicit session:|versions do not match' +++ echo .svc.cluster.local ++ cut -d. -f1 +++ awk -F: '{print $2}' ++ suffix_port= ++ [[ -z '' ]] ++ suffix=.svc.cluster.local:27017 +++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.nKPWFN5y46 ++++ mktemp +++ local LAST_ERR=/tmp/tmp.Jm9bwKz6pw +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.nKPWFN5y46 +++ cat /tmp/tmp.Jm9bwKz6pw +++ rm /tmp/tmp.nKPWFN5y46 /tmp/tmp.Jm9bwKz6pw +++ return 0 ++ local client_container=psmdb-client-66f577db5f-5bzjf ++ kubectl_bin exec psmdb-client-66f577db5f-5bzjf -- bash -c 'printf '\''new Date().getTime() / 1000\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin --quiet' +++ mktemp ++ local LAST_OUT=/tmp/tmp.NzwmeKhT66 +++ mktemp ++ local LAST_ERR=/tmp/tmp.r1ACliJYxV ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl exec psmdb-client-66f577db5f-5bzjf -- bash -c 'printf '\''new Date().getTime() / 1000\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin --quiet' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.NzwmeKhT66 ++ cat /tmp/tmp.r1ACliJYxV ++ rm /tmp/tmp.NzwmeKhT66 /tmp/tmp.r1ACliJYxV ++ return 0 + time_now=1747832832 + check_recovery backup-minio-1 date 1747832832 '' some-name backupSource + local backup_name=backup-minio-1 + local restore_type=date + local restore_date=1747832832 + local cmp_postfix= + local cluster_name=some-name + local backupSource=backupSource ++ get_latest_oplog_chunk_ts some-name ++ local cluster=some-name +++ kubectl_bin exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ jq '.backups.pitrChunks.pitrChunks | last | .range.end' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.jxS7VmpMDs ++++ mktemp +++ local LAST_ERR=/tmp/tmp.6EtsDronna +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.jxS7VmpMDs +++ cat /tmp/tmp.6EtsDronna +++ rm /tmp/tmp.jxS7VmpMDs /tmp/tmp.6EtsDronna +++ return 0 ++ echo 1747832799 + local latest_ts=1747832799 + desc 'write more data before restore by date' + set +o xtrace ----------------------------------------------------------------------------------- write more data before restore by date ----------------------------------------------------------------------------------- + run_mongos 'use myApp\n db.test.insert({ x: 100501 })' myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 + local 'command=use myApp\n db.test.insert({ x: 100501 })' + local uri=myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local port=27017 + local mongo_bin=mongo ++ awk -F: '{print $2}' ++ echo .svc.cluster.local + suffix_port= + [[ -z '' ]] + suffix=.svc.cluster.local:27017 ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.8M5qY3Yqbx +++ mktemp ++ local LAST_ERR=/tmp/tmp.1907lW7zVg ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in '$(seq 0 2)' ++ set +e ++ kubectl get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.8M5qY3Yqbx ++ cat /tmp/tmp.1907lW7zVg ++ rm /tmp/tmp.8M5qY3Yqbx /tmp/tmp.1907lW7zVg ++ return 0 + local client_container=psmdb-client-66f577db5f-5bzjf + kubectl_bin exec psmdb-client-66f577db5f-5bzjf -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100501 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.P9YBALtRqm ++ mktemp + local LAST_ERR=/tmp/tmp.DyhWeDeuaT + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in '$(seq 0 2)' + set +e + kubectl exec psmdb-client-66f577db5f-5bzjf -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100501 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.P9YBALtRqm Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-mongos.pitr-physical-backup-source-19532.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("8d744169-93fa-45d0-9032-6ca02781d49e") } Percona Server for MongoDB server version: v7.0.18-11 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.DyhWeDeuaT + rm /tmp/tmp.P9YBALtRqm /tmp/tmp.DyhWeDeuaT + return 0 + [[ -n 1747832832 ]] ++ format_date 1747832832 ++ local timestamp=1747832832 +++ TZ=UTC +++ /usr/bin/date -d@1747832832 '+%Y-%m-%d %H:%M:%S' ++ echo 2025-05-21 13:07:12 + desc 'Restoring to time 2025-05-21 13:07:12' + set +o xtrace ----------------------------------------------------------------------------------- Restoring to time 2025-05-21 13:07:12 ----------------------------------------------------------------------------------- + retries=0 + [[ 1747832799 -gt 1747832832 ]] + [[ 0 -gt 30 ]] ++ get_latest_oplog_chunk_ts some-name ++ local cluster=some-name +++ kubectl_bin exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ jq '.backups.pitrChunks.pitrChunks | last | .range.end' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.yECuXNlXIK ++++ mktemp +++ local LAST_ERR=/tmp/tmp.HPcYNXuDtE +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.yECuXNlXIK +++ cat /tmp/tmp.HPcYNXuDtE +++ rm /tmp/tmp.yECuXNlXIK /tmp/tmp.HPcYNXuDtE +++ return 0 ++ echo 1747832799 + latest_ts=1747832799 + retries=1 ++ format_date 1747832799 ++ local timestamp=1747832799 +++ TZ=UTC +++ /usr/bin/date -d@1747832799 '+%Y-%m-%d %H:%M:%S' ++ echo 2025-05-21 13:06:39 ++ format_date 1747832832 ++ local timestamp=1747832832 +++ TZ=UTC +++ /usr/bin/date -d@1747832832 '+%Y-%m-%d %H:%M:%S' ++ echo 2025-05-21 13:07:12 + echo 'Waiting for last oplog chunk (2025-05-21 13:06:39) to be greater than restore target (2025-05-21 13:07:12)' Waiting for last oplog chunk (2025-05-21 13:06:39) to be greater than restore target (2025-05-21 13:07:12) + sleep 10 + [[ 1747832799 -gt 1747832832 ]] + [[ 1 -gt 30 ]] ++ get_latest_oplog_chunk_ts some-name ++ local cluster=some-name +++ kubectl_bin exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ jq '.backups.pitrChunks.pitrChunks | last | .range.end' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.iArjOhupw8 ++++ mktemp +++ local LAST_ERR=/tmp/tmp.ajZcH2O3BP +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.iArjOhupw8 +++ cat /tmp/tmp.ajZcH2O3BP +++ rm /tmp/tmp.iArjOhupw8 /tmp/tmp.ajZcH2O3BP +++ return 0 ++ echo 1747832799 + latest_ts=1747832799 + retries=2 ++ format_date 1747832799 ++ local timestamp=1747832799 +++ TZ=UTC +++ /usr/bin/date -d@1747832799 '+%Y-%m-%d %H:%M:%S' ++ echo 2025-05-21 13:06:39 ++ format_date 1747832832 ++ local timestamp=1747832832 +++ TZ=UTC +++ /usr/bin/date -d@1747832832 '+%Y-%m-%d %H:%M:%S' ++ echo 2025-05-21 13:07:12 + echo 'Waiting for last oplog chunk (2025-05-21 13:06:39) to be greater than restore target (2025-05-21 13:07:12)' Waiting for last oplog chunk (2025-05-21 13:06:39) to be greater than restore target (2025-05-21 13:07:12) + sleep 10 + [[ 1747832799 -gt 1747832832 ]] + [[ 2 -gt 30 ]] ++ get_latest_oplog_chunk_ts some-name ++ local cluster=some-name +++ kubectl_bin exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ jq '.backups.pitrChunks.pitrChunks | last | .range.end' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.Ruks59ECef ++++ mktemp +++ local LAST_ERR=/tmp/tmp.CdrjqX5lGp +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.Ruks59ECef +++ cat /tmp/tmp.CdrjqX5lGp +++ rm /tmp/tmp.Ruks59ECef /tmp/tmp.CdrjqX5lGp +++ return 0 ++ echo 1747832799 + latest_ts=1747832799 + retries=3 ++ format_date 1747832799 ++ local timestamp=1747832799 +++ TZ=UTC +++ /usr/bin/date -d@1747832799 '+%Y-%m-%d %H:%M:%S' ++ echo 2025-05-21 13:06:39 ++ format_date 1747832832 ++ local timestamp=1747832832 +++ TZ=UTC +++ /usr/bin/date -d@1747832832 '+%Y-%m-%d %H:%M:%S' ++ echo 2025-05-21 13:07:12 + echo 'Waiting for last oplog chunk (2025-05-21 13:06:39) to be greater than restore target (2025-05-21 13:07:12)' Waiting for last oplog chunk (2025-05-21 13:06:39) to be greater than restore target (2025-05-21 13:07:12) + sleep 10 + [[ 1747832799 -gt 1747832832 ]] + [[ 3 -gt 30 ]] ++ get_latest_oplog_chunk_ts some-name ++ local cluster=some-name +++ jq '.backups.pitrChunks.pitrChunks | last | .range.end' +++ kubectl_bin exec some-name-rs0-0 -c backup-agent -- pbm status -o json ++++ mktemp +++ local LAST_OUT=/tmp/tmp.44qVBi8vzA ++++ mktemp +++ local LAST_ERR=/tmp/tmp.GBEDXdJ9RY +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.44qVBi8vzA +++ cat /tmp/tmp.GBEDXdJ9RY +++ rm /tmp/tmp.44qVBi8vzA /tmp/tmp.GBEDXdJ9RY +++ return 0 ++ echo 1747832799 + latest_ts=1747832799 + retries=4 ++ format_date 1747832799 ++ local timestamp=1747832799 +++ TZ=UTC +++ /usr/bin/date -d@1747832799 '+%Y-%m-%d %H:%M:%S' ++ echo 2025-05-21 13:06:39 ++ format_date 1747832832 ++ local timestamp=1747832832 +++ TZ=UTC +++ /usr/bin/date -d@1747832832 '+%Y-%m-%d %H:%M:%S' ++ echo 2025-05-21 13:07:12 + echo 'Waiting for last oplog chunk (2025-05-21 13:06:39) to be greater than restore target (2025-05-21 13:07:12)' Waiting for last oplog chunk (2025-05-21 13:06:39) to be greater than restore target (2025-05-21 13:07:12) + sleep 10 + [[ 1747832799 -gt 1747832832 ]] + [[ 4 -gt 30 ]] ++ get_latest_oplog_chunk_ts some-name ++ local cluster=some-name +++ kubectl_bin exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ jq '.backups.pitrChunks.pitrChunks | last | .range.end' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.kPrncKVLot ++++ mktemp +++ local LAST_ERR=/tmp/tmp.xVWTGa1PD9 +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.kPrncKVLot +++ cat /tmp/tmp.xVWTGa1PD9 +++ rm /tmp/tmp.kPrncKVLot /tmp/tmp.xVWTGa1PD9 +++ return 0 ++ echo 1747832799 + latest_ts=1747832799 + retries=5 ++ format_date 1747832799 ++ local timestamp=1747832799 +++ TZ=UTC +++ /usr/bin/date -d@1747832799 '+%Y-%m-%d %H:%M:%S' ++ echo 2025-05-21 13:06:39 ++ format_date 1747832832 ++ local timestamp=1747832832 +++ TZ=UTC +++ /usr/bin/date -d@1747832832 '+%Y-%m-%d %H:%M:%S' ++ echo 2025-05-21 13:07:12 + echo 'Waiting for last oplog chunk (2025-05-21 13:06:39) to be greater than restore target (2025-05-21 13:07:12)' Waiting for last oplog chunk (2025-05-21 13:06:39) to be greater than restore target (2025-05-21 13:07:12) + sleep 10 + [[ 1747832799 -gt 1747832832 ]] + [[ 5 -gt 30 ]] ++ get_latest_oplog_chunk_ts some-name ++ local cluster=some-name +++ jq '.backups.pitrChunks.pitrChunks | last | .range.end' +++ kubectl_bin exec some-name-rs0-0 -c backup-agent -- pbm status -o json ++++ mktemp +++ local LAST_OUT=/tmp/tmp.Lc6EKsWM5F ++++ mktemp +++ local LAST_ERR=/tmp/tmp.7H8gDQlGuy +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.Lc6EKsWM5F +++ cat /tmp/tmp.7H8gDQlGuy +++ rm /tmp/tmp.Lc6EKsWM5F /tmp/tmp.7H8gDQlGuy +++ return 0 ++ echo 1747832799 + latest_ts=1747832799 + retries=6 ++ format_date 1747832799 ++ local timestamp=1747832799 +++ TZ=UTC +++ /usr/bin/date -d@1747832799 '+%Y-%m-%d %H:%M:%S' ++ echo 2025-05-21 13:06:39 ++ format_date 1747832832 ++ local timestamp=1747832832 +++ TZ=UTC +++ /usr/bin/date -d@1747832832 '+%Y-%m-%d %H:%M:%S' ++ echo 2025-05-21 13:07:12 + echo 'Waiting for last oplog chunk (2025-05-21 13:06:39) to be greater than restore target (2025-05-21 13:07:12)' Waiting for last oplog chunk (2025-05-21 13:06:39) to be greater than restore target (2025-05-21 13:07:12) + sleep 10 + [[ 1747832799 -gt 1747832832 ]] + [[ 6 -gt 30 ]] ++ get_latest_oplog_chunk_ts some-name ++ local cluster=some-name +++ kubectl_bin exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ jq '.backups.pitrChunks.pitrChunks | last | .range.end' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.yCQ83GDZ1i ++++ mktemp +++ local LAST_ERR=/tmp/tmp.HyaIMxNfEo +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.yCQ83GDZ1i +++ cat /tmp/tmp.HyaIMxNfEo +++ rm /tmp/tmp.yCQ83GDZ1i /tmp/tmp.HyaIMxNfEo +++ return 0 ++ echo 1747832799 + latest_ts=1747832799 + retries=7 ++ format_date 1747832799 ++ local timestamp=1747832799 +++ TZ=UTC +++ /usr/bin/date -d@1747832799 '+%Y-%m-%d %H:%M:%S' ++ echo 2025-05-21 13:06:39 ++ format_date 1747832832 ++ local timestamp=1747832832 +++ TZ=UTC +++ /usr/bin/date -d@1747832832 '+%Y-%m-%d %H:%M:%S' ++ echo 2025-05-21 13:07:12 + echo 'Waiting for last oplog chunk (2025-05-21 13:06:39) to be greater than restore target (2025-05-21 13:07:12)' Waiting for last oplog chunk (2025-05-21 13:06:39) to be greater than restore target (2025-05-21 13:07:12) + sleep 10 + [[ 1747832799 -gt 1747832832 ]] + [[ 7 -gt 30 ]] ++ get_latest_oplog_chunk_ts some-name ++ local cluster=some-name +++ kubectl_bin exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ jq '.backups.pitrChunks.pitrChunks | last | .range.end' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.DY5HHVBKsc ++++ mktemp +++ local LAST_ERR=/tmp/tmp.aOkd0M5bhI +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in '$(seq 0 2)' +++ set +e +++ kubectl exec some-name-rs0-0 -c backup-agent -- pbm status -o json +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.DY5HHVBKsc +++ cat /tmp/tmp.aOkd0M5bhI +++ rm /tmp/tmp.DY5HHVBKsc /tmp/tmp.aOkd0M5bhI +++ return 0 ++ echo 1747832799 + latest_ts=1747832799 + retries=8 ++ format_date 1747832799 ++ local timestamp=1747832799 +++ TZ=UTC +++ /usr/bin/date -d@1747832799 '+%Y-%m-%d %H:%M:%S' ++ echo 2025-05-21 13:06:39 ++ format_date 1747832832 ++ local timestamp=1747832832 +++ TZ=UTC +++ /usr/bin/date -d@1747832832 '+%Y-%m-%d %H:%M:%S' ++ echo 2025-05-21 13:07:12 + echo 'Waiting for last oplog chunk (2025-05-21 13:06:39) to be greater than restore target (2025-05-21 13:07:12)' Waiting for last oplog chunk (2025-05-21 13:06:39) to be greater than restore target (2025-05-21 13:07:12) + sleep 10