Log: /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/e2e-tests/logs/upgrade-partial-backup.log grep: warning: stray \ before - Warning: version difference between client (1.34) and server (1.31) exceeds the supported minor version skew of +/-1 Warning: version difference between client (1.34) and server (1.31) exceeds the supported minor version skew of +/-1 Warning: version difference between client (1.34) and server (1.31) exceeds the supported minor version skew of +/-1 + '[' -n '' ']' + CLUSTER=some-name + BACKUP_NAME_MINIO=backup-minio + TARGET_OPERATOR_VER=1.22.0 ++ curl -s https://check.percona.com/versions/v1/psmdb-operator ++ jq -r '.versions[].operator' ++ sort -V ++ tail -n1 + INIT_OPERATOR_VER=1.21.1 + [[ 1.21.1 == \1\.\2\2\.\0 ]] + GIT_TAG=v1.21.1 + setup_infra + create_infra_gh_release upgrade-partial-backup-11490 v1.21.1 + local ns=upgrade-partial-backup-11490 + local git_tag=v1.21.1 + check_crd_for_deletion v1.21.1 + local git_tag=v1.21.1 ++ curl -s https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/v1.21.1/deploy/crd.yaml ++ yq eval .metadata.name ++ /usr/sbin/sed s/---//g ++ /usr/sbin/sed ':a;N;$!ba;s/\n/ /g' + 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/perconaservermongodbbackups.psmdb.percona.com -o 'jsonpath={.status.conditions[-1].type}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.miyOaaaYAC +++ mktemp ++ local LAST_ERR=/tmp/tmp.MGycNnaGFs ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get crd/perconaservermongodbbackups.psmdb.percona.com -o 'jsonpath={.status.conditions[-1].type}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.miyOaaaYAC ++ cat /tmp/tmp.MGycNnaGFs ++ rm /tmp/tmp.miyOaaaYAC /tmp/tmp.MGycNnaGFs ++ return 0 + [[ Established == \T\e\r\m\i\n\a\t\i\n\g ]] + 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/perconaservermongodbrestores.psmdb.percona.com -o 'jsonpath={.status.conditions[-1].type}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.WNbXhOajRo +++ mktemp ++ local LAST_ERR=/tmp/tmp.q45up8MrOw ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get crd/perconaservermongodbrestores.psmdb.percona.com -o 'jsonpath={.status.conditions[-1].type}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.WNbXhOajRo ++ cat /tmp/tmp.q45up8MrOw ++ rm /tmp/tmp.WNbXhOajRo /tmp/tmp.q45up8MrOw ++ return 0 + [[ Established == \T\e\r\m\i\n\a\t\i\n\g ]] + 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/perconaservermongodbs.psmdb.percona.com -o 'jsonpath={.status.conditions[-1].type}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.O9TnGpV7Em +++ mktemp ++ local LAST_ERR=/tmp/tmp.OIXMpTNCwp ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get crd/perconaservermongodbs.psmdb.percona.com -o 'jsonpath={.status.conditions[-1].type}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.O9TnGpV7Em ++ cat /tmp/tmp.OIXMpTNCwp ++ rm /tmp/tmp.O9TnGpV7Em /tmp/tmp.OIXMpTNCwp ++ return 0 + [[ Established == \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 ++ helm list --all-namespaces --filter chaos-mesh ++ tail -n1 ++ awk '-F ' '{print $2}' ++ sed s/NAMESPACE// + local chaos_mesh_ns= + desc 'destroy chaos-mesh' + set +o xtrace ----------------------------------------------------------------------------------- destroy chaos-mesh ----------------------------------------------------------------------------------- + '[' -n '' ']' ++ kubectl get MutatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + 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 + : ++ kubectl get ValidatingWebhookConfiguration ++ grep validate-auth ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl api-resources ++ grep chaos-mesh ++ awk '{print $1}' ++ 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 ++ grep chaos-mesh ++ awk '{print $1}' + 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 ----------------------------------------------------------------------------------- + kubectl_bin get ns + egrep -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' + awk '{print$1}' + '[' -n '' ']' + desc 'cleaned up old namespaces psmdb-operator' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces psmdb-operator ----------------------------------------------------------------------------------- + xargs kubectl delete ns + kubectl_bin delete namespace psmdb-operator --ignore-not-found ++ mktemp ++ mktemp + local LAST_OUT=/tmp/tmp.jVssAk8Rqv egrep: warning: egrep is obsolescent; using grep -E + local LAST_OUT=/tmp/tmp.59jMroHGlA ++ mktemp ++ mktemp + local LAST_ERR=/tmp/tmp.hcBsgwUiAl + local exit_status=0 + local timeout=4 ++ seq 0 2 + local LAST_ERR=/tmp/tmp.dahEyZn4mg + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get ns + for i in $(seq 0 2) + set +e + kubectl delete namespace psmdb-operator --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.jVssAk8Rqv + cat /tmp/tmp.hcBsgwUiAl + rm /tmp/tmp.jVssAk8Rqv /tmp/tmp.hcBsgwUiAl + return 0 namespace "upgrade-partial-backup-24503" deleted + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.59jMroHGlA namespace "psmdb-operator" deleted + cat /tmp/tmp.dahEyZn4mg + rm /tmp/tmp.59jMroHGlA /tmp/tmp.dahEyZn4mg + return 0 + kubectl_bin wait --for=delete namespace psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.jysyIirhMH ++ mktemp + local LAST_ERR=/tmp/tmp.W3DxoL3wSV + 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.jysyIirhMH + cat /tmp/tmp.W3DxoL3wSV + rm /tmp/tmp.jysyIirhMH /tmp/tmp.W3DxoL3wSV + 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.je8XymJyRD ++ mktemp + local LAST_ERR=/tmp/tmp.36HGsLx068 + 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.je8XymJyRD namespace/psmdb-operator created + cat /tmp/tmp.36HGsLx068 + rm /tmp/tmp.je8XymJyRD /tmp/tmp.36HGsLx068 + return 0 + set_kube_ctx psmdb-operator + local namespace=psmdb-operator ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.Uak1nKMz06 +++ mktemp ++ local LAST_ERR=/tmp/tmp.H33JRnDFaP ++ 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.Uak1nKMz06 ++ cat /tmp/tmp.H33JRnDFaP ++ rm /tmp/tmp.Uak1nKMz06 /tmp/tmp.H33JRnDFaP ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2105-619f8699-1-cluster1 --namespace=psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.sM4dA8OjDO ++ mktemp + local LAST_ERR=/tmp/tmp.BPE9esq6Ze + 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-2105-619f8699-1-cluster1 --namespace=psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.sM4dA8OjDO Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2105-619f8699-1-cluster1" modified. + cat /tmp/tmp.BPE9esq6Ze + rm /tmp/tmp.sM4dA8OjDO /tmp/tmp.BPE9esq6Ze + return 0 + deploy_operator_gh_release v1.21.1 + local git_tag=v1.21.1 + desc 'start operator v1.21.1' + set +o xtrace ----------------------------------------------------------------------------------- start operator v1.21.1 ----------------------------------------------------------------------------------- + kubectl_bin apply -f https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/v1.21.1/deploy/crd.yaml --server-side ++ mktemp + local LAST_OUT=/tmp/tmp.WUhFNYY9Ng ++ mktemp + local LAST_ERR=/tmp/tmp.OsAX6bIO8j + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/v1.21.1/deploy/crd.yaml --server-side + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.WUhFNYY9Ng 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.OsAX6bIO8j + rm /tmp/tmp.WUhFNYY9Ng /tmp/tmp.OsAX6bIO8j + return 0 + local rbac_yaml=rbac + local operator_yaml=operator + '[' -n psmdb-operator ']' + rbac_yaml=cw-rbac + operator_yaml=cw-operator + kubectl_bin apply -f https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/v1.21.1/deploy/cw-rbac.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.J0AYuwBgX8 ++ mktemp + local LAST_ERR=/tmp/tmp.GjvdHFKEGI + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/v1.21.1/deploy/cw-rbac.yaml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.J0AYuwBgX8 clusterrole.rbac.authorization.k8s.io/percona-server-mongodb-operator unchanged serviceaccount/percona-server-mongodb-operator created clusterrolebinding.rbac.authorization.k8s.io/service-account-percona-server-mongodb-operator unchanged + cat /tmp/tmp.GjvdHFKEGI + rm /tmp/tmp.J0AYuwBgX8 /tmp/tmp.GjvdHFKEGI + return 0 + curl -s https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/v1.21.1/deploy/cw-operator.yaml + yq eval ' ((.. | select(.[] == "DISABLE_TELEMETRY")) |= .value="true") | ((.. | select(.[] == "LOG_LEVEL")) |= .value="DEBUG")' /tmp/tmp.q7y8sYz4tu/cw-operator_v1.21.1.yaml + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.BBc7knW3hQ ++ mktemp + local LAST_ERR=/tmp/tmp.GMDkmNnkip + 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.BBc7knW3hQ deployment.apps/percona-server-mongodb-operator created + cat /tmp/tmp.GMDkmNnkip + rm /tmp/tmp.BBc7knW3hQ /tmp/tmp.GMDkmNnkip + return 0 + sleep 20 ++ 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.KMHtTnvOvs +++ mktemp ++ local LAST_ERR=/tmp/tmp.rqfT9lwqYy ++ 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.KMHtTnvOvs ++ cat /tmp/tmp.rqfT9lwqYy ++ rm /tmp/tmp.KMHtTnvOvs /tmp/tmp.rqfT9lwqYy ++ return 0 + wait_operator_pod percona-server-mongodb-operator-864c6cfcbc-9mdqc + local pod=percona-server-mongodb-operator-864c6cfcbc-9mdqc + set +o xtrace waiting for pod/percona-server-mongodb-operator-864c6cfcbc-9mdqc to be ready.OK + echo 'Print operator info from log' Print operator info from log + grep 'Manager starting up' ++ 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.wSJ95HuMky +++ mktemp ++ local LAST_ERR=/tmp/tmp.lzh7G3RxQX ++ 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.wSJ95HuMky ++ cat /tmp/tmp.lzh7G3RxQX ++ rm /tmp/tmp.wSJ95HuMky /tmp/tmp.lzh7G3RxQX ++ return 0 + kubectl_bin logs -n psmdb-operator percona-server-mongodb-operator-864c6cfcbc-9mdqc ++ mktemp + local LAST_OUT=/tmp/tmp.gmE1bQDyqZ ++ mktemp + local LAST_ERR=/tmp/tmp.SgpRP4i7Gy + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs -n psmdb-operator percona-server-mongodb-operator-864c6cfcbc-9mdqc + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.gmE1bQDyqZ + cat /tmp/tmp.SgpRP4i7Gy + rm /tmp/tmp.gmE1bQDyqZ /tmp/tmp.SgpRP4i7Gy + return 0 2025-11-10T04:17:52.490Z INFO setup Manager starting up {"gitCommit": "1edf59995f7612a767b58c646eaead9ff1fe25ba", "gitBranch": "release-1-21-1", "buildTime": "", "goVersion": "go1.25.3", "os": "linux", "arch": "amd64"} + create_namespace upgrade-partial-backup-11490 + local namespace=upgrade-partial-backup-11490 + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ helm list --all-namespaces --filter chaos-mesh ++ tail -n1 ++ awk '-F ' '{print $2}' ++ sed s/NAMESPACE// + local chaos_mesh_ns= + desc 'destroy chaos-mesh' + set +o xtrace ----------------------------------------------------------------------------------- destroy chaos-mesh ----------------------------------------------------------------------------------- + '[' -n '' ']' ++ kubectl get MutatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + 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 + : ++ kubectl get ValidatingWebhookConfiguration ++ grep validate-auth ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl api-resources ++ grep chaos-mesh ++ awk '{print $1}' ++ 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 ++ grep chaos-mesh ++ awk '{print $1}' + 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 ----------------------------------------------------------------------------------- + kubectl_bin get ns + egrep -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' + awk '{print$1}' + '[' -n '' ']' + desc 'cleaned up old namespaces upgrade-partial-backup-11490' + xargs kubectl delete ns ++ mktemp + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces upgrade-partial-backup-11490 ----------------------------------------------------------------------------------- + kubectl_bin delete namespace upgrade-partial-backup-11490 --ignore-not-found ++ mktemp egrep: warning: egrep is obsolescent; using grep -E + local LAST_OUT=/tmp/tmp.Z1rVpgj3gC + local LAST_OUT=/tmp/tmp.z9GvkiizOo ++ mktemp ++ mktemp + local LAST_ERR=/tmp/tmp.3avm11Hmfo + local exit_status=0 + local timeout=4 ++ seq 0 2 + local LAST_ERR=/tmp/tmp.aQ6PygV16i + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get ns + for i in $(seq 0 2) + set +e + kubectl delete namespace upgrade-partial-backup-11490 --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.Z1rVpgj3gC + cat /tmp/tmp.3avm11Hmfo + rm /tmp/tmp.Z1rVpgj3gC /tmp/tmp.3avm11Hmfo + return 0 error: resource(s) were provided, but no name was specified + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.z9GvkiizOo + cat /tmp/tmp.aQ6PygV16i + rm /tmp/tmp.z9GvkiizOo /tmp/tmp.aQ6PygV16i + return 0 + kubectl_bin wait --for=delete namespace upgrade-partial-backup-11490 ++ mktemp + local LAST_OUT=/tmp/tmp.0RNfjuZai3 ++ mktemp + local LAST_ERR=/tmp/tmp.Iib7IcWwjW + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete namespace upgrade-partial-backup-11490 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.0RNfjuZai3 + cat /tmp/tmp.Iib7IcWwjW + rm /tmp/tmp.0RNfjuZai3 /tmp/tmp.Iib7IcWwjW + return 0 + desc 'create namespace upgrade-partial-backup-11490' + set +o xtrace ----------------------------------------------------------------------------------- create namespace upgrade-partial-backup-11490 ----------------------------------------------------------------------------------- + kubectl_bin create namespace upgrade-partial-backup-11490 ++ mktemp + local LAST_OUT=/tmp/tmp.4xvlNnQr16 ++ mktemp + local LAST_ERR=/tmp/tmp.PLuoZoueDB + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace upgrade-partial-backup-11490 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.4xvlNnQr16 namespace/upgrade-partial-backup-11490 created + cat /tmp/tmp.PLuoZoueDB + rm /tmp/tmp.4xvlNnQr16 /tmp/tmp.PLuoZoueDB + return 0 + set_kube_ctx upgrade-partial-backup-11490 + local namespace=upgrade-partial-backup-11490 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.C7lQpuHoOC +++ mktemp ++ local LAST_ERR=/tmp/tmp.XGX0yhakKS ++ 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.C7lQpuHoOC ++ cat /tmp/tmp.XGX0yhakKS ++ rm /tmp/tmp.C7lQpuHoOC /tmp/tmp.XGX0yhakKS ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2105-619f8699-1-cluster1 --namespace=upgrade-partial-backup-11490 ++ mktemp + local LAST_OUT=/tmp/tmp.Vp0RjA1NDl ++ mktemp + local LAST_ERR=/tmp/tmp.5WwJSWZBpG + 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-2105-619f8699-1-cluster1 --namespace=upgrade-partial-backup-11490 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.Vp0RjA1NDl Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2105-619f8699-1-cluster1" modified. + cat /tmp/tmp.5WwJSWZBpG + rm /tmp/tmp.Vp0RjA1NDl /tmp/tmp.5WwJSWZBpG + 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-2105/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/e2e-tests/conf/client.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/e2e-tests/conf/cloud-secret.yml ++ mktemp + local LAST_OUT=/tmp/tmp.JcD48dgduL ++ mktemp + local LAST_ERR=/tmp/tmp.FmJCkMahQX + 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-2105/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/e2e-tests/conf/client.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/e2e-tests/conf/cloud-secret.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.JcD48dgduL secret/some-users created deployment.apps/psmdb-client created secret/aws-s3-secret created secret/gcp-cs-secret created secret/azure-secret created secret/gcp-cs-sa-key-secret created + cat /tmp/tmp.FmJCkMahQX + rm /tmp/tmp.JcD48dgduL /tmp/tmp.FmJCkMahQX + return 0 + setup_cluster some-name + local cluster=some-name +++ 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.HxD0dOWQf5 ++++ mktemp +++ local LAST_ERR=/tmp/tmp.GLMSowbAoA +++ 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.HxD0dOWQf5 +++ cat /tmp/tmp.GLMSowbAoA +++ rm /tmp/tmp.HxD0dOWQf5 /tmp/tmp.GLMSowbAoA +++ return 0 ++ kubectl_bin get pod -n psmdb-operator percona-server-mongodb-operator-864c6cfcbc-9mdqc -o 'jsonpath={.spec.containers[0].image}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Y66g1BtySH +++ mktemp ++ local LAST_ERR=/tmp/tmp.nHKxzYfAtk ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pod -n psmdb-operator percona-server-mongodb-operator-864c6cfcbc-9mdqc -o 'jsonpath={.spec.containers[0].image}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.Y66g1BtySH ++ cat /tmp/tmp.nHKxzYfAtk ++ rm /tmp/tmp.Y66g1BtySH /tmp/tmp.nHKxzYfAtk ++ return 0 + local init_image=percona/percona-server-mongodb-operator:1.21.1 + desc 'create PSMDB cluster: some-name' + set +o xtrace ----------------------------------------------------------------------------------- create PSMDB cluster: some-name ----------------------------------------------------------------------------------- + get_cluster_gh v1.21.1 + local git_tag=v1.21.1 + curl -s https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/v1.21.1/deploy/cr.yaml + sed s/my-cluster-name/some-name/g + yq '.spec.initImage="percona/percona-server-mongodb-operator:1.21.1"' + yq '.spec.secrets.users="some-users"' + yq .spec.sharding.enabled=false + yq .spec.backup.pitr.enabled=true + yq .spec.backup.pitr.oplogSpanMin=1 + yq eval '.spec.backup.storages.gcp-cs = { "type": "s3", "s3": { "bucket": "operator-testing", "prefix": "upgrade-partial-backup", "region": "us-east-1", "credentialsSecret": "gcp-cs-secret", "endpointUrl": "https://storage.googleapis.com" } }' + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.XBZNxcvFW3 ++ mktemp + local LAST_ERR=/tmp/tmp.vlIjXEiUJp + 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.XBZNxcvFW3 perconaservermongodb.psmdb.percona.com/some-name created + cat /tmp/tmp.vlIjXEiUJp + rm /tmp/tmp.XBZNxcvFW3 /tmp/tmp.vlIjXEiUJp + return 0 + 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.LJZxEWsBbV +++ mktemp ++ local LAST_ERR=/tmp/tmp.6yxqjAxOVe ++ 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.LJZxEWsBbV ++ cat /tmp/tmp.6yxqjAxOVe ++ rm /tmp/tmp.LJZxEWsBbV /tmp/tmp.6yxqjAxOVe ++ return 0 + [[ false == \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")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.6pOKMoVw5g +++ mktemp ++ local LAST_ERR=/tmp/tmp.ExyC2gNPd5 ++ 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")].nonvoting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.6pOKMoVw5g ++ cat /tmp/tmp.ExyC2gNPd5 ++ rm /tmp/tmp.6pOKMoVw5g /tmp/tmp.ExyC2gNPd5 ++ return 0 + [[ false == \t\r\u\e ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.8S7hnMiwHl +++ mktemp ++ local LAST_ERR=/tmp/tmp.mUFKBaV25E ++ 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")].hidden.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.8S7hnMiwHl ++ cat /tmp/tmp.mUFKBaV25E ++ rm /tmp/tmp.8S7hnMiwHl /tmp/tmp.mUFKBaV25E ++ return 0 + [[ false == \t\r\u\e ]] + sleep 10 + [[ true == \t\r\u\e ]] + set +x Waiting for cluster readyness + 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-11-10T04:19:55.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-11-10T04:19:59.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-11-10T04:20:01.000+0000 I listening for the commands + create_user some-name + local cluster=some-name + log 'create user myApp' + set +o xtrace [2025-11-10T04:20:02+0000] create user myApp + run_mongo 'db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})' userAdmin:userAdmin123456@some-name-rs0.upgrade-partial-backup-11490 mongodb + local 'command=db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})' + local uri=userAdmin:userAdmin123456@some-name-rs0.upgrade-partial-backup-11490 + local driver=mongodb + local suffix=.svc.cluster.local ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.QvqVaGPU0E +++ mktemp ++ local LAST_ERR=/tmp/tmp.MMd7eOOCwv ++ 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.QvqVaGPU0E ++ cat /tmp/tmp.MMd7eOOCwv ++ rm /tmp/tmp.QvqVaGPU0E /tmp/tmp.MMd7eOOCwv ++ return 0 + local client_container=psmdb-client-696897d69b-gzw4l + local mongo_flag= + [[ userAdmin:userAdmin123456@some-name-rs0.upgrade-partial-backup-11490 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})\n'\'' | mongo mongodb://userAdmin:userAdmin123456@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.bZMa3kVZab ++ mktemp + local LAST_ERR=/tmp/tmp.4QTP6saFnT + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})\n'\'' | mongo mongodb://userAdmin:userAdmin123456@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.bZMa3kVZab Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb&replicaSet=rs0&ssl=false Implicit session: session { "id" : UUID("a7ceebdd-2cb9-40bd-b074-9d6df7ff745f") } Percona Server for MongoDB server version: v8.0.12-4 WARNING: shell and server versions do not match Successfully added user: { "user" : "myApp", "roles" : [ { "db" : "myApp", "role" : "readWrite" } ] } bye + cat /tmp/tmp.4QTP6saFnT + rm /tmp/tmp.bZMa3kVZab /tmp/tmp.4QTP6saFnT + return 0 + write_document some-name 100500 + local cluster=some-name + local x=100500 + log 'write document: 100500' + set +o xtrace [2025-11-10T04:20:04+0000] write document: 100500 + run_mongo 'use myApp\n db.test.insert({ x: 100500 })' myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 mongodb + local 'command=use myApp\n db.test.insert({ x: 100500 })' + local uri=myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 + local driver=mongodb + local suffix=.svc.cluster.local ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Ihe5CmuVkx +++ mktemp ++ local LAST_ERR=/tmp/tmp.d4W2MUuyen ++ 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.Ihe5CmuVkx ++ cat /tmp/tmp.d4W2MUuyen ++ rm /tmp/tmp.Ihe5CmuVkx /tmp/tmp.d4W2MUuyen ++ return 0 + local client_container=psmdb-client-696897d69b-gzw4l + local mongo_flag= + [[ myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100500 })\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.UcsN1AZUJC ++ mktemp + local LAST_ERR=/tmp/tmp.8wUdhOZV0G + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100500 })\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.UcsN1AZUJC Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb&replicaSet=rs0&ssl=false Implicit session: session { "id" : UUID("5f07b736-1a38-43da-9c5a-f95a3b991512") } Percona Server for MongoDB server version: v8.0.12-4 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.8wUdhOZV0G + rm /tmp/tmp.UcsN1AZUJC /tmp/tmp.8wUdhOZV0G + return 0 + sleep_with_log 3 'wait for data to be replicated' + local d=3 + local 'msg=wait for data to be replicated' + log 'wait for data to be replicated. sleeping for 3 seconds' + set +o xtrace [2025-11-10T04:20:07+0000] wait for data to be replicated. sleeping for 3 seconds + sleep 3 + compare_mongo_cmd find myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 + local command=find + local uri=myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 + local postfix= + local suffix= + local database=myApp + local collection=test + local sort= + local tls=false + local 'full_command=db.test.find()' + [[ -n '' ]] + log 'running db.test.find() in myApp' + set +o xtrace [2025-11-10T04:20:10+0000] running db.test.find() in myApp + [[ false == \t\r\u\e ]] + mongo_command=run_mongo + run_mongo 'use myApp\n db.test.find()' myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 mongodb '' + egrep -v 'I NETWORK|W NETWORK|F 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:|Started a new thread for the timer service' + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 + local driver=mongodb + local suffix=.svc.cluster.local + /usr/sbin/sed -re 's/ObjectId\("[0-9a-f]+"\)//; s/-[0-9]+.svc/-xxx.svc/' ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp egrep: warning: egrep is obsolescent; using grep -E ++ local LAST_OUT=/tmp/tmp.EJCglC7WfE +++ mktemp ++ local LAST_ERR=/tmp/tmp.sUk9rVZuLC ++ 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.EJCglC7WfE ++ cat /tmp/tmp.sUk9rVZuLC ++ rm /tmp/tmp.EJCglC7WfE /tmp/tmp.sUk9rVZuLC ++ return 0 + local client_container=psmdb-client-696897d69b-gzw4l + local mongo_flag= + [[ myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.f8YNltZ4ba ++ mktemp + local LAST_ERR=/tmp/tmp.AtqvWukdVU + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.f8YNltZ4ba + cat /tmp/tmp.AtqvWukdVU + rm /tmp/tmp.f8YNltZ4ba /tmp/tmp.AtqvWukdVU + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/e2e-tests/upgrade-partial-backup/compare/find.json /tmp/tmp.q7y8sYz4tu/find + upgrade_operator + deploy_operator + desc 'start PSMDB operator: perconalab/percona-server-mongodb-operator:PR-2105-619f8699' + set +o xtrace ----------------------------------------------------------------------------------- start PSMDB operator: perconalab/percona-server-mongodb-operator:PR-2105-619f8699 ----------------------------------------------------------------------------------- + local cr_file + '[' -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/e2e-tests/upgrade-partial-backup/conf/crd.yaml ']' + cr_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/deploy/crd.yaml + kubectl_bin apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/deploy/crd.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.ifPnLDJ19q ++ mktemp + local LAST_ERR=/tmp/tmp.cPEwRZg63a + 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-2105/deploy/crd.yaml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.ifPnLDJ19q 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.cPEwRZg63a + rm /tmp/tmp.ifPnLDJ19q /tmp/tmp.cPEwRZg63a + 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-2105/deploy/cw-rbac.yaml + sed -e 's^namespace: .*^namespace: psmdb-operator^' + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.P4WVlUuGG0 ++ mktemp + local LAST_ERR=/tmp/tmp.CjDWyAEpMJ + 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.P4WVlUuGG0 clusterrole.rbac.authorization.k8s.io/percona-server-mongodb-operator unchanged serviceaccount/percona-server-mongodb-operator unchanged clusterrolebinding.rbac.authorization.k8s.io/service-account-percona-server-mongodb-operator unchanged + cat /tmp/tmp.CjDWyAEpMJ + rm /tmp/tmp.P4WVlUuGG0 /tmp/tmp.CjDWyAEpMJ + return 0 + yq eval ' (.spec.template.spec.containers[].image = "perconalab/percona-server-mongodb-operator:PR-2105-619f8699") | ((.. | select(.[] == "DISABLE_TELEMETRY")) |= .value="true") | ((.. | select(.[] == "LOG_LEVEL")) |= .value="DEBUG")' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/deploy/cw-operator.yaml + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.pldjLCABGR ++ mktemp + local LAST_ERR=/tmp/tmp.hWcKPGf7is + 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.pldjLCABGR deployment.apps/percona-server-mongodb-operator configured + cat /tmp/tmp.hWcKPGf7is + rm /tmp/tmp.pldjLCABGR /tmp/tmp.hWcKPGf7is + return 0 + sleep 20 ++ 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.pVCsFwpXbw +++ mktemp ++ local LAST_ERR=/tmp/tmp.k0qIne80Fs ++ 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.pVCsFwpXbw ++ cat /tmp/tmp.k0qIne80Fs ++ rm /tmp/tmp.pVCsFwpXbw /tmp/tmp.k0qIne80Fs ++ return 0 + wait_operator_pod percona-server-mongodb-operator-864c6cfcbc-9mdqc + local pod=percona-server-mongodb-operator-864c6cfcbc-9mdqc + set +o xtrace waiting for pod/percona-server-mongodb-operator-864c6cfcbc-9mdqc to be ready.OK + echo 'Print operator info from log' Print operator info from log + grep 'Manager starting up' ++ 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.itP1MvzdJT +++ mktemp ++ local LAST_ERR=/tmp/tmp.oti3aFhJSN ++ 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.itP1MvzdJT ++ cat /tmp/tmp.oti3aFhJSN ++ rm /tmp/tmp.itP1MvzdJT /tmp/tmp.oti3aFhJSN ++ return 0 + kubectl_bin logs -n psmdb-operator percona-server-mongodb-operator-864c6cfcbc-9mdqc ++ mktemp + local LAST_OUT=/tmp/tmp.jQfx9YuDSO ++ mktemp + local LAST_ERR=/tmp/tmp.DO1JzlvR8R + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl logs -n psmdb-operator percona-server-mongodb-operator-864c6cfcbc-9mdqc + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.jQfx9YuDSO + cat /tmp/tmp.DO1JzlvR8R + rm /tmp/tmp.jQfx9YuDSO /tmp/tmp.DO1JzlvR8R + return 0 2025-11-10T04:17:52.490Z INFO setup Manager starting up {"gitCommit": "1edf59995f7612a767b58c646eaead9ff1fe25ba", "gitBranch": "release-1-21-1", "buildTime": "", "goVersion": "go1.25.3", "os": "linux", "arch": "amd64"} + test_backups some-name + local cluster=some-name + desc 'prepare backups' + set +o xtrace ----------------------------------------------------------------------------------- prepare backups ----------------------------------------------------------------------------------- + run_backup some-name backup-minio logical + local cluster=some-name + local name=backup-minio + local type=logical + local storage=gcp-cs + log 'run backup backup-minio-logical storage: gcp-cs' + set +o xtrace [2025-11-10T04:20:46+0000] run backup backup-minio-logical storage: gcp-cs + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/e2e-tests/upgrade-partial-backup/conf/backup.yml + /usr/sbin/sed -e 's/name:/name: backup-minio-logical/' + /usr/sbin/sed -e 's/clusterName:/clusterName: some-name/' + /usr/sbin/sed -e 's/storageName:/storageName: gcp-cs/' + /usr/sbin/sed -e 's/type:/type: logical/' + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.DynO5YzSS6 ++ mktemp + local LAST_ERR=/tmp/tmp.8eOJwewRkK + 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.DynO5YzSS6 perconaservermongodbbackup.psmdb.percona.com/backup-minio-logical created + cat /tmp/tmp.8eOJwewRkK + rm /tmp/tmp.DynO5YzSS6 /tmp/tmp.8eOJwewRkK + return 0 + wait_backup backup-minio-logical + local backup_name=backup-minio-logical + local target_state=ready + set +o xtrace waiting for backup-minio-logical to reach ready state..................OK + sleep_with_log 70 'wait for oplog chunks to be uploaded' + local d=70 + local 'msg=wait for oplog chunks to be uploaded' + log 'wait for oplog chunks to be uploaded. sleeping for 70 seconds' + set +o xtrace [2025-11-10T04:21:23+0000] wait for oplog chunks to be uploaded. sleeping for 70 seconds + sleep 70 + run_backup some-name backup-minio incremental-base + local cluster=some-name + local name=backup-minio + local type=incremental-base + local storage=gcp-cs + log 'run backup backup-minio-incremental-base storage: gcp-cs' + set +o xtrace [2025-11-10T04:22:33+0000] run backup backup-minio-incremental-base storage: gcp-cs + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/e2e-tests/upgrade-partial-backup/conf/backup.yml + /usr/sbin/sed -e 's/name:/name: backup-minio-incremental-base/' + /usr/sbin/sed -e 's/clusterName:/clusterName: some-name/' + /usr/sbin/sed -e 's/storageName:/storageName: gcp-cs/' + /usr/sbin/sed -e 's/type:/type: incremental-base/' + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.Nkd46H9SGy ++ mktemp + local LAST_ERR=/tmp/tmp.p6dSx1wFb9 + 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.Nkd46H9SGy perconaservermongodbbackup.psmdb.percona.com/backup-minio-incremental-base created + cat /tmp/tmp.p6dSx1wFb9 + rm /tmp/tmp.Nkd46H9SGy /tmp/tmp.p6dSx1wFb9 + return 0 + wait_backup backup-minio-incremental-base + local backup_name=backup-minio-incremental-base + local target_state=ready + set +o xtrace waiting for backup-minio-incremental-base to reach ready state..............OK + log 'write data for PiTR' + set +o xtrace [2025-11-10T04:22:56+0000] write data for PiTR + write_document some-name 100501 + local cluster=some-name + local x=100501 + log 'write document: 100501' + set +o xtrace [2025-11-10T04:22:56+0000] write document: 100501 + run_mongo 'use myApp\n db.test.insert({ x: 100501 })' myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 mongodb + local 'command=use myApp\n db.test.insert({ x: 100501 })' + local uri=myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 + local driver=mongodb + local suffix=.svc.cluster.local ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.6uJC9NN8P5 +++ mktemp ++ local LAST_ERR=/tmp/tmp.okcPjOzgFm ++ 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.6uJC9NN8P5 ++ cat /tmp/tmp.okcPjOzgFm ++ rm /tmp/tmp.6uJC9NN8P5 /tmp/tmp.okcPjOzgFm ++ return 0 + local client_container=psmdb-client-696897d69b-gzw4l + local mongo_flag= + [[ myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100501 })\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.5n0JzpTw0G ++ mktemp + local LAST_ERR=/tmp/tmp.XmfCvmizZI + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100501 })\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.5n0JzpTw0G Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb&replicaSet=rs0&ssl=false Implicit session: session { "id" : UUID("5bfd03d4-d568-4a2a-8baf-792c5ceea4a1") } Percona Server for MongoDB server version: v8.0.12-4 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.XmfCvmizZI + rm /tmp/tmp.5n0JzpTw0G /tmp/tmp.XmfCvmizZI + return 0 + write_document some-name 100502 + local cluster=some-name + local x=100502 + log 'write document: 100502' + set +o xtrace [2025-11-10T04:22:58+0000] write document: 100502 + run_mongo 'use myApp\n db.test.insert({ x: 100502 })' myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 mongodb + local 'command=use myApp\n db.test.insert({ x: 100502 })' + local uri=myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 + local driver=mongodb + local suffix=.svc.cluster.local ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.2qF6z8q22W +++ mktemp ++ local LAST_ERR=/tmp/tmp.LQKxzNTGVd ++ 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.2qF6z8q22W ++ cat /tmp/tmp.LQKxzNTGVd ++ rm /tmp/tmp.2qF6z8q22W /tmp/tmp.LQKxzNTGVd ++ return 0 + local client_container=psmdb-client-696897d69b-gzw4l + local mongo_flag= + [[ myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100502 })\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.a0dPQZXVjg ++ mktemp + local LAST_ERR=/tmp/tmp.vRao5PQb2c + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100502 })\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.a0dPQZXVjg Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb&replicaSet=rs0&ssl=false Implicit session: session { "id" : UUID("c3d522db-1201-4153-9c61-17a75ddd1057") } Percona Server for MongoDB server version: v8.0.12-4 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.vRao5PQb2c + rm /tmp/tmp.a0dPQZXVjg /tmp/tmp.vRao5PQb2c + return 0 + write_document some-name 100503 + local cluster=some-name + local x=100503 + log 'write document: 100503' + set +o xtrace [2025-11-10T04:23:00+0000] write document: 100503 + run_mongo 'use myApp\n db.test.insert({ x: 100503 })' myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 mongodb + local 'command=use myApp\n db.test.insert({ x: 100503 })' + local uri=myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 + local driver=mongodb + local suffix=.svc.cluster.local ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.dY8nptws6e +++ mktemp ++ local LAST_ERR=/tmp/tmp.bIDvK4ELfF ++ 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.dY8nptws6e ++ cat /tmp/tmp.bIDvK4ELfF ++ rm /tmp/tmp.dY8nptws6e /tmp/tmp.bIDvK4ELfF ++ return 0 + local client_container=psmdb-client-696897d69b-gzw4l + local mongo_flag= + [[ myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100503 })\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.JqX8EqDpl2 ++ mktemp + local LAST_ERR=/tmp/tmp.YUBb6ryLmz + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100503 })\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.JqX8EqDpl2 Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb&replicaSet=rs0&ssl=false Implicit session: session { "id" : UUID("f73f360b-509f-4c26-a699-83cbc1d0025d") } Percona Server for MongoDB server version: v8.0.12-4 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.YUBb6ryLmz + rm /tmp/tmp.JqX8EqDpl2 /tmp/tmp.YUBb6ryLmz + return 0 + sleep_with_log 70 'wait for oplog chunks to be uploaded' + local d=70 + local 'msg=wait for oplog chunks to be uploaded' + log 'wait for oplog chunks to be uploaded. sleeping for 70 seconds' + set +o xtrace [2025-11-10T04:23:02+0000] wait for oplog chunks to be uploaded. sleeping for 70 seconds + sleep 70 + compare_mongo_cmd find myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 -2nd .svc.cluster.local myApp test 'sort( { x: 1 } )' + local command=find + local uri=myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 + local postfix=-2nd + local suffix=.svc.cluster.local + local database=myApp + local collection=test + local 'sort=sort( { x: 1 } )' + local tls=false + local 'full_command=db.test.find()' + [[ -n sort( { x: 1 } ) ]] + full_command='db.test.find().sort( { x: 1 } )' + log 'running db.test.find().sort( { x: 1 } ) in myApp' + set +o xtrace [2025-11-10T04:24:12+0000] running db.test.find().sort( { x: 1 } ) in myApp + [[ false == \t\r\u\e ]] + mongo_command=run_mongo + run_mongo 'use myApp\n db.test.find().sort( { x: 1 } )' myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 mongodb .svc.cluster.local + local 'command=use myApp\n db.test.find().sort( { x: 1 } )' + /usr/sbin/sed -re 's/ObjectId\("[0-9a-f]+"\)//; s/-[0-9]+.svc/-xxx.svc/' + local uri=myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 + egrep -v 'I NETWORK|W NETWORK|F 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:|Started a new thread for the timer service' + local driver=mongodb + local suffix=.svc.cluster.local ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp egrep: warning: egrep is obsolescent; using grep -E ++ local LAST_OUT=/tmp/tmp.Y23xuCGhrn +++ mktemp ++ local LAST_ERR=/tmp/tmp.pbu4lvkmlE ++ 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.Y23xuCGhrn ++ cat /tmp/tmp.pbu4lvkmlE ++ rm /tmp/tmp.Y23xuCGhrn /tmp/tmp.pbu4lvkmlE ++ return 0 + local client_container=psmdb-client-696897d69b-gzw4l + local mongo_flag= + [[ myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.find().sort( { x: 1 } )\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.n9FvPUXebN ++ mktemp + local LAST_ERR=/tmp/tmp.bYuJS2Q1A0 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.find().sort( { x: 1 } )\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.n9FvPUXebN + cat /tmp/tmp.bYuJS2Q1A0 + rm /tmp/tmp.n9FvPUXebN /tmp/tmp.bYuJS2Q1A0 + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/e2e-tests/upgrade-partial-backup/compare/find-2nd.json /tmp/tmp.q7y8sYz4tu/find-2nd + log 'PiTR data is ready: OK' + set +o xtrace [2025-11-10T04:24:14+0000] PiTR data is ready: OK + run_backup some-name backup-minio incremental + local cluster=some-name + local name=backup-minio + local type=incremental + local storage=gcp-cs + log 'run backup backup-minio-incremental storage: gcp-cs' + set +o xtrace [2025-11-10T04:24:14+0000] run backup backup-minio-incremental storage: gcp-cs + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/e2e-tests/upgrade-partial-backup/conf/backup.yml + /usr/sbin/sed -e 's/name:/name: backup-minio-incremental/' + /usr/sbin/sed -e 's/clusterName:/clusterName: some-name/' + /usr/sbin/sed -e 's/storageName:/storageName: gcp-cs/' + /usr/sbin/sed -e 's/type:/type: incremental/' + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.w3NVzjwz0S ++ mktemp + local LAST_ERR=/tmp/tmp.mbcCjZecl6 + 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.w3NVzjwz0S perconaservermongodbbackup.psmdb.percona.com/backup-minio-incremental created + cat /tmp/tmp.mbcCjZecl6 + rm /tmp/tmp.w3NVzjwz0S /tmp/tmp.mbcCjZecl6 + return 0 + wait_backup backup-minio-incremental + local backup_name=backup-minio-incremental + local target_state=ready + set +o xtrace waiting for backup-minio-incremental to reach ready state............OK + desc 'Backups are ready: OK' + set +o xtrace ----------------------------------------------------------------------------------- Backups are ready: OK ----------------------------------------------------------------------------------- + test_logical_restore some-name + local cluster=some-name + desc 'Testing logical restore with PiTR' + set +o xtrace ----------------------------------------------------------------------------------- Testing logical restore with PiTR ----------------------------------------------------------------------------------- +++ get_latest_restorable_time some-name-rs0 +++ local cluster=some-name-rs0 +++ local first_timestamp +++ local second_timestamp +++ local retry=0 +++ [[ '' != '' ]] ++++ 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.mevD5ceGCn +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.tJ5QouSJ0F ++++ 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.mevD5ceGCn ++++ cat /tmp/tmp.tJ5QouSJ0F ++++ rm /tmp/tmp.mevD5ceGCn /tmp/tmp.tJ5QouSJ0F ++++ return 0 +++ first_timestamp=1762748630 +++ sleep 5 +++ [[ 1762748630 != '' ]] +++ [[ 1762748630 != \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.pZKJbbZbeX +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.053Q3hNyH6 ++++ 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.pZKJbbZbeX ++++ cat /tmp/tmp.053Q3hNyH6 ++++ rm /tmp/tmp.pZKJbbZbeX /tmp/tmp.053Q3hNyH6 ++++ return 0 +++ second_timestamp=1762748630 +++ let retry+=1 +++ [[ 1 -gt 30 ]] +++ [[ 1762748630 != '' ]] +++ [[ 1762748630 != \n\u\l\l ]] +++ [[ 1762748630 == 1762748630 ]] +++ /usr/sbin/date -u -d @1762748630 +%Y-%m-%dT%H:%M:%SZ ++ format_pitr_target 2025-11-10T04:23:50Z ++ local target=2025-11-10T04:23:50Z ++ echo 2025-11-10T04:23:50Z ++ sed 's/T/ /' ++ sed s/Z// + local 'pitr_target=2025-11-10 04:23:50' + log 'dropping collection: myApp.test' + set +o xtrace [2025-11-10T04:24:42+0000] dropping collection: myApp.test + run_mongo 'use myApp\n db.test.drop()' myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 + local 'command=use myApp\n db.test.drop()' + local uri=myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 + local driver=mongodb+srv + local suffix=.svc.cluster.local ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.bk8jySAWaM +++ mktemp ++ local LAST_ERR=/tmp/tmp.LKCo6693sH ++ 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.bk8jySAWaM ++ cat /tmp/tmp.LKCo6693sH ++ rm /tmp/tmp.bk8jySAWaM /tmp/tmp.LKCo6693sH ++ return 0 + local client_container=psmdb-client-696897d69b-gzw4l + local mongo_flag= + [[ myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.drop()\n'\'' | mongo mongodb+srv://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.xFydn9lXq1 ++ mktemp + local LAST_ERR=/tmp/tmp.KHp07zyMsk + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.drop()\n'\'' | mongo mongodb+srv://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.xFydn9lXq1 Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-rs0-0.some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local:27017,some-name-rs0-1.some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local:27017,some-name-rs0-2.some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb&replicaSet=rs0&ssl=false Implicit session: session { "id" : UUID("f192a684-b48b-4005-94c0-527545c58f8e") } Percona Server for MongoDB server version: v8.0.12-4 WARNING: shell and server versions do not match switched to db myApp true bye + cat /tmp/tmp.KHp07zyMsk + rm /tmp/tmp.xFydn9lXq1 /tmp/tmp.KHp07zyMsk + return 0 + log 'PiTR target is 2025-11-10 04:23:50' + set +o xtrace [2025-11-10T04:24:43+0000] PiTR target is 2025-11-10 04:23:50 + run_restore some-name backup-minio-logical '2025-11-10 04:23:50' + local cluster=some-name + local backup_name=backup-minio-logical + local 'pitr_target=2025-11-10 04:23:50' + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/e2e-tests/upgrade-partial-backup/conf/restore.yml + /usr/sbin/sed -e 's/name:/name: restore-backup-minio-logical/' + /usr/sbin/sed -e 's/clusterName:/clusterName: some-name/' + /usr/sbin/sed -e 's/backupName:/backupName: backup-minio-logical/' + [[ -n 2025-11-10 04:23:50 ]] + target='2025-11-10 04:23:50' + yq -i eval '.spec.pitr = {"type": "date", "date": strenv(target)}' /tmp/tmp.q7y8sYz4tu/restore.yml + kubectl_bin apply -f /tmp/tmp.q7y8sYz4tu/restore.yml ++ mktemp + local LAST_OUT=/tmp/tmp.uipsPzM7Ty ++ mktemp + local LAST_ERR=/tmp/tmp.uJZdoI91mU + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f /tmp/tmp.q7y8sYz4tu/restore.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.uipsPzM7Ty perconaservermongodbrestore.psmdb.percona.com/restore-backup-minio-logical created + cat /tmp/tmp.uJZdoI91mU + rm /tmp/tmp.uipsPzM7Ty /tmp/tmp.uJZdoI91mU + return 0 + wait_restore backup-minio-logical some-name ready + local backup_name=backup-minio-logical + local cluster_name=some-name + local target_state=ready + local wait_cluster_consistency=1 + local wait_time=1780 + local ok_if_ready=0 + set +o xtrace Waiting for the psmdb-restore/restore-backup-minio-logical object to be created.OK Waiting psmdb-restore/restore-backup-minio-logical to reach state "ready" .OK after 0 minutes + [[ 1 -eq 1 ]] + wait_cluster_consistency some-name + local cluster_name=some-name + local wait_time=32 + retry=0 + sleep 7 + echo -n 'waiting for cluster readyness' waiting for cluster readyness++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.LL9wfHbSVM +++ mktemp ++ local LAST_ERR=/tmp/tmp.yxwpfz5UYd ++ 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={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.LL9wfHbSVM ++ cat /tmp/tmp.yxwpfz5UYd ++ rm /tmp/tmp.LL9wfHbSVM /tmp/tmp.yxwpfz5UYd ++ return 0 + [[ ready == \r\e\a\d\y ]] + echo .OK .OK + compare_mongo_cmd find myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 -2nd .svc.cluster.local myApp test 'sort( { x: 1 } )' + local command=find + local uri=myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 + local postfix=-2nd + local suffix=.svc.cluster.local + local database=myApp + local collection=test + local 'sort=sort( { x: 1 } )' + local tls=false + local 'full_command=db.test.find()' + [[ -n sort( { x: 1 } ) ]] + full_command='db.test.find().sort( { x: 1 } )' + log 'running db.test.find().sort( { x: 1 } ) in myApp' + set +o xtrace [2025-11-10T04:25:16+0000] running db.test.find().sort( { x: 1 } ) in myApp + [[ false == \t\r\u\e ]] + mongo_command=run_mongo + run_mongo 'use myApp\n db.test.find().sort( { x: 1 } )' myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 mongodb .svc.cluster.local + local 'command=use myApp\n db.test.find().sort( { x: 1 } )' + local uri=myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 + local driver=mongodb + local suffix=.svc.cluster.local + egrep -v 'I NETWORK|W NETWORK|F 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:|Started a new thread for the timer service' + /usr/sbin/sed -re 's/ObjectId\("[0-9a-f]+"\)//; s/-[0-9]+.svc/-xxx.svc/' ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp egrep: warning: egrep is obsolescent; using grep -E ++ local LAST_OUT=/tmp/tmp.418h3jxhOU +++ mktemp ++ local LAST_ERR=/tmp/tmp.W9lSV6XA5k ++ 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.418h3jxhOU ++ cat /tmp/tmp.W9lSV6XA5k ++ rm /tmp/tmp.418h3jxhOU /tmp/tmp.W9lSV6XA5k ++ return 0 + local client_container=psmdb-client-696897d69b-gzw4l + local mongo_flag= + [[ myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.find().sort( { x: 1 } )\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.wwlLbJVeE9 ++ mktemp + local LAST_ERR=/tmp/tmp.Tm8lOHGH9K + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.find().sort( { x: 1 } )\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.wwlLbJVeE9 + cat /tmp/tmp.Tm8lOHGH9K + rm /tmp/tmp.wwlLbJVeE9 /tmp/tmp.Tm8lOHGH9K + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/e2e-tests/upgrade-partial-backup/compare/find-2nd.json /tmp/tmp.q7y8sYz4tu/find-2nd + log 'Data is restored successfully: OK' + set +o xtrace [2025-11-10T04:25:18+0000] Data is restored successfully: OK + desc 'Logical restore is ready: OK' + set +o xtrace ----------------------------------------------------------------------------------- Logical restore is ready: OK ----------------------------------------------------------------------------------- + test_incremental_restore some-name + local cluster=some-name + desc 'Testing incremental restore with PiTR' + set +o xtrace ----------------------------------------------------------------------------------- Testing incremental restore with PiTR ----------------------------------------------------------------------------------- + log 'dropping collection: myApp.test' + set +o xtrace [2025-11-10T04:25:18+0000] dropping collection: myApp.test + run_mongo 'use myApp\n db.test.drop()' myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 + local 'command=use myApp\n db.test.drop()' + local uri=myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 + local driver=mongodb+srv + local suffix=.svc.cluster.local ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.2Z5qmZxC4G +++ mktemp ++ local LAST_ERR=/tmp/tmp.zYtYyNBrR8 ++ 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.2Z5qmZxC4G ++ cat /tmp/tmp.zYtYyNBrR8 ++ rm /tmp/tmp.2Z5qmZxC4G /tmp/tmp.zYtYyNBrR8 ++ return 0 + local client_container=psmdb-client-696897d69b-gzw4l + local mongo_flag= + [[ myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.drop()\n'\'' | mongo mongodb+srv://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.P74yEsdALW ++ mktemp + local LAST_ERR=/tmp/tmp.uRgE0KKK00 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.drop()\n'\'' | mongo mongodb+srv://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.P74yEsdALW Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-rs0-0.some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local:27017,some-name-rs0-1.some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local:27017,some-name-rs0-2.some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb&replicaSet=rs0&ssl=false Implicit session: session { "id" : UUID("a3b242c7-309d-4af8-83f3-85af11b2a85c") } Percona Server for MongoDB server version: v8.0.12-4 WARNING: shell and server versions do not match switched to db myApp true bye + cat /tmp/tmp.uRgE0KKK00 + rm /tmp/tmp.P74yEsdALW /tmp/tmp.uRgE0KKK00 + return 0 + run_restore some-name backup-minio-incremental + local cluster=some-name + local backup_name=backup-minio-incremental + local pitr_target= + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/e2e-tests/upgrade-partial-backup/conf/restore.yml + /usr/sbin/sed -e 's/name:/name: restore-backup-minio-incremental/' + /usr/sbin/sed -e 's/clusterName:/clusterName: some-name/' + /usr/sbin/sed -e 's/backupName:/backupName: backup-minio-incremental/' + [[ -n '' ]] + kubectl_bin apply -f /tmp/tmp.q7y8sYz4tu/restore.yml ++ mktemp + local LAST_OUT=/tmp/tmp.C7BtCVkKSU ++ mktemp + local LAST_ERR=/tmp/tmp.Gr8F6pNrGw + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl apply -f /tmp/tmp.q7y8sYz4tu/restore.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.C7BtCVkKSU perconaservermongodbrestore.psmdb.percona.com/restore-backup-minio-incremental created + cat /tmp/tmp.Gr8F6pNrGw + rm /tmp/tmp.C7BtCVkKSU /tmp/tmp.Gr8F6pNrGw + return 0 + wait_restore backup-minio-incremental some-name ready + local backup_name=backup-minio-incremental + local cluster_name=some-name + local target_state=ready + local wait_cluster_consistency=1 + local wait_time=1780 + local ok_if_ready=0 + set +o xtrace Waiting for the psmdb-restore/restore-backup-minio-incremental object to be created.OK Waiting psmdb-restore/restore-backup-minio-incremental to reach state "ready" ....OK after 3 minutes + [[ 1 -eq 1 ]] + wait_cluster_consistency some-name + local cluster_name=some-name + local wait_time=32 + retry=0 + sleep 7 + echo -n 'waiting for cluster readyness' waiting for cluster readyness++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.AEL09QOhE4 +++ mktemp ++ local LAST_ERR=/tmp/tmp.HldF7FrlVJ ++ 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={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.AEL09QOhE4 ++ cat /tmp/tmp.HldF7FrlVJ ++ rm /tmp/tmp.AEL09QOhE4 /tmp/tmp.HldF7FrlVJ ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 1 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.qeAq8aSALs +++ mktemp ++ local LAST_ERR=/tmp/tmp.UbXV1uUrVu ++ 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={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.qeAq8aSALs ++ cat /tmp/tmp.UbXV1uUrVu ++ rm /tmp/tmp.qeAq8aSALs /tmp/tmp.UbXV1uUrVu ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 2 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.66pVWju6e3 +++ mktemp ++ local LAST_ERR=/tmp/tmp.0lhzc8Qhk7 ++ 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={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.66pVWju6e3 ++ cat /tmp/tmp.0lhzc8Qhk7 ++ rm /tmp/tmp.66pVWju6e3 /tmp/tmp.0lhzc8Qhk7 ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 3 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.robf6jUKdW +++ mktemp ++ local LAST_ERR=/tmp/tmp.7LkgVp5vbO ++ 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={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.robf6jUKdW ++ cat /tmp/tmp.7LkgVp5vbO ++ rm /tmp/tmp.robf6jUKdW /tmp/tmp.7LkgVp5vbO ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 4 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.CyoHK5Xd1S +++ mktemp ++ local LAST_ERR=/tmp/tmp.MDT7p9k3MR ++ 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={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.CyoHK5Xd1S ++ cat /tmp/tmp.MDT7p9k3MR ++ rm /tmp/tmp.CyoHK5Xd1S /tmp/tmp.MDT7p9k3MR ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 5 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.8T3UocG951 +++ mktemp ++ local LAST_ERR=/tmp/tmp.tbqVWtYdpr ++ 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={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.8T3UocG951 ++ cat /tmp/tmp.tbqVWtYdpr ++ rm /tmp/tmp.8T3UocG951 /tmp/tmp.tbqVWtYdpr ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 6 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.VyezZ3rxtG +++ mktemp ++ local LAST_ERR=/tmp/tmp.kA26780f1J ++ 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={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.VyezZ3rxtG ++ cat /tmp/tmp.kA26780f1J ++ rm /tmp/tmp.VyezZ3rxtG /tmp/tmp.kA26780f1J ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 7 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.dCAdPTFX7A +++ mktemp ++ local LAST_ERR=/tmp/tmp.SpLkX1QVaW ++ 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={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.dCAdPTFX7A ++ cat /tmp/tmp.SpLkX1QVaW ++ rm /tmp/tmp.dCAdPTFX7A /tmp/tmp.SpLkX1QVaW ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 8 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.AyUOD6Wwf8 +++ mktemp ++ local LAST_ERR=/tmp/tmp.Lxtd1UkMqo ++ 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={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.AyUOD6Wwf8 ++ cat /tmp/tmp.Lxtd1UkMqo ++ rm /tmp/tmp.AyUOD6Wwf8 /tmp/tmp.Lxtd1UkMqo ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 9 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.qAEL4ITJsr +++ mktemp ++ local LAST_ERR=/tmp/tmp.ezGlesGWQe ++ 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={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.qAEL4ITJsr ++ cat /tmp/tmp.ezGlesGWQe ++ rm /tmp/tmp.qAEL4ITJsr /tmp/tmp.ezGlesGWQe ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 10 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.pylGcAqIZW +++ mktemp ++ local LAST_ERR=/tmp/tmp.dzGcUB4ECq ++ 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={.status.state}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.pylGcAqIZW ++ cat /tmp/tmp.dzGcUB4ECq ++ rm /tmp/tmp.pylGcAqIZW /tmp/tmp.dzGcUB4ECq ++ return 0 + [[ ready == \r\e\a\d\y ]] + echo .OK .OK + compare_mongo_cmd find myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 -2nd .svc.cluster.local myApp test 'sort( { x: 1 } )' + local command=find + local uri=myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 + local postfix=-2nd + local suffix=.svc.cluster.local + local database=myApp + local collection=test + local 'sort=sort( { x: 1 } )' + local tls=false + local 'full_command=db.test.find()' + [[ -n sort( { x: 1 } ) ]] + full_command='db.test.find().sort( { x: 1 } )' + log 'running db.test.find().sort( { x: 1 } ) in myApp' + set +o xtrace [2025-11-10T04:31:07+0000] running db.test.find().sort( { x: 1 } ) in myApp + [[ false == \t\r\u\e ]] + mongo_command=run_mongo + run_mongo 'use myApp\n db.test.find().sort( { x: 1 } )' myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 mongodb .svc.cluster.local + local 'command=use myApp\n db.test.find().sort( { x: 1 } )' + local uri=myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 + local driver=mongodb + local suffix=.svc.cluster.local + egrep -v 'I NETWORK|W NETWORK|F 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:|Started a new thread for the timer service' + /usr/sbin/sed -re 's/ObjectId\("[0-9a-f]+"\)//; s/-[0-9]+.svc/-xxx.svc/' ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp egrep: warning: egrep is obsolescent; using grep -E ++ local LAST_OUT=/tmp/tmp.KjDtXw5v1l +++ mktemp ++ local LAST_ERR=/tmp/tmp.Ah2D86T4j2 ++ 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.KjDtXw5v1l ++ cat /tmp/tmp.Ah2D86T4j2 ++ rm /tmp/tmp.KjDtXw5v1l /tmp/tmp.Ah2D86T4j2 ++ return 0 + local client_container=psmdb-client-696897d69b-gzw4l + local mongo_flag= + [[ myApp:myPass@some-name-rs0.upgrade-partial-backup-11490 == *cfg* ]] + replica_set=rs0 + kubectl_bin exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.find().sort( { x: 1 } )\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' ++ mktemp + local LAST_OUT=/tmp/tmp.ukQfykiyzp ++ mktemp + local LAST_ERR=/tmp/tmp.5hw5T1X2BG + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-696897d69b-gzw4l -- bash -c 'printf '\''use myApp\n db.test.find().sort( { x: 1 } )\n'\'' | mongo mongodb://myApp:myPass@some-name-rs0.upgrade-partial-backup-11490.svc.cluster.local/admin?ssl=false\&replicaSet=rs0 ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.ukQfykiyzp + cat /tmp/tmp.5hw5T1X2BG + rm /tmp/tmp.ukQfykiyzp /tmp/tmp.5hw5T1X2BG + return 0 + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2105/e2e-tests/upgrade-partial-backup/compare/find-2nd.json /tmp/tmp.q7y8sYz4tu/find-2nd + log 'Data is restored successfully: OK' + set +o xtrace [2025-11-10T04:31:09+0000] Data is restored successfully: OK + desc 'Incremental restore is ready: OK' + set +o xtrace ----------------------------------------------------------------------------------- Incremental restore is ready: OK ----------------------------------------------------------------------------------- + test_backup_deletion some-name + local cluster=some-name ++ get_backup_dest backup-minio-incremental-base ++ local backup_name=backup-minio-incremental-base ++ kubectl_bin get psmdb-backup backup-minio-incremental-base -o 'jsonpath={.status.destination}' ++ sed -e 's/.json$//' ++ sed 's|s3://||' +++ mktemp ++ sed 's|azure://||' ++ sed 's|gs://||' ++ local LAST_OUT=/tmp/tmp.0KLZIkW510 +++ mktemp ++ local LAST_ERR=/tmp/tmp.RGZqTcJGfM ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb-backup backup-minio-incremental-base -o 'jsonpath={.status.destination}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.0KLZIkW510 ++ cat /tmp/tmp.RGZqTcJGfM ++ rm /tmp/tmp.0KLZIkW510 /tmp/tmp.RGZqTcJGfM ++ return 0 + local incremental_base_dest=operator-testing/upgrade-partial-backup/2025-11-10T04:22:35Z ++ get_backup_dest backup-minio-logical ++ local backup_name=backup-minio-logical ++ kubectl_bin get psmdb-backup backup-minio-logical -o 'jsonpath={.status.destination}' ++ sed -e 's/.json$//' ++ sed 's|s3://||' ++ sed 's|azure://||' +++ mktemp ++ sed 's|gs://||' ++ local LAST_OUT=/tmp/tmp.hMywHsbsQp +++ mktemp ++ local LAST_ERR=/tmp/tmp.AqIpcPrLkV ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb-backup backup-minio-logical -o 'jsonpath={.status.destination}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.hMywHsbsQp ++ cat /tmp/tmp.AqIpcPrLkV ++ rm /tmp/tmp.hMywHsbsQp /tmp/tmp.AqIpcPrLkV ++ return 0 + local logical_dest=operator-testing/upgrade-partial-backup/2025-11-10T04:21:12Z + kubectl_bin delete psmdb-backup backup-minio-incremental-base ++ mktemp + local LAST_OUT=/tmp/tmp.YVb0C4Olqw ++ mktemp + local LAST_ERR=/tmp/tmp.bmkcs6uLBd + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete psmdb-backup backup-minio-incremental-base + exit_status=1 + set -e + '[' 1 '!=' 0 -a -n 1 ']' + cat /tmp/tmp.YVb0C4Olqw perconaservermongodbbackup.psmdb.percona.com "backup-minio-incremental-base" deleted from upgrade-partial-backup-11490 namespace + cat /tmp/tmp.bmkcs6uLBd + sleep 0 + for i in $(seq 0 2) + set +e + kubectl delete psmdb-backup backup-minio-incremental-base