Log: /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/logs/demand-backup-incremental-sharded-oss-s3.log Warning: version difference between client (1.36) and server (1.33) exceeds the supported minor version skew of +/-1 Warning: version difference between client (1.36) and server (1.33) exceeds the supported minor version skew of +/-1 Warning: version difference between client (1.36) and server (1.33) exceeds the supported minor version skew of +/-1 + '[' '!' -z '' ']' + create_infra demand-backup-incremental-sharded-oss-s3-32363 + local ns=demand-backup-incremental-sharded-oss-s3-32363 + [[ 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-2409/deploy/crd.yaml --ignore-not-found --wait=false ++ mktemp + local LAST_OUT=/tmp/tmp.xAQRCUr7Td ++ mktemp + local LAST_ERR=/tmp/tmp.GfGxg0CAOp + 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-2409/deploy/crd.yaml --ignore-not-found --wait=false + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.xAQRCUr7Td customresourcedefinition.apiextensions.k8s.io "perconaservermongodbbackups.psmdb.percona.com" deleted customresourcedefinition.apiextensions.k8s.io "perconaservermongodbclustersyncs.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.GfGxg0CAOp + rm /tmp/tmp.xAQRCUr7Td /tmp/tmp.GfGxg0CAOp + return 0 ++ yq eval .metadata.name /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/deploy/crd.yaml ++ grep -v '\-\-\-' grep: warning: stray \ before - grep: warning: stray \ before - + for crd_name in $(yq eval '.metadata.name' "${src_dir}/deploy/crd.yaml" | grep -v '\-\-\-') + kubectl get perconaservermongodbbackups.psmdb.percona.com --all-namespaces -o wide + grep -v NAMESPACE + xargs -L 1 sh -xc 'kubectl patch perconaservermongodbbackups.psmdb.percona.com -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' + kubectl patch perconaservermongodbbackups.psmdb.percona.com -n demand-backup-incremental-sharded-oss-s3-14526 backup-oss-s3-sharded --type=merge -p '{"metadata":{"finalizers":[]}}' perconaservermongodbbackup.psmdb.percona.com/backup-oss-s3-sharded patched + kubectl_bin wait --for=delete crd perconaservermongodbbackups.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.AeEpXBsMTg ++ mktemp + local LAST_ERR=/tmp/tmp.WvkTGtKnMR + 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.AeEpXBsMTg customresourcedefinition.apiextensions.k8s.io/perconaservermongodbbackups.psmdb.percona.com condition met + cat /tmp/tmp.WvkTGtKnMR + rm /tmp/tmp.AeEpXBsMTg /tmp/tmp.WvkTGtKnMR + return 0 + for crd_name in $(yq eval '.metadata.name' "${src_dir}/deploy/crd.yaml" | grep -v '\-\-\-') + kubectl get perconaservermongodbclustersyncs.psmdb.percona.com --all-namespaces -o wide + grep -v NAMESPACE + xargs -L 1 sh -xc 'kubectl patch perconaservermongodbclustersyncs.psmdb.percona.com -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' error: the server doesn't have a resource type "perconaservermongodbclustersyncs" + kubectl patch perconaservermongodbclustersyncs.psmdb.percona.com -n sh --type=merge -p '{"metadata":{"finalizers":[]}}' error: the server doesn't have a resource type "perconaservermongodbclustersyncs" + : + kubectl_bin wait --for=delete crd perconaservermongodbclustersyncs.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.iRYpElEuDZ ++ mktemp + local LAST_ERR=/tmp/tmp.hi5VVy4DAg + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete crd perconaservermongodbclustersyncs.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.iRYpElEuDZ + cat /tmp/tmp.hi5VVy4DAg + rm /tmp/tmp.iRYpElEuDZ /tmp/tmp.hi5VVy4DAg + 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.kNJKf5VaHv ++ mktemp + local LAST_ERR=/tmp/tmp.57eI3cghBZ + 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.kNJKf5VaHv + cat /tmp/tmp.57eI3cghBZ + rm /tmp/tmp.kNJKf5VaHv /tmp/tmp.57eI3cghBZ + 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.N5QnE4gR8C ++ mktemp + local LAST_ERR=/tmp/tmp.11fLU6SL5N + 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.N5QnE4gR8C + cat /tmp/tmp.11fLU6SL5N + rm /tmp/tmp.N5QnE4gR8C /tmp/tmp.11fLU6SL5N + 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-2409/deploy/cw-rbac.yaml --ignore-not-found ++ mktemp + local LAST_OUT=/tmp/tmp.DB7FMcftFH ++ mktemp + local LAST_ERR=/tmp/tmp.hOkXyI0Zez + 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-2409/deploy/cw-rbac.yaml --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.DB7FMcftFH 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.hOkXyI0Zez + rm /tmp/tmp.DB7FMcftFH /tmp/tmp.hOkXyI0Zez + return 0 + check_crd_for_deletion PR-2409-631b79c7b + local git_tag=PR-2409-631b79c7b ++ curl -s https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/PR-2409-631b79c7b/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/null -o 'jsonpath={.status.conditions[-1].type}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.GCYJfW3mui +++ mktemp ++ local LAST_ERR=/tmp/tmp.IG4gu8Pcpp ++ 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.GCYJfW3mui ++ cat /tmp/tmp.IG4gu8Pcpp 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.GCYJfW3mui ++ cat /tmp/tmp.IG4gu8Pcpp 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.GCYJfW3mui ++ cat /tmp/tmp.IG4gu8Pcpp Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ sleep 8 ++ cat /tmp/tmp.GCYJfW3mui ++ cat /tmp/tmp.IG4gu8Pcpp Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ rm /tmp/tmp.GCYJfW3mui /tmp/tmp.IG4gu8Pcpp ++ return 1 + [[ '' == Terminating ]] + '[' -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 ++ sed s/NAMESPACE// ++ awk '-F ' '{print $2}' + 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 ++ awk '{print $1}' ++ grep chaos-mesh + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ grep validate-auth ++ kubectl get ValidatingWebhookConfiguration ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl api-resources ++ awk '{print $1}' ++ grep chaos-mesh ++ 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 + : ++ grep chaos-mesh ++ kubectl get clusterrole ++ 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 + grep -E -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' + awk '{print$1}' ++ mktemp + '[' -n '' ']' + xargs kubectl delete ns + 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.Zcy2L7KP8Z ++ mktemp + local LAST_OUT=/tmp/tmp.8FDGYmS03M ++ mktemp + local LAST_ERR=/tmp/tmp.JlhMMHjeOh + local exit_status=0 + local timeout=4 ++ seq 0 2 + local LAST_ERR=/tmp/tmp.RtAMxV4bPo + 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.Zcy2L7KP8Z + cat /tmp/tmp.JlhMMHjeOh + rm /tmp/tmp.Zcy2L7KP8Z /tmp/tmp.JlhMMHjeOh + return 0 namespace "demand-backup-incremental-sharded-oss-s3-14526" deleted + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.8FDGYmS03M namespace "psmdb-operator" deleted + cat /tmp/tmp.RtAMxV4bPo + rm /tmp/tmp.8FDGYmS03M /tmp/tmp.RtAMxV4bPo + return 0 + kubectl_bin wait --for=delete namespace psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.yIQGSRsUhD ++ mktemp + local LAST_ERR=/tmp/tmp.qSUo4g2Dtz + 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.yIQGSRsUhD + cat /tmp/tmp.qSUo4g2Dtz + rm /tmp/tmp.yIQGSRsUhD /tmp/tmp.qSUo4g2Dtz + 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.lQ4PrxMvJf ++ mktemp + local LAST_ERR=/tmp/tmp.ec0UPP4VnU + 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.lQ4PrxMvJf namespace/psmdb-operator created + cat /tmp/tmp.ec0UPP4VnU + rm /tmp/tmp.lQ4PrxMvJf /tmp/tmp.ec0UPP4VnU + return 0 + set_kube_ctx psmdb-operator + local namespace=psmdb-operator ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.LCbyG8ttV6 +++ mktemp ++ local LAST_ERR=/tmp/tmp.l0iR4ydIqA ++ 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.LCbyG8ttV6 ++ cat /tmp/tmp.l0iR4ydIqA ++ rm /tmp/tmp.LCbyG8ttV6 /tmp/tmp.l0iR4ydIqA ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2409-631b79c7b-9-cluster3 --namespace=psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.qpgjSy3ka4 ++ mktemp + local LAST_ERR=/tmp/tmp.eBE2Mqjm65 + 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-2409-631b79c7b-9-cluster3 --namespace=psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.qpgjSy3ka4 Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2409-631b79c7b-9-cluster3" modified. + cat /tmp/tmp.eBE2Mqjm65 + rm /tmp/tmp.qpgjSy3ka4 /tmp/tmp.eBE2Mqjm65 + return 0 + deploy_operator + desc 'start PSMDB operator: docker.io/perconalab/percona-server-mongodb-operator:PR-2409-631b79c7b' + set +o xtrace ----------------------------------------------------------------------------------- start PSMDB operator: docker.io/perconalab/percona-server-mongodb-operator:PR-2409-631b79c7b ----------------------------------------------------------------------------------- + local cr_file + '[' -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/demand-backup-incremental-sharded-oss-s3/conf/crd.yaml ']' + cr_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/deploy/crd.yaml + kubectl_bin apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/deploy/crd.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.SOcBJvD2zL ++ mktemp + local LAST_ERR=/tmp/tmp.Gnq3P5GS4U + 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-2409/deploy/crd.yaml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.SOcBJvD2zL customresourcedefinition.apiextensions.k8s.io/perconaservermongodbbackups.psmdb.percona.com serverside-applied customresourcedefinition.apiextensions.k8s.io/perconaservermongodbclustersyncs.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.Gnq3P5GS4U + rm /tmp/tmp.SOcBJvD2zL /tmp/tmp.Gnq3P5GS4U + 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-2409/deploy/cw-rbac.yaml + kubectl_bin apply -n psmdb-operator -f - + sed -e 's^namespace: .*^namespace: psmdb-operator^' ++ mktemp + local LAST_OUT=/tmp/tmp.nDCd5apuhS ++ mktemp + local LAST_ERR=/tmp/tmp.gokiH75lxw + 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.nDCd5apuhS 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.gokiH75lxw + rm /tmp/tmp.nDCd5apuhS /tmp/tmp.gokiH75lxw + return 0 + kubectl_bin apply -n psmdb-operator -f - + yq eval $'\n\t\t\t(.spec.template.spec.containers[].image = "docker.io/perconalab/percona-server-mongodb-operator:PR-2409-631b79c7b") |\n\t\t\t((.. | select(.[] == "DISABLE_TELEMETRY")) |= .value="true") |\n\t\t\t((.. | select(.[] == "LOG_LEVEL")) |= .value="DEBUG")' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/deploy/cw-operator.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.jIgiQvFYbo ++ mktemp + local LAST_ERR=/tmp/tmp.ahrqBED2q5 + 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.jIgiQvFYbo deployment.apps/percona-server-mongodb-operator created + cat /tmp/tmp.ahrqBED2q5 + rm /tmp/tmp.jIgiQvFYbo /tmp/tmp.ahrqBED2q5 + 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.IBmcuVeEsd +++ mktemp ++ local LAST_ERR=/tmp/tmp.7wN9QDfqkZ ++ 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.IBmcuVeEsd ++ cat /tmp/tmp.7wN9QDfqkZ ++ rm /tmp/tmp.IBmcuVeEsd /tmp/tmp.7wN9QDfqkZ ++ return 0 + wait_operator_pod percona-server-mongodb-operator-66ccb7fd4-t65fm + local pod=percona-server-mongodb-operator-66ccb7fd4-t65fm + set +o xtrace waiting for pod/percona-server-mongodb-operator-66ccb7fd4-t65fm 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.r4dORhQU96 +++ mktemp ++ local LAST_ERR=/tmp/tmp.lYrwWYjA0y ++ 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.r4dORhQU96 ++ cat /tmp/tmp.lYrwWYjA0y ++ rm /tmp/tmp.r4dORhQU96 /tmp/tmp.lYrwWYjA0y ++ return 0 + kubectl_bin logs -n psmdb-operator percona-server-mongodb-operator-66ccb7fd4-t65fm ++ mktemp + local LAST_OUT=/tmp/tmp.rk35vQ0kfB ++ mktemp + local LAST_ERR=/tmp/tmp.NeZHyXQTrU + 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-66ccb7fd4-t65fm + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.rk35vQ0kfB + cat /tmp/tmp.NeZHyXQTrU + rm /tmp/tmp.rk35vQ0kfB /tmp/tmp.NeZHyXQTrU + return 0 2026-06-22T16:35:20.580Z INFO setup Manager starting up {"gitCommit": "631b79c7bad9f6f83d39b94b8f96a438036de06a", "gitBranch": "PR-2409-631b79c7b", "buildTime": "", "goVersion": "go1.26.4", "os": "linux", "arch": "amd64"} + create_namespace demand-backup-incremental-sharded-oss-s3-32363 + local namespace=demand-backup-incremental-sharded-oss-s3-32363 + 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 + grep -E -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' + awk '{print$1}' + xargs kubectl delete ns ++ mktemp + '[' -n '' ']' + desc 'cleaned up old namespaces demand-backup-incremental-sharded-oss-s3-32363' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces demand-backup-incremental-sharded-oss-s3-32363 ----------------------------------------------------------------------------------- + kubectl_bin delete namespace demand-backup-incremental-sharded-oss-s3-32363 --ignore-not-found + local LAST_OUT=/tmp/tmp.GoyQnBH4zJ ++ mktemp ++ mktemp + local LAST_ERR=/tmp/tmp.HWt291tvYh + local exit_status=0 + local timeout=4 + local LAST_OUT=/tmp/tmp.ngvHT9rIFa ++ seq 0 2 ++ mktemp + for i in $(seq 0 2) + set +e + kubectl get ns + local LAST_ERR=/tmp/tmp.oOX0UI9Pue + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete namespace demand-backup-incremental-sharded-oss-s3-32363 --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.GoyQnBH4zJ + cat /tmp/tmp.HWt291tvYh + rm /tmp/tmp.GoyQnBH4zJ /tmp/tmp.HWt291tvYh + 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.ngvHT9rIFa + cat /tmp/tmp.oOX0UI9Pue + rm /tmp/tmp.ngvHT9rIFa /tmp/tmp.oOX0UI9Pue + return 0 + kubectl_bin wait --for=delete namespace demand-backup-incremental-sharded-oss-s3-32363 ++ mktemp + local LAST_OUT=/tmp/tmp.EJmAnFVvGf ++ mktemp + local LAST_ERR=/tmp/tmp.334TZqF9yz + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete namespace demand-backup-incremental-sharded-oss-s3-32363 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.EJmAnFVvGf + cat /tmp/tmp.334TZqF9yz + rm /tmp/tmp.EJmAnFVvGf /tmp/tmp.334TZqF9yz + return 0 + desc 'create namespace demand-backup-incremental-sharded-oss-s3-32363' + set +o xtrace ----------------------------------------------------------------------------------- create namespace demand-backup-incremental-sharded-oss-s3-32363 ----------------------------------------------------------------------------------- + kubectl_bin create namespace demand-backup-incremental-sharded-oss-s3-32363 ++ mktemp + local LAST_OUT=/tmp/tmp.cXCUm9vZHB ++ mktemp + local LAST_ERR=/tmp/tmp.hyLm85hSCl + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace demand-backup-incremental-sharded-oss-s3-32363 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.cXCUm9vZHB namespace/demand-backup-incremental-sharded-oss-s3-32363 created + cat /tmp/tmp.hyLm85hSCl + rm /tmp/tmp.cXCUm9vZHB /tmp/tmp.hyLm85hSCl + return 0 + set_kube_ctx demand-backup-incremental-sharded-oss-s3-32363 + local namespace=demand-backup-incremental-sharded-oss-s3-32363 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.wy1CrzhABz +++ mktemp ++ local LAST_ERR=/tmp/tmp.GCosEWXojJ ++ 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.wy1CrzhABz ++ cat /tmp/tmp.GCosEWXojJ ++ rm /tmp/tmp.wy1CrzhABz /tmp/tmp.GCosEWXojJ ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2409-631b79c7b-9-cluster3 --namespace=demand-backup-incremental-sharded-oss-s3-32363 ++ mktemp + local LAST_OUT=/tmp/tmp.sDSefv7Cxl ++ mktemp + local LAST_ERR=/tmp/tmp.84TrmMsM2R + 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-2409-631b79c7b-9-cluster3 --namespace=demand-backup-incremental-sharded-oss-s3-32363 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.sDSefv7Cxl Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2409-631b79c7b-9-cluster3" modified. + cat /tmp/tmp.84TrmMsM2R + rm /tmp/tmp.sDSefv7Cxl /tmp/tmp.84TrmMsM2R + return 0 + apply_s3_storage_secrets + desc 'create secrets for cloud storages' + set +o xtrace ----------------------------------------------------------------------------------- create secrets for cloud storages ----------------------------------------------------------------------------------- + '[' -z '' ']' + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/conf/cloud-secret.yml ++ mktemp + local LAST_OUT=/tmp/tmp.uefsgRnNt6 ++ mktemp + local LAST_ERR=/tmp/tmp.StP8pdsEbx + 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-2409/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/conf/cloud-secret.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.uefsgRnNt6 secret/minio-secret created secret/aws-s3-secret created secret/alibaba-cloud-secret created secret/gcp-cs-secret created secret/azure-secret created secret/gcp-cs-sa-key-secret created + cat /tmp/tmp.StP8pdsEbx + rm /tmp/tmp.uefsgRnNt6 /tmp/tmp.StP8pdsEbx + return 0 + desc 'Testing on sharded cluster' + set +o xtrace ----------------------------------------------------------------------------------- Testing on sharded cluster ----------------------------------------------------------------------------------- + log 'Creating PSMDB cluster' + set +o xtrace [2026-06-22T16:36:01+0000] Creating PSMDB cluster + cluster=some-name + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/conf/secrets.yml ++ mktemp + local LAST_OUT=/tmp/tmp.dtP2AzRJDT ++ mktemp + local LAST_ERR=/tmp/tmp.aG3awVYcoI + 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-2409/e2e-tests/conf/secrets.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.dtP2AzRJDT secret/some-users created + cat /tmp/tmp.aG3awVYcoI + rm /tmp/tmp.dtP2AzRJDT /tmp/tmp.aG3awVYcoI + return 0 + apply_cluster /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/demand-backup-incremental-sharded-oss-s3/conf/some-name-sharded.yml + '[' -z '' ']' + kubectl_bin apply -f - + cat_config /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/demand-backup-incremental-sharded-oss-s3/conf/some-name-sharded.yml ++ mktemp + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/demand-backup-incremental-sharded-oss-s3/conf/some-name-sharded.yml + yq eval '(.spec | select(.image == null)).image = "docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0"' + yq eval '(.spec | select(has("pmm"))).pmm.image = "docker.io/percona/pmm-client:2.44.1-1"' + yq eval '(.spec | select(has("initImage"))).initImage = "docker.io/perconalab/percona-server-mongodb-operator:PR-2409-631b79c7b"' + yq eval '(.spec | select(has("backup"))).backup.image = "docker.io/perconalab/percona-server-mongodb-operator:main-backup"' + local LAST_OUT=/tmp/tmp.BsO4EQH4Gq ++ mktemp + yq eval '(.spec | select(has("search"))).search.image = "mongodb/mongodb-community-search:latest"' + /usr/sbin/sed -e s/NAME_SPACE/demand-backup-incremental-sharded-oss-s3-32363/g + yq eval '.spec.upgradeOptions.apply="Never"' + local LAST_ERR=/tmp/tmp.DNSq1J5f7q + 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.BsO4EQH4Gq perconaservermongodb.psmdb.percona.com/some-name created + cat /tmp/tmp.DNSq1J5f7q + rm /tmp/tmp.BsO4EQH4Gq /tmp/tmp.DNSq1J5f7q + return 0 + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/conf/client_with_tls.yml ++ mktemp + local LAST_OUT=/tmp/tmp.bo1WFUjpES ++ mktemp + local LAST_ERR=/tmp/tmp.Lxnx01FDzO + 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-2409/e2e-tests/conf/client_with_tls.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.bo1WFUjpES deployment.apps/psmdb-client created + cat /tmp/tmp.Lxnx01FDzO + rm /tmp/tmp.bo1WFUjpES /tmp/tmp.Lxnx01FDzO + return 0 + log 'check if all pods started' + set +o xtrace [2026-06-22T16:36:06+0000] check if all 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.WU6LTbhfog +++ mktemp ++ local LAST_ERR=/tmp/tmp.hcDd8Os1XB ++ 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.WU6LTbhfog ++ cat /tmp/tmp.hcDd8Os1XB ++ rm /tmp/tmp.WU6LTbhfog /tmp/tmp.hcDd8Os1XB ++ return 0 + [[ '' == true ]] + 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.2aPOR1qySZ +++ mktemp ++ local LAST_ERR=/tmp/tmp.h8jgMiJTSG ++ 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.2aPOR1qySZ ++ cat /tmp/tmp.h8jgMiJTSG ++ rm /tmp/tmp.2aPOR1qySZ /tmp/tmp.h8jgMiJTSG ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.VtwKN1JMsv +++ mktemp ++ local LAST_ERR=/tmp/tmp.khL2wtw3q4 ++ 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.VtwKN1JMsv ++ cat /tmp/tmp.khL2wtw3q4 ++ rm /tmp/tmp.VtwKN1JMsv /tmp/tmp.khL2wtw3q4 ++ return 0 + [[ '' == true ]] + sleep 10 + [[ true == true ]] + set +x Waiting for cluster readyness.......................... + wait_for_running some-name-cfg 3 + local name=some-name-cfg + let last_pod=2 + local check_cluster_readyness=true + 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.9cwRB0fHCZ +++ mktemp ++ local LAST_ERR=/tmp/tmp.hiciG81cLs ++ 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.9cwRB0fHCZ ++ cat /tmp/tmp.hiciG81cLs ++ rm /tmp/tmp.9cwRB0fHCZ /tmp/tmp.hiciG81cLs ++ return 0 + [[ '' == true ]] + 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")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.SVU4wuOCVv +++ mktemp ++ local LAST_ERR=/tmp/tmp.2icC8ETOOy ++ 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")].nonvoting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.SVU4wuOCVv ++ cat /tmp/tmp.2icC8ETOOy ++ rm /tmp/tmp.SVU4wuOCVv /tmp/tmp.2icC8ETOOy ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.wgswi4MNpY +++ mktemp ++ local LAST_ERR=/tmp/tmp.H8199l5cN9 ++ 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")].hidden.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.wgswi4MNpY ++ cat /tmp/tmp.H8199l5cN9 ++ rm /tmp/tmp.wgswi4MNpY /tmp/tmp.H8199l5cN9 ++ return 0 + [[ '' == true ]] + sleep 10 + [[ true == true ]] + set +x Waiting for cluster readyness + wait_for_running some-name-mongos 3 + local name=some-name-mongos + let last_pod=2 + local check_cluster_readyness=true + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=mongos + local cluster_name=some-name ++ seq 0 2 + for i in $(seq 0 $last_pod) + [[ 0 -eq 2 ]] + wait_pod some-name-mongos-0 + local pod=some-name-mongos-0 + set +o xtrace waiting for pod/some-name-mongos-0 to be ready.OK + for i in $(seq 0 $last_pod) + [[ 1 -eq 2 ]] + wait_pod some-name-mongos-1 + local pod=some-name-mongos-1 + set +o xtrace waiting for pod/some-name-mongos-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=="mongos")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.6nqjKZihN5 +++ mktemp ++ local LAST_ERR=/tmp/tmp.7Vx8pDg71e ++ 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=="mongos")].arbiter.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.6nqjKZihN5 ++ cat /tmp/tmp.7Vx8pDg71e ++ rm /tmp/tmp.6nqjKZihN5 /tmp/tmp.7Vx8pDg71e ++ return 0 + [[ '' == true ]] + wait_pod some-name-mongos-2 + local pod=some-name-mongos-2 + set +o xtrace waiting for pod/some-name-mongos-2 to be ready.OK ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.YEaz3stQe6 +++ mktemp ++ local LAST_ERR=/tmp/tmp.m5BQENBX2f ++ 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=="mongos")].nonvoting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.YEaz3stQe6 ++ cat /tmp/tmp.m5BQENBX2f ++ rm /tmp/tmp.YEaz3stQe6 /tmp/tmp.m5BQENBX2f ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.fxFwD9i4rG +++ mktemp ++ local LAST_ERR=/tmp/tmp.rug5Epn6QS ++ 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=="mongos")].hidden.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.fxFwD9i4rG ++ cat /tmp/tmp.rug5Epn6QS ++ rm /tmp/tmp.fxFwD9i4rG /tmp/tmp.rug5Epn6QS ++ return 0 + [[ '' == true ]] + sleep 10 + [[ true == true ]] + set +x Waiting for cluster readyness + 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.5ciFx9RJjE +++ mktemp ++ local LAST_ERR=/tmp/tmp.7Wo4amDhAZ ++ 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.5ciFx9RJjE ++ cat /tmp/tmp.7Wo4amDhAZ ++ rm /tmp/tmp.5ciFx9RJjE /tmp/tmp.7Wo4amDhAZ ++ return 0 + [[ ready == ready ]] + echo .OK .OK ++ kubectl_bin get svc some-name-mongos '-o=jsonpath={.status}' ++ jq -r 'select(.loadBalancer != null and .loadBalancer.ingress != null and .loadBalancer.ingress != []) | .loadBalancer.ingress[0] | if .ip then .ip else .hostname end' +++ mktemp ++ local LAST_OUT=/tmp/tmp.m9zedBDgxk +++ mktemp ++ local LAST_ERR=/tmp/tmp.mpgcqOlDAe ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get svc some-name-mongos '-o=jsonpath={.status}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.m9zedBDgxk ++ cat /tmp/tmp.mpgcqOlDAe ++ rm /tmp/tmp.m9zedBDgxk /tmp/tmp.mpgcqOlDAe ++ return 0 + lbEndpoint=34.42.83.88 + '[' -z 34.42.83.88 ']' + run_mongos 'db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})' userAdmin:userAdmin123456@some-name-mongos.demand-backup-incremental-sharded-oss-s3-32363 + local 'command=db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})' + local uri=userAdmin:userAdmin123456@some-name-mongos.demand-backup-incremental-sharded-oss-s3-32363 + 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.OmZFb9ORTW +++ mktemp ++ local LAST_ERR=/tmp/tmp.Dd3sAJACby ++ 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.OmZFb9ORTW ++ cat /tmp/tmp.Dd3sAJACby ++ rm /tmp/tmp.OmZFb9ORTW /tmp/tmp.Dd3sAJACby ++ return 0 + local client_container=psmdb-client-5649fbb65f-l9sbz + kubectl_bin exec psmdb-client-5649fbb65f-l9sbz -- bash -c 'printf '\''db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})\n'\'' | mongo mongodb://userAdmin:userAdmin123456@some-name-mongos.demand-backup-incremental-sharded-oss-s3-32363.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.wZ8TCGyRTJ ++ mktemp + local LAST_ERR=/tmp/tmp.eF0XZllwTM + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-5649fbb65f-l9sbz -- bash -c 'printf '\''db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})\n'\'' | mongo mongodb://userAdmin:userAdmin123456@some-name-mongos.demand-backup-incremental-sharded-oss-s3-32363.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.wZ8TCGyRTJ Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-mongos.demand-backup-incremental-sharded-oss-s3-32363.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("5db35c64-895f-4c4d-b403-0bb6d7908f67") } Percona Server for MongoDB server version: v8.0.23-10 WARNING: shell and server versions do not match Successfully added user: { "user" : "myApp", "roles" : [ { "db" : "myApp", "role" : "readWrite" } ] } bye + cat /tmp/tmp.eF0XZllwTM + rm /tmp/tmp.wZ8TCGyRTJ /tmp/tmp.eF0XZllwTM + return 0 + sleep 1 + run_mongos 'use myApp\n db.test.insert({ x: 100501 })' myApp:myPass@some-name-mongos.demand-backup-incremental-sharded-oss-s3-32363 + local 'command=use myApp\n db.test.insert({ x: 100501 })' + local uri=myApp:myPass@some-name-mongos.demand-backup-incremental-sharded-oss-s3-32363 + 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.cekYuZpAY8 +++ mktemp ++ local LAST_ERR=/tmp/tmp.Z7jhYz6rOV ++ 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.cekYuZpAY8 ++ cat /tmp/tmp.Z7jhYz6rOV ++ rm /tmp/tmp.cekYuZpAY8 /tmp/tmp.Z7jhYz6rOV ++ return 0 + local client_container=psmdb-client-5649fbb65f-l9sbz + kubectl_bin exec psmdb-client-5649fbb65f-l9sbz -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100501 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.demand-backup-incremental-sharded-oss-s3-32363.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.B7HqeqwMx5 ++ mktemp + local LAST_ERR=/tmp/tmp.WzRkCSIyfD + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-5649fbb65f-l9sbz -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100501 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.demand-backup-incremental-sharded-oss-s3-32363.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.B7HqeqwMx5 Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-mongos.demand-backup-incremental-sharded-oss-s3-32363.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("7b3d03f3-171d-46ca-89f9-491b043782b5") } Percona Server for MongoDB server version: v8.0.23-10 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.WzRkCSIyfD + rm /tmp/tmp.B7HqeqwMx5 /tmp/tmp.WzRkCSIyfD + return 0 + sleep 5 + compare_mongos_cmd find myApp:myPass@some-name-mongos.demand-backup-incremental-sharded-oss-s3-32363 -sharded + local command=find + local uri=myApp:myPass@some-name-mongos.demand-backup-incremental-sharded-oss-s3-32363 + local postfix=-sharded + local suffix= + local database=myApp + local collection=test + local port=27017 + local tls=false + [[ false == true ]] + mongos_command=run_mongos + log 'running db.test.command() in myApp' + set +o xtrace [2026-06-22T16:39:19+0000] running db.test.command() in myApp + run_mongos 'use myApp\n db.test.find()' myApp:myPass@some-name-mongos.demand-backup-incremental-sharded-oss-s3-32363 mongodb '' '' 27017 + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-mongos.demand-backup-incremental-sharded-oss-s3-32363 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + 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|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/' ++ 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.q5reaGXUR1 +++ mktemp ++ local LAST_ERR=/tmp/tmp.tSl2XKzHbN ++ 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.q5reaGXUR1 ++ cat /tmp/tmp.tSl2XKzHbN ++ rm /tmp/tmp.q5reaGXUR1 /tmp/tmp.tSl2XKzHbN ++ return 0 + local client_container=psmdb-client-5649fbb65f-l9sbz + kubectl_bin exec psmdb-client-5649fbb65f-l9sbz -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.demand-backup-incremental-sharded-oss-s3-32363.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.2A82LDRBDA ++ mktemp + local LAST_ERR=/tmp/tmp.aQSw9AworV + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-5649fbb65f-l9sbz -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.demand-backup-incremental-sharded-oss-s3-32363.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.2A82LDRBDA + cat /tmp/tmp.aQSw9AworV + rm /tmp/tmp.2A82LDRBDA /tmp/tmp.aQSw9AworV + return 0 + [[ 0 -eq 0 ]] + diff /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/demand-backup-incremental-sharded-oss-s3/compare/find-sharded.json /tmp/tmp.r8jKYejai5/find-sharded + log 'waiting 60 seconds for stable timestamp in wiredtiger' + set +o xtrace [2026-06-22T16:39:22+0000] waiting 60 seconds for stable timestamp in wiredtiger + sleep 80 + log 'running backup' + set +o xtrace [2026-06-22T16:40:42+0000] running backup + backup_name_oss_s3_sharded=backup-oss-s3-sharded + run_backup oss-s3 backup-oss-s3-sharded incremental-base + local storage=oss-s3 + local backup_name=backup-oss-s3-sharded + local type=incremental-base + log 'running backup backup-oss-s3-sharded' + set +o xtrace [2026-06-22T16:40:42+0000] running backup backup-oss-s3-sharded + yq eval $'.metadata.name = "backup-oss-s3-sharded"\n\t\t\t| .spec.storageName = "oss-s3"\n\t\t\t| .spec.type = "incremental-base"' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/demand-backup-incremental-sharded-oss-s3/conf/backup-oss-s3.yml + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.AOSEPR5mV5 ++ mktemp + local LAST_ERR=/tmp/tmp.s4rOSeA8Dz + 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.AOSEPR5mV5 perconaservermongodbbackup.psmdb.percona.com/backup-oss-s3-sharded created + cat /tmp/tmp.s4rOSeA8Dz + rm /tmp/tmp.AOSEPR5mV5 /tmp/tmp.s4rOSeA8Dz + return 0 + wait_backup backup-oss-s3-sharded + local backup_name=backup-oss-s3-sharded + local target_state=ready + set +o xtrace waiting for backup-oss-s3-sharded to reach ready state..................................................OK + check_backup_in_storage backup-oss-s3-sharded alibaba-s3 rs0 + local backup=backup-oss-s3-sharded + local storage_type=alibaba-s3 + local replset=rs0 + local file=filelist.pbm + local protocol=http + local endpoint ++ get_backup_dest backup-oss-s3-sharded ++ local backup_name=backup-oss-s3-sharded ++ kubectl_bin get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.status.destination}' ++ /usr/sbin/sed 's|https://engk8soperators.blob.core.windows.net/||' ++ sed -e 's/.json$//' +++ mktemp ++ sed 's|s3://||' ++ sed 's|azure://||' ++ sed 's|gs://||' ++ local LAST_OUT=/tmp/tmp.IN3yKRrUVe ++ sed 's|oss://||' +++ mktemp ++ local LAST_ERR=/tmp/tmp.AoSgZH6UPo ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.status.destination}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.IN3yKRrUVe ++ cat /tmp/tmp.AoSgZH6UPo ++ rm /tmp/tmp.IN3yKRrUVe /tmp/tmp.AoSgZH6UPo ++ return 0 + backup_dest=operator-testing/psmdb-demand-backup-incremental-sharded-oss-s3/2026-06-22T16:40:45Z + case ${storage_type} in ++ get_backup_storage_s3_field backup-oss-s3-sharded endpointUrl ++ local backup_name=backup-oss-s3-sharded ++ local field=endpointUrl ++ local cluster_name ++ local storage_name +++ get_backup_cluster_name backup-oss-s3-sharded +++ local backup_name=backup-oss-s3-sharded +++ kubectl_bin get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.spec.clusterName}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.YWn6dJWNKW ++++ mktemp +++ local LAST_ERR=/tmp/tmp.HKuLnSvtBY +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.spec.clusterName}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.YWn6dJWNKW +++ cat /tmp/tmp.HKuLnSvtBY +++ rm /tmp/tmp.YWn6dJWNKW /tmp/tmp.HKuLnSvtBY +++ return 0 ++ cluster_name=some-name +++ get_backup_storage_name backup-oss-s3-sharded +++ local backup_name=backup-oss-s3-sharded +++ kubectl_bin get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.spec.storageName}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.GY8x7vEJFb ++++ mktemp +++ local LAST_ERR=/tmp/tmp.aJALzYXfUQ +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.spec.storageName}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.GY8x7vEJFb +++ cat /tmp/tmp.aJALzYXfUQ +++ rm /tmp/tmp.GY8x7vEJFb /tmp/tmp.aJALzYXfUQ +++ return 0 ++ storage_name=oss-s3 ++ kubectl_bin get psmdb some-name -o json ++ jq -r --arg storage oss-s3 --arg field endpointUrl '.spec.backup.storages[$storage].s3[$field]' +++ mktemp ++ local LAST_OUT=/tmp/tmp.1tRlU2d5Id +++ mktemp ++ local LAST_ERR=/tmp/tmp.eaB93c1T8C ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o json ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.1tRlU2d5Id ++ cat /tmp/tmp.eaB93c1T8C ++ rm /tmp/tmp.1tRlU2d5Id /tmp/tmp.eaB93c1T8C ++ return 0 + endpoint=https://s3.oss-eu-central-1.aliyuncs.com ++ get_backup_storage_s3_field backup-oss-s3-sharded region ++ local backup_name=backup-oss-s3-sharded ++ local field=region ++ local cluster_name ++ local storage_name +++ get_backup_cluster_name backup-oss-s3-sharded +++ local backup_name=backup-oss-s3-sharded +++ kubectl_bin get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.spec.clusterName}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.VyX6KSMpog ++++ mktemp +++ local LAST_ERR=/tmp/tmp.CNPmeY3Uw1 +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.spec.clusterName}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.VyX6KSMpog +++ cat /tmp/tmp.CNPmeY3Uw1 +++ rm /tmp/tmp.VyX6KSMpog /tmp/tmp.CNPmeY3Uw1 +++ return 0 ++ cluster_name=some-name +++ get_backup_storage_name backup-oss-s3-sharded +++ local backup_name=backup-oss-s3-sharded +++ kubectl_bin get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.spec.storageName}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.JZuWiai5B1 ++++ mktemp +++ local LAST_ERR=/tmp/tmp.X7auSXRSQE +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.spec.storageName}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.JZuWiai5B1 +++ cat /tmp/tmp.X7auSXRSQE +++ rm /tmp/tmp.JZuWiai5B1 /tmp/tmp.X7auSXRSQE +++ return 0 ++ storage_name=oss-s3 ++ kubectl_bin get psmdb some-name -o json ++ jq -r --arg storage oss-s3 --arg field region '.spec.backup.storages[$storage].s3[$field]' +++ mktemp ++ local LAST_OUT=/tmp/tmp.0AfTRgBBIQ +++ mktemp ++ local LAST_ERR=/tmp/tmp.dRryMPg7TX ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o json ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.0AfTRgBBIQ ++ cat /tmp/tmp.dRryMPg7TX ++ rm /tmp/tmp.0AfTRgBBIQ /tmp/tmp.dRryMPg7TX ++ return 0 + region=eu-central-1 + setup_alibaba_cloud_s3_credentials eu-central-1 + local region=eu-central-1 + local secret_name=alibaba-cloud-secret + echo 'Setting up Alibaba Cloud S3-compatible credentials from secret: alibaba-cloud-secret' Setting up Alibaba Cloud S3-compatible credentials from secret: alibaba-cloud-secret + local trace_was_on=0 + [[ ehxB == *x* ]] + trace_was_on=1 + set +x + echo 'Alibaba Cloud S3-compatible credentials configured successfully' Alibaba Cloud S3-compatible credentials configured successfully + check_backup_existence_aws operator-testing/psmdb-demand-backup-incremental-sharded-oss-s3/2026-06-22T16:40:45Z /rs0/filelist.pbm https://s3.oss-eu-central-1.aliyuncs.com alibaba-cloud-s3 ++ cut -d/ -f1 ++ echo operator-testing/psmdb-demand-backup-incremental-sharded-oss-s3/2026-06-22T16:40:45Z + bucket=operator-testing ++ echo operator-testing/psmdb-demand-backup-incremental-sharded-oss-s3/2026-06-22T16:40:45Z ++ cut -d/ -f2- + key_prefix=psmdb-demand-backup-incremental-sharded-oss-s3/2026-06-22T16:40:45Z + key=/rs0/filelist.pbm + endpoint=https://s3.oss-eu-central-1.aliyuncs.com + storage_name=alibaba-cloud-s3 + retry=0 + endpoint_arg=() + local endpoint_arg + [[ -n https://s3.oss-eu-central-1.aliyuncs.com ]] + endpoint_arg=(--endpoint-url "$endpoint") + aws --endpoint-url https://s3.oss-eu-central-1.aliyuncs.com s3api head-object --bucket operator-testing --key psmdb-demand-backup-incremental-sharded-oss-s3/2026-06-22T16:40:45Z/rs0/filelist.pbm + echo 'Backup operator-testing/psmdb-demand-backup-incremental-sharded-oss-s3/2026-06-22T16:40:45Z//rs0/filelist.pbm found in alibaba-cloud-s3' Backup operator-testing/psmdb-demand-backup-incremental-sharded-oss-s3/2026-06-22T16:40:45Z//rs0/filelist.pbm found in alibaba-cloud-s3 + check_backup_in_storage backup-oss-s3-sharded alibaba-s3 cfg + local backup=backup-oss-s3-sharded + local storage_type=alibaba-s3 + local replset=cfg + local file=filelist.pbm + local protocol=http + local endpoint ++ get_backup_dest backup-oss-s3-sharded ++ local backup_name=backup-oss-s3-sharded ++ /usr/sbin/sed 's|https://engk8soperators.blob.core.windows.net/||' ++ kubectl_bin get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.status.destination}' ++ sed 's|s3://||' ++ sed -e 's/.json$//' ++ sed 's|azure://||' ++ sed 's|oss://||' ++ sed 's|gs://||' +++ mktemp ++ local LAST_OUT=/tmp/tmp.gmT4sWg9oL +++ mktemp ++ local LAST_ERR=/tmp/tmp.hdZa3LedBl ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.status.destination}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.gmT4sWg9oL ++ cat /tmp/tmp.hdZa3LedBl ++ rm /tmp/tmp.gmT4sWg9oL /tmp/tmp.hdZa3LedBl ++ return 0 + backup_dest=operator-testing/psmdb-demand-backup-incremental-sharded-oss-s3/2026-06-22T16:40:45Z + case ${storage_type} in ++ get_backup_storage_s3_field backup-oss-s3-sharded endpointUrl ++ local backup_name=backup-oss-s3-sharded ++ local field=endpointUrl ++ local cluster_name ++ local storage_name +++ get_backup_cluster_name backup-oss-s3-sharded +++ local backup_name=backup-oss-s3-sharded +++ kubectl_bin get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.spec.clusterName}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.xCDGjinS3S ++++ mktemp +++ local LAST_ERR=/tmp/tmp.pLNuVCr5Q6 +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.spec.clusterName}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.xCDGjinS3S +++ cat /tmp/tmp.pLNuVCr5Q6 +++ rm /tmp/tmp.xCDGjinS3S /tmp/tmp.pLNuVCr5Q6 +++ return 0 ++ cluster_name=some-name +++ get_backup_storage_name backup-oss-s3-sharded +++ local backup_name=backup-oss-s3-sharded +++ kubectl_bin get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.spec.storageName}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.8VWZY87zrM ++++ mktemp +++ local LAST_ERR=/tmp/tmp.RnQuzIlsJK +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.spec.storageName}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.8VWZY87zrM +++ cat /tmp/tmp.RnQuzIlsJK +++ rm /tmp/tmp.8VWZY87zrM /tmp/tmp.RnQuzIlsJK +++ return 0 ++ storage_name=oss-s3 ++ kubectl_bin get psmdb some-name -o json ++ jq -r --arg storage oss-s3 --arg field endpointUrl '.spec.backup.storages[$storage].s3[$field]' +++ mktemp ++ local LAST_OUT=/tmp/tmp.0WCM0EV1Ce +++ mktemp ++ local LAST_ERR=/tmp/tmp.PIT0o83HL0 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o json ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.0WCM0EV1Ce ++ cat /tmp/tmp.PIT0o83HL0 ++ rm /tmp/tmp.0WCM0EV1Ce /tmp/tmp.PIT0o83HL0 ++ return 0 + endpoint=https://s3.oss-eu-central-1.aliyuncs.com ++ get_backup_storage_s3_field backup-oss-s3-sharded region ++ local backup_name=backup-oss-s3-sharded ++ local field=region ++ local cluster_name ++ local storage_name +++ get_backup_cluster_name backup-oss-s3-sharded +++ local backup_name=backup-oss-s3-sharded +++ kubectl_bin get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.spec.clusterName}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.hJtp8SJiZy ++++ mktemp +++ local LAST_ERR=/tmp/tmp.8MgtvuLn0f +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.spec.clusterName}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.hJtp8SJiZy +++ cat /tmp/tmp.8MgtvuLn0f +++ rm /tmp/tmp.hJtp8SJiZy /tmp/tmp.8MgtvuLn0f +++ return 0 ++ cluster_name=some-name +++ get_backup_storage_name backup-oss-s3-sharded +++ local backup_name=backup-oss-s3-sharded +++ kubectl_bin get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.spec.storageName}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.CXFDQ4k8CE ++++ mktemp +++ local LAST_ERR=/tmp/tmp.CWbS0HZMUM +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl get psmdb-backup backup-oss-s3-sharded -o 'jsonpath={.spec.storageName}' +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.CXFDQ4k8CE +++ cat /tmp/tmp.CWbS0HZMUM +++ rm /tmp/tmp.CXFDQ4k8CE /tmp/tmp.CWbS0HZMUM +++ return 0 ++ storage_name=oss-s3 ++ kubectl_bin get psmdb some-name -o json ++ jq -r --arg storage oss-s3 --arg field region '.spec.backup.storages[$storage].s3[$field]' +++ mktemp ++ local LAST_OUT=/tmp/tmp.vsWIExK1se +++ mktemp ++ local LAST_ERR=/tmp/tmp.c5g2RX9U27 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get psmdb some-name -o json ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.vsWIExK1se ++ cat /tmp/tmp.c5g2RX9U27 ++ rm /tmp/tmp.vsWIExK1se /tmp/tmp.c5g2RX9U27 ++ return 0 + region=eu-central-1 + setup_alibaba_cloud_s3_credentials eu-central-1 + local region=eu-central-1 + local secret_name=alibaba-cloud-secret + echo 'Setting up Alibaba Cloud S3-compatible credentials from secret: alibaba-cloud-secret' Setting up Alibaba Cloud S3-compatible credentials from secret: alibaba-cloud-secret + local trace_was_on=0 + [[ ehxB == *x* ]] + trace_was_on=1 + set +x + echo 'Alibaba Cloud S3-compatible credentials configured successfully' Alibaba Cloud S3-compatible credentials configured successfully + check_backup_existence_aws operator-testing/psmdb-demand-backup-incremental-sharded-oss-s3/2026-06-22T16:40:45Z /cfg/filelist.pbm https://s3.oss-eu-central-1.aliyuncs.com alibaba-cloud-s3 ++ echo operator-testing/psmdb-demand-backup-incremental-sharded-oss-s3/2026-06-22T16:40:45Z ++ cut -d/ -f1 + bucket=operator-testing ++ echo operator-testing/psmdb-demand-backup-incremental-sharded-oss-s3/2026-06-22T16:40:45Z ++ cut -d/ -f2- + key_prefix=psmdb-demand-backup-incremental-sharded-oss-s3/2026-06-22T16:40:45Z + key=/cfg/filelist.pbm + endpoint=https://s3.oss-eu-central-1.aliyuncs.com + storage_name=alibaba-cloud-s3 + retry=0 + endpoint_arg=() + local endpoint_arg + [[ -n https://s3.oss-eu-central-1.aliyuncs.com ]] + endpoint_arg=(--endpoint-url "$endpoint") + aws --endpoint-url https://s3.oss-eu-central-1.aliyuncs.com s3api head-object --bucket operator-testing --key psmdb-demand-backup-incremental-sharded-oss-s3/2026-06-22T16:40:45Z/cfg/filelist.pbm + echo 'Backup operator-testing/psmdb-demand-backup-incremental-sharded-oss-s3/2026-06-22T16:40:45Z//cfg/filelist.pbm found in alibaba-cloud-s3' Backup operator-testing/psmdb-demand-backup-incremental-sharded-oss-s3/2026-06-22T16:40:45Z//cfg/filelist.pbm found in alibaba-cloud-s3 + log 'running restore' + set +o xtrace [2026-06-22T16:42:44+0000] running restore + run_restore backup-oss-s3-sharded + local backup_name=backup-oss-s3-sharded + local restore_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/demand-backup-incremental-sharded-oss-s3/conf/restore.yml + log 'running restore restore-backup-oss-s3-sharded' + set +o xtrace [2026-06-22T16:42:44+0000] running restore restore-backup-oss-s3-sharded + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/demand-backup-incremental-sharded-oss-s3/conf/restore.yml + /usr/sbin/sed -e 's/name:/name: restore-backup-oss-s3-sharded/' + /usr/sbin/sed -e 's/backupName:/backupName: backup-oss-s3-sharded/' + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.HNctGgaH5T ++ mktemp + local LAST_ERR=/tmp/tmp.d8SeVxrfls + 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.HNctGgaH5T perconaservermongodbrestore.psmdb.percona.com/restore-backup-oss-s3-sharded created + cat /tmp/tmp.d8SeVxrfls + rm /tmp/tmp.HNctGgaH5T /tmp/tmp.d8SeVxrfls + return 0 + run_recovery_check backup-oss-s3-sharded _restore_sharded sharded + local backup_name=backup-oss-s3-sharded + local compare_suffix=_restore_sharded + local is_sharded=sharded + local tls= + wait_restore backup-oss-s3-sharded some-name requested 0 3000 + local backup_name=backup-oss-s3-sharded + local cluster_name=some-name + local target_state=requested + local wait_cluster_consistency=0 + local wait_time=3000 + local ok_if_ready=0 + set +o xtrace Waiting for the psmdb-restore/restore-backup-oss-s3-sharded object to be created.OK Waiting psmdb-restore/restore-backup-oss-s3-sharded to reach state "requested" .....OK after 4 minutes + [[ 0 -eq 1 ]] + echo + compare_kubectl statefulset/some-name-rs0 _restore_sharded + local resource=statefulset/some-name-rs0 + local postfix=_restore_sharded + local skip_generation_check= + local expected_result=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/demand-backup-incremental-sharded-oss-s3/compare/statefulset_some-name-rs0_restore_sharded.yml + local new_result=/tmp/tmp.r8jKYejai5/statefulset_some-name-rs0.yml + '[' -n '' -a -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/demand-backup-incremental-sharded-oss-s3/compare/statefulset_some-name-rs0_restore_sharded-oc.yml ']' + kubectl_bin get -o yaml statefulset/some-name-rs0 + yq eval $'\n\t\t\tdel(.metadata.ownerReferences[].apiVersion) |\n\t\t\tdel(.metadata.managedFields) |\n\t\t\tdel(.. | select(has("creationTimestamp")).creationTimestamp) |\n\t\t\tdel(.. | select(has("namespace")).namespace) |\n\t\t\tdel(.. | select(has("uid")).uid) |\n\t\t\tdel(.metadata.resourceVersion) |\n\t\t\tdel(.spec.template.spec.containers[].env[] | select(.name == "NAMESPACE")) |\n\t\t\tdel(.metadata.selfLink) |\n\t\t\tdel(.metadata.annotations."cloud.google.com/neg") |\n\t\t\tdel(.metadata.annotations."kubectl.kubernetes.io/last-applied-configuration") |\n\t\t\tdel(.. | select(has("image")).image) |\n\t\t\tdel(.. | select(has("clusterIP")).clusterIP) |\n\t\t\tdel(.. | select(has("clusterIPs")).clusterIPs) |\n\t\t\tdel(.. | select(has("dataSource")).dataSource) |\n\t\t\tdel(.. | select(has("procMount")).procMount) |\n\t\t\tdel(.. | select(has("storageClassName")).storageClassName) |\n\t\t\tdel(.. | select(has("finalizers")).finalizers) |\n\t\t\tdel(.. | select(has("kubernetes.io/pvc-protection"))."kubernetes.io/pvc-protection") |\n\t\t\tdel(.. | select(has("volumeName")).volumeName) |\n\t\t\tdel(.. | select(has("volume.beta.kubernetes.io/storage-provisioner"))."volume.beta.kubernetes.io/storage-provisioner") |\n\t\t\tdel(.. | select(has("volume.kubernetes.io/storage-provisioner"))."volume.kubernetes.io/storage-provisioner") |\n\t\t\tdel(.spec.volumeMode) |\n\t\t\tdel(.. | select(has("volume.kubernetes.io/selected-node"))."volume.kubernetes.io/selected-node") |\n\t\t\tdel(.. | select(has("percona.com/last-config-hash"))."percona.com/last-config-hash") |\n\t\t\tdel(.. | select(has("percona.com/configuration-hash"))."percona.com/configuration-hash") |\n\t\t\tdel(.. | select(has("percona.com/ssl-hash"))."percona.com/ssl-hash") |\n\t\t\tdel(.. | select(has("percona.com/ssl-internal-hash"))."percona.com/ssl-internal-hash") |\n\t\t\tdel(.spec.volumeClaimTemplates[].spec.volumeMode | select(. == "Filesystem")) |\n\t\t\tdel(.. | select(has("healthCheckNodePort")).healthCheckNodePort) |\n\t\t\tdel(.. | select(has("nodePort")).nodePort) |\n\t\t\tdel(.status) |\n\t\t\t(.. | select(tag == "!!str")) |= sub("demand-backup-incremental-sharded-oss-s3-32363", "NAME_SPACE") |\n\t\t\tdel(.spec.volumeClaimTemplates[].apiVersion) |\n\t\t\tdel(.spec.volumeClaimTemplates[].kind) |\n\t\t\tdel(.spec.ipFamilies) |\n\t\t\tdel(.spec.ipFamilyPolicy) |\n\t\t\t(.. | select(. == "extensions/v1beta1")) = "apps/v1" |\n\t\t\t(.. | select(. == "batch/v1beta1")) = "batch/v1" ' - ++ mktemp + local LAST_OUT=/tmp/tmp.1fTAANOVjX ++ mktemp + local LAST_ERR=/tmp/tmp.unBR5zVPfu + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl get -o yaml statefulset/some-name-rs0 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.1fTAANOVjX + cat /tmp/tmp.unBR5zVPfu + rm /tmp/tmp.1fTAANOVjX /tmp/tmp.unBR5zVPfu + return 0 + yq -i eval 'del(.spec.persistentVolumeClaimRetentionPolicy)' /tmp/tmp.r8jKYejai5/statefulset_some-name-rs0.yml + version_gt 1.22 ++ echo '1.33 >= 1.22' ++ bc -l + '[' 1 -eq 1 ']' + return 0 + yq -i eval 'del(.spec.internalTrafficPolicy)' /tmp/tmp.r8jKYejai5/statefulset_some-name-rs0.yml + yq -i eval 'del(.spec.allocateLoadBalancerNodePorts)' /tmp/tmp.r8jKYejai5/statefulset_some-name-rs0.yml + [[ /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/demand-backup-incremental-sharded-oss-s3/compare/statefulset_some-name-rs0_restore_sharded.yml == */cronjob* ]] + '[' -n '' ']' + [[ 0 -eq 0 ]] + diff -u /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/demand-backup-incremental-sharded-oss-s3/compare/statefulset_some-name-rs0_restore_sharded.yml /tmp/tmp.r8jKYejai5/statefulset_some-name-rs0.yml --- /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/demand-backup-incremental-sharded-oss-s3/compare/statefulset_some-name-rs0_restore_sharded.yml 2026-06-22 15:59:42.308846925 +0000 +++ /tmp/tmp.r8jKYejai5/statefulset_some-name-rs0.yml 2026-06-22 16:47:23.353225582 +0000 @@ -162,9 +162,6 @@ volumeMounts: - mountPath: /data/db name: mongod-data - - mountPath: /etc/mongodb-secrets - name: some-name-mongodb-keyfile - readOnly: true - mountPath: /etc/mongodb-ssl name: ssl readOnly: true @@ -202,8 +199,6 @@ terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - - mountPath: /data/db - name: mongod-data - mountPath: /opt/percona name: bin - command: @@ -216,8 +211,6 @@ terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - - mountPath: /data/db - name: mongod-data - mountPath: /opt/percona name: bin restartPolicy: Always @@ -228,11 +221,6 @@ serviceAccountName: default terminationGracePeriodSeconds: 60 volumes: - - name: some-name-mongodb-keyfile - secret: - defaultMode: 288 - optional: false - secretName: some-name-mongodb-keyfile - emptyDir: {} name: bin - emptyDir: {} ++ caller + log 'compare_kubectl (1000 /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/demand-backup-incremental-sharded-oss-s3/../functions) failed with diff' + set +o xtrace [2026-06-22T16:47:23+0000] compare_kubectl (1000 /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2409/e2e-tests/demand-backup-incremental-sharded-oss-s3/../functions) failed with diff + exit 1