++ echo 'Log: /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/logs/mongod-major-upgrade-sharded.log' Log: /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/logs/mongod-major-upgrade-sharded.log ++ '[' -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/conf/cloud-secret.yml ']' ++ SKIP_BACKUPS_TO_AWS_GCP_AZURE= ++ oc get projects ++ kubectl get nodes ++ grep '^minikube' +++ kubectl version -o json +++ jq -r .serverVersion.gitVersion +++ grep -eks- Warning: version difference between client (1.36) and server (1.33) exceeds the supported minor version skew of +/-1 ++ '[' ']' ++ EKS=0 +++ kubectl version -o json +++ jq -r .serverVersion.gitVersion +++ grep gke Warning: version difference between client (1.36) and server (1.33) exceeds the supported minor version skew of +/-1 ++ '[' v1.33.11-gke.1074000 ']' ++ GKE=1 +++ kubectl version -o json +++ jq -r '.serverVersion.major + "." + .serverVersion.minor' +++ /usr/sbin/sed -r 's/[^0-9.]+//g' Warning: version difference between client (1.36) and server (1.33) exceeds the supported minor version skew of +/-1 ++ KUBE_VERSION=1.33 + set_debug + [[ 1 == 1 ]] + set -o xtrace + main + rbac=rbac + '[' -n psmdb-operator ']' + rbac=cw-rbac + create_infra mongod-major-upgrade-sharded-3473 + local ns=mongod-major-upgrade-sharded-3473 + echo mongod-major-upgrade-sharded-3473 + [[ 0 == 1 ]] + '[' -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 ++ awk '{print $1}' ++ grep chaos-mesh + timeout 30 kubectl delete MutatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ awk '{print $1}' ++ grep validate-auth + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl api-resources ++ grep chaos-mesh ++ awk '{print $1}' ++ 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 + : ++ grep chaos-mesh ++ kubectl get clusterrolebinding ++ 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 + '[' -n '' ']' + desc 'cleaned up old namespaces psmdb-operator' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces psmdb-operator ----------------------------------------------------------------------------------- + kubectl_bin delete namespace psmdb-operator --ignore-not-found ++ mktemp ++ mktemp + grep -E -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' + awk '{print$1}' + local LAST_OUT=/tmp/tmp.JL0jf34dqx ++ mktemp + xargs kubectl delete ns + local LAST_ERR=/tmp/tmp.SO4J7nLoNA + local exit_status=0 + local timeout=4 + local LAST_OUT=/tmp/tmp.RRIz5fRWjn ++ seq 0 2 ++ mktemp + for i in $(seq 0 2) + set +e + kubectl get ns + local LAST_ERR=/tmp/tmp.1U3VX9tb6h + local exit_status=0 + local timeout=4 ++ seq 0 2 + 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.JL0jf34dqx + cat /tmp/tmp.SO4J7nLoNA + rm /tmp/tmp.JL0jf34dqx /tmp/tmp.SO4J7nLoNA + return 0 namespace "demand-backup-physical-sharded-minio-native-32074" deleted + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.RRIz5fRWjn namespace "psmdb-operator" deleted + cat /tmp/tmp.1U3VX9tb6h + rm /tmp/tmp.RRIz5fRWjn /tmp/tmp.1U3VX9tb6h + return 0 + kubectl_bin wait --for=delete namespace psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.STsdNoPrgG ++ mktemp + local LAST_ERR=/tmp/tmp.kldrk2p9Xd + 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.STsdNoPrgG + cat /tmp/tmp.kldrk2p9Xd + rm /tmp/tmp.STsdNoPrgG /tmp/tmp.kldrk2p9Xd + 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.lgS0xsmg6z ++ mktemp + local LAST_ERR=/tmp/tmp.q1SEIq2uCL + 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.lgS0xsmg6z namespace/psmdb-operator created + cat /tmp/tmp.q1SEIq2uCL + rm /tmp/tmp.lgS0xsmg6z /tmp/tmp.q1SEIq2uCL + return 0 + set_kube_ctx psmdb-operator + local namespace=psmdb-operator ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.WM2oQJEFN9 +++ mktemp ++ local LAST_ERR=/tmp/tmp.2HkDIxBmWZ ++ 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.WM2oQJEFN9 ++ cat /tmp/tmp.2HkDIxBmWZ ++ rm /tmp/tmp.WM2oQJEFN9 /tmp/tmp.2HkDIxBmWZ ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2058-fb8cc7187-17-cluster4 --namespace=psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.2jCMg4lqhh ++ mktemp + local LAST_ERR=/tmp/tmp.UWWWrInYvq + 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-2058-fb8cc7187-17-cluster4 --namespace=psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.2jCMg4lqhh Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2058-fb8cc7187-17-cluster4" modified. + cat /tmp/tmp.UWWWrInYvq + rm /tmp/tmp.2jCMg4lqhh /tmp/tmp.UWWWrInYvq + return 0 + deploy_operator + desc 'start PSMDB operator: docker.io/perconalab/percona-server-mongodb-operator:PR-2058-fb8cc7187' + set +o xtrace ----------------------------------------------------------------------------------- start PSMDB operator: docker.io/perconalab/percona-server-mongodb-operator:PR-2058-fb8cc7187 ----------------------------------------------------------------------------------- + local cr_file + '[' -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/mongod-major-upgrade-sharded/conf/crd.yaml ']' + cr_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/deploy/crd.yaml + kubectl_bin apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/deploy/crd.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.J3LNWC2l4H ++ mktemp + local LAST_ERR=/tmp/tmp.fZUwA5DnPk + 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-2058/deploy/crd.yaml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.J3LNWC2l4H 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.fZUwA5DnPk + rm /tmp/tmp.J3LNWC2l4H /tmp/tmp.fZUwA5DnPk + 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-2058/deploy/cw-rbac.yaml + sed -e 's^namespace: .*^namespace: psmdb-operator^' + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.lqUi6rXdXm ++ mktemp + local LAST_ERR=/tmp/tmp.DBf3GiOMOB + 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.lqUi6rXdXm 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.DBf3GiOMOB + rm /tmp/tmp.lqUi6rXdXm /tmp/tmp.DBf3GiOMOB + return 0 + yq eval $'\n\t\t\t(.spec.template.spec.containers[].image = "docker.io/perconalab/percona-server-mongodb-operator:PR-2058-fb8cc7187") |\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-2058/deploy/cw-operator.yaml + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.cREFIy3gGQ ++ mktemp + local LAST_ERR=/tmp/tmp.upEzJnh3ZG + 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.cREFIy3gGQ deployment.apps/percona-server-mongodb-operator created + cat /tmp/tmp.upEzJnh3ZG + rm /tmp/tmp.cREFIy3gGQ /tmp/tmp.upEzJnh3ZG + 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.Eop80b4EJG +++ mktemp ++ local LAST_ERR=/tmp/tmp.djmxjXUZkc ++ 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.Eop80b4EJG ++ cat /tmp/tmp.djmxjXUZkc ++ rm /tmp/tmp.Eop80b4EJG /tmp/tmp.djmxjXUZkc ++ return 0 + wait_operator_pod percona-server-mongodb-operator-859f4bc6d7-kxkw7 + local pod=percona-server-mongodb-operator-859f4bc6d7-kxkw7 + set +o xtrace waiting for pod/percona-server-mongodb-operator-859f4bc6d7-kxkw7 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.04rmabDnkO +++ mktemp ++ local LAST_ERR=/tmp/tmp.VMjD66TBq9 ++ 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.04rmabDnkO ++ cat /tmp/tmp.VMjD66TBq9 ++ rm /tmp/tmp.04rmabDnkO /tmp/tmp.VMjD66TBq9 ++ return 0 + kubectl_bin logs -n psmdb-operator percona-server-mongodb-operator-859f4bc6d7-kxkw7 ++ mktemp + local LAST_OUT=/tmp/tmp.32pZKJBxdk ++ mktemp + local LAST_ERR=/tmp/tmp.5AVgy4AJ2k + 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-859f4bc6d7-kxkw7 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.32pZKJBxdk + cat /tmp/tmp.5AVgy4AJ2k + rm /tmp/tmp.32pZKJBxdk /tmp/tmp.5AVgy4AJ2k + return 0 2026-06-09T09:14:21.904Z INFO setup Manager starting up {"gitCommit": "fb8cc718776dc8f9e011cd5f23fe48cf7f65143e", "gitBranch": "PR-2058-fb8cc7187", "buildTime": "", "goVersion": "go1.26.4", "os": "linux", "arch": "amd64"} + create_namespace mongod-major-upgrade-sharded-3473 + local namespace=mongod-major-upgrade-sharded-3473 + 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 '' ']' ++ grep chaos-mesh ++ awk '{print $1}' ++ kubectl get MutatingWebhookConfiguration + timeout 30 kubectl delete MutatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ 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 ++ awk '{print $1}' ++ grep chaos-mesh.org + 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' + '[' -n '' ']' + desc 'cleaned up old namespaces mongod-major-upgrade-sharded-3473' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces mongod-major-upgrade-sharded-3473 ----------------------------------------------------------------------------------- + awk '{print$1}' + kubectl_bin delete namespace mongod-major-upgrade-sharded-3473 --ignore-not-found ++ mktemp + xargs kubectl delete ns ++ mktemp + local LAST_OUT=/tmp/tmp.MVWx9hVh2N ++ mktemp + local LAST_OUT=/tmp/tmp.rzL3SSFBIr ++ mktemp + local LAST_ERR=/tmp/tmp.pnlewj0Fdq + local exit_status=0 + local timeout=4 ++ seq 0 2 + local LAST_ERR=/tmp/tmp.ibUqO7Bz6b + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete namespace mongod-major-upgrade-sharded-3473 --ignore-not-found + for i in $(seq 0 2) + set +e + kubectl get ns + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.rzL3SSFBIr + cat /tmp/tmp.ibUqO7Bz6b + rm /tmp/tmp.rzL3SSFBIr /tmp/tmp.ibUqO7Bz6b + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.MVWx9hVh2N + return 0 + kubectl_bin wait --for=delete namespace mongod-major-upgrade-sharded-3473 ++ mktemp + cat /tmp/tmp.pnlewj0Fdq + local LAST_OUT=/tmp/tmp.wswKdYpouS ++ mktemp + local LAST_ERR=/tmp/tmp.dsQD7evKSS + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete namespace mongod-major-upgrade-sharded-3473 + rm /tmp/tmp.MVWx9hVh2N /tmp/tmp.pnlewj0Fdq + 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.wswKdYpouS + cat /tmp/tmp.dsQD7evKSS + rm /tmp/tmp.wswKdYpouS /tmp/tmp.dsQD7evKSS + return 0 + desc 'create namespace mongod-major-upgrade-sharded-3473' + set +o xtrace ----------------------------------------------------------------------------------- create namespace mongod-major-upgrade-sharded-3473 ----------------------------------------------------------------------------------- + kubectl_bin create namespace mongod-major-upgrade-sharded-3473 ++ mktemp + local LAST_OUT=/tmp/tmp.QcC9crFtn0 ++ mktemp + local LAST_ERR=/tmp/tmp.KjqAnD6stA + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace mongod-major-upgrade-sharded-3473 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.QcC9crFtn0 namespace/mongod-major-upgrade-sharded-3473 created + cat /tmp/tmp.KjqAnD6stA + rm /tmp/tmp.QcC9crFtn0 /tmp/tmp.KjqAnD6stA + return 0 + set_kube_ctx mongod-major-upgrade-sharded-3473 + local namespace=mongod-major-upgrade-sharded-3473 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.H0WoYnupPE +++ mktemp ++ local LAST_ERR=/tmp/tmp.kSr7UFOYTj ++ 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.H0WoYnupPE ++ cat /tmp/tmp.kSr7UFOYTj ++ rm /tmp/tmp.H0WoYnupPE /tmp/tmp.kSr7UFOYTj ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2058-fb8cc7187-17-cluster4 --namespace=mongod-major-upgrade-sharded-3473 ++ mktemp + local LAST_OUT=/tmp/tmp.frkvXRUXBL ++ mktemp + local LAST_ERR=/tmp/tmp.se2dij3kLa + 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-2058-fb8cc7187-17-cluster4 --namespace=mongod-major-upgrade-sharded-3473 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.frkvXRUXBL Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2058-fb8cc7187-17-cluster4" modified. + cat /tmp/tmp.se2dij3kLa + rm /tmp/tmp.frkvXRUXBL /tmp/tmp.se2dij3kLa + 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-2058/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/conf/cloud-secret.yml ++ mktemp + local LAST_OUT=/tmp/tmp.1A0a4m2uPr ++ mktemp + local LAST_ERR=/tmp/tmp.vl9ZaaHufZ + 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-2058/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/conf/cloud-secret.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.1A0a4m2uPr 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.vl9ZaaHufZ + rm /tmp/tmp.1A0a4m2uPr /tmp/tmp.vl9ZaaHufZ + return 0 + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/conf/client.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/conf/secrets.yml ++ mktemp + local LAST_OUT=/tmp/tmp.qsoup8gqgY ++ mktemp + local LAST_ERR=/tmp/tmp.VsC4aBvSJM + 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-2058/e2e-tests/conf/client.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/conf/secrets.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.qsoup8gqgY deployment.apps/psmdb-client created secret/some-users created + cat /tmp/tmp.VsC4aBvSJM + rm /tmp/tmp.qsoup8gqgY /tmp/tmp.VsC4aBvSJM + return 0 + desc 'install version service' + set +o xtrace ----------------------------------------------------------------------------------- install version service ----------------------------------------------------------------------------------- + cp /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/mongod-major-upgrade-sharded/conf/operator.main.psmdb-operator.dep.json /tmp/tmp.tmihlWXVeV/operator.1.23.0.psmdb-operator.dep.json + generate_vs_json /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/mongod-major-upgrade-sharded/conf/operator.main.psmdb-operator.json /tmp/tmp.tmihlWXVeV/operator.1.23.0.psmdb-operator.json + local template_path=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/mongod-major-upgrade-sharded/conf/operator.main.psmdb-operator.json + local target_path=/tmp/tmp.tmihlWXVeV/operator.1.23.0.psmdb-operator.json ++ jq '.versions[0].operator="1.23.0"' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/mongod-major-upgrade-sharded/conf/operator.main.psmdb-operator.json + local $'version_service_source={\n "versions": [\n {\n "operator": "1.23.0",\n "product": "psmdb-operator",\n "matrix": {\n "mongod": {},\n "pmm": {\n "2.27.0": {\n "image_path": "percona/pmm-client:2.27.0",\n "image_hash": "4f4d4508afe4ef3b5d72e2ebec6485be84204902b0b2b23c3a9e7c2fe4726884",\n "status": "recommended",\n "critical": false\n }\n },\n "backup": {},\n "operator": {}\n }\n }\n ]\n}' + for image_mongod in ${IMAGE_MONGOD_CHAIN[@]} ++ get_mongod_ver_from_image docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0 ++ local image=docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0 +++ /usr/sbin/sed -r 's/^.*db version v(([0-9]+\.){2}[0-9]+-[0-9]+).*$/\1/g' +++ run_simple_cli_inside_image docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0 'mongod --version' +++ local image=docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0 +++ local 'cli=mongod --version' +++ local pod_name=2562 +++ kubectl_bin -n default run 2562 --image=docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0 --restart=Never --command -- sleep infinity ++++ mktemp +++ local LAST_OUT=/tmp/tmp.Y68aT7vOdS ++++ mktemp +++ local LAST_ERR=/tmp/tmp.vwsTLjbUKt +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl -n default run 2562 --image=docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0 --restart=Never --command -- sleep infinity +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.Y68aT7vOdS +++ cat /tmp/tmp.vwsTLjbUKt +++ rm /tmp/tmp.Y68aT7vOdS /tmp/tmp.vwsTLjbUKt +++ return 0 +++ kubectl_bin -n default wait --for=condition=Ready pod/2562 ++++ mktemp +++ local LAST_OUT=/tmp/tmp.DmR7YJnn2a ++++ mktemp +++ local LAST_ERR=/tmp/tmp.EVifmNFzaB +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl -n default wait --for=condition=Ready pod/2562 +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.DmR7YJnn2a +++ cat /tmp/tmp.EVifmNFzaB +++ rm /tmp/tmp.DmR7YJnn2a /tmp/tmp.EVifmNFzaB +++ return 0 ++++ kubectl_bin -n default exec 2562 -- bash -c 'mongod --version 2>&1' +++++ mktemp ++++ local LAST_OUT=/tmp/tmp.1OQmwtmH1K +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.2ZMCCeh31z ++++ local exit_status=0 ++++ local timeout=4 +++++ seq 0 2 ++++ for i in $(seq 0 2) ++++ set +e ++++ kubectl -n default exec 2562 -- bash -c 'mongod --version 2>&1' ++++ exit_status=0 ++++ set -e ++++ '[' 0 '!=' 0 -a -n 1 ']' ++++ break ++++ cat /tmp/tmp.1OQmwtmH1K ++++ cat /tmp/tmp.2ZMCCeh31z ++++ rm /tmp/tmp.1OQmwtmH1K /tmp/tmp.2ZMCCeh31z ++++ return 0 +++ local $'output=db version v6.0.28-22\nBuild Info: {\n "version": "6.0.28-22",\n "gitVersion": "981d9f67a4279fde532a33efb1fbb6c939562583",\n "openSSLVersion": "OpenSSL 3.5.5 27 Jan 2026",\n "modules": [],\n "perconaFeatures": [\n "MemoryEngine",\n "HotBackup",\n "BackupCursorAggregationStage",\n "BackupCursorExtendAggregationStage",\n "AWSIAM",\n "Kerberos",\n "LDAP",\n "TDE",\n "FIPSMode",\n "Auditing",\n "ProfilingRateLimit",\n "LogRedaction",\n "ngram"\n ],\n "allocator": "tcmalloc",\n "environment": {\n "distarch": "x86_64",\n "target_arch": "x86_64"\n }\n}' +++ kubectl_bin -n default delete pod/2562 --grace-period=0 --force ++++ mktemp +++ local LAST_OUT=/tmp/tmp.CvfHINxZhp ++++ mktemp +++ local LAST_ERR=/tmp/tmp.P2zqJ8ZWo4 +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl -n default delete pod/2562 --grace-period=0 --force +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.CvfHINxZhp +++ cat /tmp/tmp.P2zqJ8ZWo4 Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. +++ rm /tmp/tmp.CvfHINxZhp /tmp/tmp.P2zqJ8ZWo4 +++ return 0 +++ echo db version v6.0.28-22 Build Info: '{' '"version":' '"6.0.28-22",' '"gitVersion":' '"981d9f67a4279fde532a33efb1fbb6c939562583",' '"openSSLVersion":' '"OpenSSL' 3.5.5 27 Jan '2026",' '"modules":' '[],' '"perconaFeatures":' '[' '"MemoryEngine",' '"HotBackup",' '"BackupCursorAggregationStage",' '"BackupCursorExtendAggregationStage",' '"AWSIAM",' '"Kerberos",' '"LDAP",' '"TDE",' '"FIPSMode",' '"Auditing",' '"ProfilingRateLimit",' '"LogRedaction",' '"ngram"' '],' '"allocator":' '"tcmalloc",' '"environment":' '{' '"distarch":' '"x86_64",' '"target_arch":' '"x86_64"' '}' '}' ++ version_info=6.0.28-22 ++ [[ ! 6.0.28-22 =~ ^([0-9]+\.){2}[0-9]+-[0-9]+$ ]] ++ echo 6.0.28-22 + current_mongod_version=6.0.28-22 ++ jq '.versions[0].matrix.mongod += {"6.0.28-22": {"image_path":"docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0","status":"recommended"}}' ++ echo '{' '"versions":' '[' '{' '"operator":' '"1.23.0",' '"product":' '"psmdb-operator",' '"matrix":' '{' '"mongod":' '{},' '"pmm":' '{' '"2.27.0":' '{' '"image_path":' '"percona/pmm-client:2.27.0",' '"image_hash":' '"4f4d4508afe4ef3b5d72e2ebec6485be84204902b0b2b23c3a9e7c2fe4726884",' '"status":' '"recommended",' '"critical":' false '}' '},' '"backup":' '{},' '"operator":' '{}' '}' '}' ']' '}' + version_service_source=$'{\n "versions": [\n {\n "operator": "1.23.0",\n "product": "psmdb-operator",\n "matrix": {\n "mongod": {\n "6.0.28-22": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",\n "status": "recommended"\n }\n },\n "pmm": {\n "2.27.0": {\n "image_path": "percona/pmm-client:2.27.0",\n "image_hash": "4f4d4508afe4ef3b5d72e2ebec6485be84204902b0b2b23c3a9e7c2fe4726884",\n "status": "recommended",\n "critical": false\n }\n },\n "backup": {},\n "operator": {}\n }\n }\n ]\n}' + for image_mongod in ${IMAGE_MONGOD_CHAIN[@]} ++ get_mongod_ver_from_image docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0 ++ local image=docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0 +++ run_simple_cli_inside_image docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0 'mongod --version' +++ /usr/sbin/sed -r 's/^.*db version v(([0-9]+\.){2}[0-9]+-[0-9]+).*$/\1/g' +++ local image=docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0 +++ local 'cli=mongod --version' +++ local pod_name=29802 +++ kubectl_bin -n default run 29802 --image=docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0 --restart=Never --command -- sleep infinity ++++ mktemp +++ local LAST_OUT=/tmp/tmp.NKajdhjB4x ++++ mktemp +++ local LAST_ERR=/tmp/tmp.YTa5kTDuMw +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl -n default run 29802 --image=docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0 --restart=Never --command -- sleep infinity +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.NKajdhjB4x +++ cat /tmp/tmp.YTa5kTDuMw +++ rm /tmp/tmp.NKajdhjB4x /tmp/tmp.YTa5kTDuMw +++ return 0 +++ kubectl_bin -n default wait --for=condition=Ready pod/29802 ++++ mktemp +++ local LAST_OUT=/tmp/tmp.6TQqMVhZC2 ++++ mktemp +++ local LAST_ERR=/tmp/tmp.mLK6lgMR1R +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl -n default wait --for=condition=Ready pod/29802 +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.6TQqMVhZC2 +++ cat /tmp/tmp.mLK6lgMR1R +++ rm /tmp/tmp.6TQqMVhZC2 /tmp/tmp.mLK6lgMR1R +++ return 0 ++++ kubectl_bin -n default exec 29802 -- bash -c 'mongod --version 2>&1' +++++ mktemp ++++ local LAST_OUT=/tmp/tmp.uWXQouNfIL +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.GVh8eTaxpt ++++ local exit_status=0 ++++ local timeout=4 +++++ seq 0 2 ++++ for i in $(seq 0 2) ++++ set +e ++++ kubectl -n default exec 29802 -- bash -c 'mongod --version 2>&1' ++++ exit_status=0 ++++ set -e ++++ '[' 0 '!=' 0 -a -n 1 ']' ++++ break ++++ cat /tmp/tmp.uWXQouNfIL ++++ cat /tmp/tmp.GVh8eTaxpt ++++ rm /tmp/tmp.uWXQouNfIL /tmp/tmp.GVh8eTaxpt ++++ return 0 +++ local $'output=db version v7.0.34-19\nBuild Info: {\n "version": "7.0.34-19",\n "gitVersion": "80a3816236f62746cd1b7c28b39a753318028da5",\n "openSSLVersion": "OpenSSL 3.5.5 27 Jan 2026",\n "modules": [],\n "perconaFeatures": [\n "MemoryEngine",\n "HotBackup",\n "BackupCursorAggregationStage",\n "BackupCursorExtendAggregationStage",\n "AWSIAM",\n "Kerberos",\n "LDAP",\n "OIDC",\n "TDE",\n "FIPSMode",\n "FCBIS",\n "Auditing",\n "ProfilingRateLimit",\n "LogRedaction",\n "ngram"\n ],\n "allocator": "tcmalloc",\n "environment": {\n "distarch": "x86_64",\n "target_arch": "x86_64"\n }\n}' +++ kubectl_bin -n default delete pod/29802 --grace-period=0 --force ++++ mktemp +++ local LAST_OUT=/tmp/tmp.s9LssUxB8u ++++ mktemp +++ local LAST_ERR=/tmp/tmp.TfzZjjH0Ap +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl -n default delete pod/29802 --grace-period=0 --force +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.s9LssUxB8u +++ cat /tmp/tmp.TfzZjjH0Ap Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. +++ rm /tmp/tmp.s9LssUxB8u /tmp/tmp.TfzZjjH0Ap +++ return 0 +++ echo db version v7.0.34-19 Build Info: '{' '"version":' '"7.0.34-19",' '"gitVersion":' '"80a3816236f62746cd1b7c28b39a753318028da5",' '"openSSLVersion":' '"OpenSSL' 3.5.5 27 Jan '2026",' '"modules":' '[],' '"perconaFeatures":' '[' '"MemoryEngine",' '"HotBackup",' '"BackupCursorAggregationStage",' '"BackupCursorExtendAggregationStage",' '"AWSIAM",' '"Kerberos",' '"LDAP",' '"OIDC",' '"TDE",' '"FIPSMode",' '"FCBIS",' '"Auditing",' '"ProfilingRateLimit",' '"LogRedaction",' '"ngram"' '],' '"allocator":' '"tcmalloc",' '"environment":' '{' '"distarch":' '"x86_64",' '"target_arch":' '"x86_64"' '}' '}' ++ version_info=7.0.34-19 ++ [[ ! 7.0.34-19 =~ ^([0-9]+\.){2}[0-9]+-[0-9]+$ ]] ++ echo 7.0.34-19 + current_mongod_version=7.0.34-19 ++ echo '{' '"versions":' '[' '{' '"operator":' '"1.23.0",' '"product":' '"psmdb-operator",' '"matrix":' '{' '"mongod":' '{' '"6.0.28-22":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",' '"status":' '"recommended"' '}' '},' '"pmm":' '{' '"2.27.0":' '{' '"image_path":' '"percona/pmm-client:2.27.0",' '"image_hash":' '"4f4d4508afe4ef3b5d72e2ebec6485be84204902b0b2b23c3a9e7c2fe4726884",' '"status":' '"recommended",' '"critical":' false '}' '},' '"backup":' '{},' '"operator":' '{}' '}' '}' ']' '}' ++ jq '.versions[0].matrix.mongod += {"7.0.34-19": {"image_path":"docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0","status":"recommended"}}' + version_service_source=$'{\n "versions": [\n {\n "operator": "1.23.0",\n "product": "psmdb-operator",\n "matrix": {\n "mongod": {\n "6.0.28-22": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",\n "status": "recommended"\n },\n "7.0.34-19": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0",\n "status": "recommended"\n }\n },\n "pmm": {\n "2.27.0": {\n "image_path": "percona/pmm-client:2.27.0",\n "image_hash": "4f4d4508afe4ef3b5d72e2ebec6485be84204902b0b2b23c3a9e7c2fe4726884",\n "status": "recommended",\n "critical": false\n }\n },\n "backup": {},\n "operator": {}\n }\n }\n ]\n}' + for image_mongod in ${IMAGE_MONGOD_CHAIN[@]} ++ get_mongod_ver_from_image docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0 ++ local image=docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0 +++ run_simple_cli_inside_image docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0 'mongod --version' +++ local image=docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0 +++ local 'cli=mongod --version' +++ local pod_name=32056 +++ kubectl_bin -n default run 32056 --image=docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0 --restart=Never --command -- sleep infinity +++ /usr/sbin/sed -r 's/^.*db version v(([0-9]+\.){2}[0-9]+-[0-9]+).*$/\1/g' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.Jk8vlwCPsQ ++++ mktemp +++ local LAST_ERR=/tmp/tmp.OGfKXyHD9l +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl -n default run 32056 --image=docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0 --restart=Never --command -- sleep infinity +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.Jk8vlwCPsQ +++ cat /tmp/tmp.OGfKXyHD9l +++ rm /tmp/tmp.Jk8vlwCPsQ /tmp/tmp.OGfKXyHD9l +++ return 0 +++ kubectl_bin -n default wait --for=condition=Ready pod/32056 ++++ mktemp +++ local LAST_OUT=/tmp/tmp.nXLgTOjlee ++++ mktemp +++ local LAST_ERR=/tmp/tmp.IpjrrGlQjh +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl -n default wait --for=condition=Ready pod/32056 +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.nXLgTOjlee +++ cat /tmp/tmp.IpjrrGlQjh +++ rm /tmp/tmp.nXLgTOjlee /tmp/tmp.IpjrrGlQjh +++ return 0 ++++ kubectl_bin -n default exec 32056 -- bash -c 'mongod --version 2>&1' +++++ mktemp ++++ local LAST_OUT=/tmp/tmp.6yB7MHJlmr +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.NI0hHpAQGb ++++ local exit_status=0 ++++ local timeout=4 +++++ seq 0 2 ++++ for i in $(seq 0 2) ++++ set +e ++++ kubectl -n default exec 32056 -- bash -c 'mongod --version 2>&1' ++++ exit_status=0 ++++ set -e ++++ '[' 0 '!=' 0 -a -n 1 ']' ++++ break ++++ cat /tmp/tmp.6yB7MHJlmr ++++ cat /tmp/tmp.NI0hHpAQGb ++++ rm /tmp/tmp.6yB7MHJlmr /tmp/tmp.NI0hHpAQGb ++++ return 0 +++ local $'output=db version v8.0.23-10\nBuild Info: {\n "version": "8.0.23-10",\n "gitVersion": "10286e6c2a0ccd5d65c0b324c6fe29e5412db449",\n "openSSLVersion": "OpenSSL 3.5.5 27 Jan 2026",\n "modules": [],\n "perconaFeatures": [\n "MemoryEngine",\n "HotBackup",\n "BackupCursorAggregationStage",\n "BackupCursorExtendAggregationStage",\n "AWSIAM",\n "Kerberos",\n "LDAP",\n "OIDC",\n "TDE",\n "FIPSMode",\n "FCBIS",\n "Auditing",\n "ProfilingRateLimit",\n "LogRedaction",\n "ngram"\n ],\n "allocator": "tcmalloc-google",\n "environment": {\n "distarch": "x86_64",\n "target_arch": "x86_64"\n }\n}' +++ kubectl_bin -n default delete pod/32056 --grace-period=0 --force ++++ mktemp +++ local LAST_OUT=/tmp/tmp.zbAt17ylzy ++++ mktemp +++ local LAST_ERR=/tmp/tmp.i0AzctVuJ0 +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl -n default delete pod/32056 --grace-period=0 --force +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.zbAt17ylzy +++ cat /tmp/tmp.i0AzctVuJ0 Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. +++ rm /tmp/tmp.zbAt17ylzy /tmp/tmp.i0AzctVuJ0 +++ return 0 +++ echo db version v8.0.23-10 Build Info: '{' '"version":' '"8.0.23-10",' '"gitVersion":' '"10286e6c2a0ccd5d65c0b324c6fe29e5412db449",' '"openSSLVersion":' '"OpenSSL' 3.5.5 27 Jan '2026",' '"modules":' '[],' '"perconaFeatures":' '[' '"MemoryEngine",' '"HotBackup",' '"BackupCursorAggregationStage",' '"BackupCursorExtendAggregationStage",' '"AWSIAM",' '"Kerberos",' '"LDAP",' '"OIDC",' '"TDE",' '"FIPSMode",' '"FCBIS",' '"Auditing",' '"ProfilingRateLimit",' '"LogRedaction",' '"ngram"' '],' '"allocator":' '"tcmalloc-google",' '"environment":' '{' '"distarch":' '"x86_64",' '"target_arch":' '"x86_64"' '}' '}' ++ version_info=8.0.23-10 ++ [[ ! 8.0.23-10 =~ ^([0-9]+\.){2}[0-9]+-[0-9]+$ ]] ++ echo 8.0.23-10 + current_mongod_version=8.0.23-10 ++ echo '{' '"versions":' '[' '{' '"operator":' '"1.23.0",' '"product":' '"psmdb-operator",' '"matrix":' '{' '"mongod":' '{' '"6.0.28-22":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",' '"status":' '"recommended"' '},' '"7.0.34-19":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0",' '"status":' '"recommended"' '}' '},' '"pmm":' '{' '"2.27.0":' '{' '"image_path":' '"percona/pmm-client:2.27.0",' '"image_hash":' '"4f4d4508afe4ef3b5d72e2ebec6485be84204902b0b2b23c3a9e7c2fe4726884",' '"status":' '"recommended",' '"critical":' false '}' '},' '"backup":' '{},' '"operator":' '{}' '}' '}' ']' '}' ++ jq '.versions[0].matrix.mongod += {"8.0.23-10": {"image_path":"docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0","status":"recommended"}}' + version_service_source=$'{\n "versions": [\n {\n "operator": "1.23.0",\n "product": "psmdb-operator",\n "matrix": {\n "mongod": {\n "6.0.28-22": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",\n "status": "recommended"\n },\n "7.0.34-19": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0",\n "status": "recommended"\n },\n "8.0.23-10": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0",\n "status": "recommended"\n }\n },\n "pmm": {\n "2.27.0": {\n "image_path": "percona/pmm-client:2.27.0",\n "image_hash": "4f4d4508afe4ef3b5d72e2ebec6485be84204902b0b2b23c3a9e7c2fe4726884",\n "status": "recommended",\n "critical": false\n }\n },\n "backup": {},\n "operator": {}\n }\n }\n ]\n}' ++ echo '{' '"versions":' '[' '{' '"operator":' '"1.23.0",' '"product":' '"psmdb-operator",' '"matrix":' '{' '"mongod":' '{' '"6.0.28-22":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",' '"status":' '"recommended"' '},' '"7.0.34-19":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0",' '"status":' '"recommended"' '},' '"8.0.23-10":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0",' '"status":' '"recommended"' '}' '},' '"pmm":' '{' '"2.27.0":' '{' '"image_path":' '"percona/pmm-client:2.27.0",' '"image_hash":' '"4f4d4508afe4ef3b5d72e2ebec6485be84204902b0b2b23c3a9e7c2fe4726884",' '"status":' '"recommended",' '"critical":' false '}' '},' '"backup":' '{},' '"operator":' '{}' '}' '}' ']' '}' +++ get_pbm_version docker.io/perconalab/percona-server-mongodb-operator:main-backup +++ local image=docker.io/perconalab/percona-server-mongodb-operator:main-backup ++++ run_simple_cli_inside_image docker.io/perconalab/percona-server-mongodb-operator:main-backup 'pbm-agent version' ++++ /usr/sbin/sed -r 's/^Version:\ (([0-9]+\.){2}[0-9]+)\ .*/\1/g' ++++ local image=docker.io/perconalab/percona-server-mongodb-operator:main-backup ++++ local 'cli=pbm-agent version' ++++ local pod_name=21579 ++++ kubectl_bin -n default run 21579 --image=docker.io/perconalab/percona-server-mongodb-operator:main-backup --restart=Never --command -- sleep infinity +++++ mktemp ++++ local LAST_OUT=/tmp/tmp.5PLsVydVlI +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.jVRLNjkZGf ++++ local exit_status=0 ++++ local timeout=4 +++++ seq 0 2 ++++ for i in $(seq 0 2) ++++ set +e ++++ kubectl -n default run 21579 --image=docker.io/perconalab/percona-server-mongodb-operator:main-backup --restart=Never --command -- sleep infinity ++++ exit_status=0 ++++ set -e ++++ '[' 0 '!=' 0 -a -n 1 ']' ++++ break ++++ cat /tmp/tmp.5PLsVydVlI ++++ cat /tmp/tmp.jVRLNjkZGf ++++ rm /tmp/tmp.5PLsVydVlI /tmp/tmp.jVRLNjkZGf ++++ return 0 ++++ kubectl_bin -n default wait --for=condition=Ready pod/21579 +++++ mktemp ++++ local LAST_OUT=/tmp/tmp.jpoyBJc7RD +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.fJfejrXjQp ++++ local exit_status=0 ++++ local timeout=4 +++++ seq 0 2 ++++ for i in $(seq 0 2) ++++ set +e ++++ kubectl -n default wait --for=condition=Ready pod/21579 ++++ exit_status=0 ++++ set -e ++++ '[' 0 '!=' 0 -a -n 1 ']' ++++ break ++++ cat /tmp/tmp.jpoyBJc7RD ++++ cat /tmp/tmp.fJfejrXjQp E0609 09:15:58.154849 698356 reflector.go:227] "Failed to watch" err="Get \"https://35.253.218.221/api/v1/namespaces/default/pods?allowWatchBookmarks=true&fieldSelector=metadata.name%3D21579&resourceVersion=1780996557547727010&timeoutSeconds=371&watch=true\": context canceled" reflector="k8s.io/client-go/tools/watch/informerwatcher.go:162" type="*unstructured.Unstructured" ++++ rm /tmp/tmp.jpoyBJc7RD /tmp/tmp.fJfejrXjQp ++++ return 0 +++++ kubectl_bin -n default exec 21579 -- bash -c 'pbm-agent version 2>&1' ++++++ mktemp +++++ local LAST_OUT=/tmp/tmp.z6rnCRsiC5 ++++++ mktemp +++++ local LAST_ERR=/tmp/tmp.lTpsIyd6o5 +++++ local exit_status=0 +++++ local timeout=4 ++++++ seq 0 2 +++++ for i in $(seq 0 2) +++++ set +e +++++ kubectl -n default exec 21579 -- bash -c 'pbm-agent version 2>&1' +++++ exit_status=0 +++++ set -e +++++ '[' 0 '!=' 0 -a -n 1 ']' +++++ break +++++ cat /tmp/tmp.z6rnCRsiC5 +++++ cat /tmp/tmp.lTpsIyd6o5 +++++ rm /tmp/tmp.z6rnCRsiC5 /tmp/tmp.lTpsIyd6o5 +++++ return 0 ++++ local $'output=Version: 2.14.0\nPlatform: linux/amd64\nGitCommit: d3436ef3d07ae8de58d6d0dd942d5084eb85e3a6\nGitBranch: release-2.14.0\nBuildTime: 2026-04-24_15:23_UTC\nGoVersion: go1.25.9' ++++ kubectl_bin -n default delete pod/21579 --grace-period=0 --force +++++ mktemp ++++ local LAST_OUT=/tmp/tmp.1IGLTxfZjn +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.JUv3nvczLo ++++ local exit_status=0 ++++ local timeout=4 +++++ seq 0 2 ++++ for i in $(seq 0 2) ++++ set +e ++++ kubectl -n default delete pod/21579 --grace-period=0 --force ++++ exit_status=0 ++++ set -e ++++ '[' 0 '!=' 0 -a -n 1 ']' ++++ break ++++ cat /tmp/tmp.1IGLTxfZjn ++++ cat /tmp/tmp.JUv3nvczLo Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. ++++ rm /tmp/tmp.1IGLTxfZjn /tmp/tmp.JUv3nvczLo ++++ return 0 ++++ echo Version: 2.14.0 Platform: linux/amd64 GitCommit: d3436ef3d07ae8de58d6d0dd942d5084eb85e3a6 GitBranch: release-2.14.0 BuildTime: 2026-04-24_15:23_UTC GoVersion: go1.25.9 +++ local version_info=2.14.0 +++ [[ ! 2.14.0 =~ ^([0-9]+\.){2}[0-9]+$ ]] +++ echo 2.14.0 ++ jq '.versions[0].matrix.backup += {"2.14.0": {"image_path":"docker.io/perconalab/percona-server-mongodb-operator:main-backup","status":"recommended"}}' + version_service_source=$'{\n "versions": [\n {\n "operator": "1.23.0",\n "product": "psmdb-operator",\n "matrix": {\n "mongod": {\n "6.0.28-22": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",\n "status": "recommended"\n },\n "7.0.34-19": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0",\n "status": "recommended"\n },\n "8.0.23-10": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0",\n "status": "recommended"\n }\n },\n "pmm": {\n "2.27.0": {\n "image_path": "percona/pmm-client:2.27.0",\n "image_hash": "4f4d4508afe4ef3b5d72e2ebec6485be84204902b0b2b23c3a9e7c2fe4726884",\n "status": "recommended",\n "critical": false\n }\n },\n "backup": {\n "2.14.0": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-backup",\n "status": "recommended"\n }\n },\n "operator": {}\n }\n }\n ]\n}' ++ jq '.versions[0].matrix.operator += {"1.23.0": {"image_path":"docker.io/perconalab/percona-server-mongodb-operator:PR-2058-fb8cc7187","status":"recommended"}}' ++ echo '{' '"versions":' '[' '{' '"operator":' '"1.23.0",' '"product":' '"psmdb-operator",' '"matrix":' '{' '"mongod":' '{' '"6.0.28-22":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",' '"status":' '"recommended"' '},' '"7.0.34-19":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0",' '"status":' '"recommended"' '},' '"8.0.23-10":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0",' '"status":' '"recommended"' '}' '},' '"pmm":' '{' '"2.27.0":' '{' '"image_path":' '"percona/pmm-client:2.27.0",' '"image_hash":' '"4f4d4508afe4ef3b5d72e2ebec6485be84204902b0b2b23c3a9e7c2fe4726884",' '"status":' '"recommended",' '"critical":' false '}' '},' '"backup":' '{' '"2.14.0":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-backup",' '"status":' '"recommended"' '}' '},' '"operator":' '{}' '}' '}' ']' '}' + version_service_source=$'{\n "versions": [\n {\n "operator": "1.23.0",\n "product": "psmdb-operator",\n "matrix": {\n "mongod": {\n "6.0.28-22": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",\n "status": "recommended"\n },\n "7.0.34-19": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0",\n "status": "recommended"\n },\n "8.0.23-10": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0",\n "status": "recommended"\n }\n },\n "pmm": {\n "2.27.0": {\n "image_path": "percona/pmm-client:2.27.0",\n "image_hash": "4f4d4508afe4ef3b5d72e2ebec6485be84204902b0b2b23c3a9e7c2fe4726884",\n "status": "recommended",\n "critical": false\n }\n },\n "backup": {\n "2.14.0": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-backup",\n "status": "recommended"\n }\n },\n "operator": {\n "1.23.0": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:PR-2058-fb8cc7187",\n "status": "recommended"\n }\n }\n }\n }\n ]\n}' + echo '{' '"versions":' '[' '{' '"operator":' '"1.23.0",' '"product":' '"psmdb-operator",' '"matrix":' '{' '"mongod":' '{' '"6.0.28-22":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",' '"status":' '"recommended"' '},' '"7.0.34-19":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0",' '"status":' '"recommended"' '},' '"8.0.23-10":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0",' '"status":' '"recommended"' '}' '},' '"pmm":' '{' '"2.27.0":' '{' '"image_path":' '"percona/pmm-client:2.27.0",' '"image_hash":' '"4f4d4508afe4ef3b5d72e2ebec6485be84204902b0b2b23c3a9e7c2fe4726884",' '"status":' '"recommended",' '"critical":' false '}' '},' '"backup":' '{' '"2.14.0":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-backup",' '"status":' '"recommended"' '}' '},' '"operator":' '{' '"1.23.0":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:PR-2058-fb8cc7187",' '"status":' '"recommended"' '}' '}' '}' '}' ']' '}' + jq . + kubectl_bin create configmap -n psmdb-operator versions --from-file /tmp/tmp.tmihlWXVeV/operator.1.23.0.psmdb-operator.dep.json --from-file /tmp/tmp.tmihlWXVeV/operator.1.23.0.psmdb-operator.json ++ mktemp + local LAST_OUT=/tmp/tmp.xbkfu9Ilt8 ++ mktemp + local LAST_ERR=/tmp/tmp.r8Ax9wYzvI + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create configmap -n psmdb-operator versions --from-file /tmp/tmp.tmihlWXVeV/operator.1.23.0.psmdb-operator.dep.json --from-file /tmp/tmp.tmihlWXVeV/operator.1.23.0.psmdb-operator.json + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.xbkfu9Ilt8 configmap/versions created + cat /tmp/tmp.r8Ax9wYzvI + rm /tmp/tmp.xbkfu9Ilt8 /tmp/tmp.r8Ax9wYzvI + return 0 + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/mongod-major-upgrade-sharded/conf/vs.yml + /usr/sbin/sed -r s#operator.9.9.9.psmdb-operator#operator.1.23.0.psmdb-operator#g + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.IZGGhFOuA6 ++ mktemp + local LAST_ERR=/tmp/tmp.NK0E8CdYMn + 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.IZGGhFOuA6 deployment.apps/version-service created service/version-service created + cat /tmp/tmp.NK0E8CdYMn + rm /tmp/tmp.IZGGhFOuA6 /tmp/tmp.NK0E8CdYMn + return 0 ++ jq '.[] | .[] |.matrix.mongod' /tmp/tmp.tmihlWXVeV/operator.1.23.0.psmdb-operator.json + version_matrix=$'{\n "6.0.28-22": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",\n "status": "recommended"\n },\n "7.0.34-19": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0",\n "status": "recommended"\n },\n "8.0.23-10": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0",\n "status": "recommended"\n }\n}' ++ get_mongod_ver_from_image docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0 ++ local image=docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0 +++ run_simple_cli_inside_image docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0 'mongod --version' +++ local image=docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0 +++ local 'cli=mongod --version' +++ /usr/sbin/sed -r 's/^.*db version v(([0-9]+\.){2}[0-9]+-[0-9]+).*$/\1/g' +++ local pod_name=18626 +++ kubectl_bin -n default run 18626 --image=docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0 --restart=Never --command -- sleep infinity ++++ mktemp +++ local LAST_OUT=/tmp/tmp.wMW22tHUqg ++++ mktemp +++ local LAST_ERR=/tmp/tmp.UcB9Q65fBi +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl -n default run 18626 --image=docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0 --restart=Never --command -- sleep infinity +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.wMW22tHUqg +++ cat /tmp/tmp.UcB9Q65fBi +++ rm /tmp/tmp.wMW22tHUqg /tmp/tmp.UcB9Q65fBi +++ return 0 +++ kubectl_bin -n default wait --for=condition=Ready pod/18626 ++++ mktemp +++ local LAST_OUT=/tmp/tmp.E80B619JDY ++++ mktemp +++ local LAST_ERR=/tmp/tmp.zk6kp8wQKr +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl -n default wait --for=condition=Ready pod/18626 +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.E80B619JDY +++ cat /tmp/tmp.zk6kp8wQKr E0609 09:16:06.901654 699648 reflector.go:227] "Failed to watch" err="Get \"https://35.253.218.221/api/v1/namespaces/default/pods?allowWatchBookmarks=true&fieldSelector=metadata.name%3D18626&resourceVersion=1780996566587263009&timeoutSeconds=434&watch=true\": context canceled" reflector="k8s.io/client-go/tools/watch/informerwatcher.go:162" type="*unstructured.Unstructured" +++ rm /tmp/tmp.E80B619JDY /tmp/tmp.zk6kp8wQKr +++ return 0 ++++ kubectl_bin -n default exec 18626 -- bash -c 'mongod --version 2>&1' +++++ mktemp ++++ local LAST_OUT=/tmp/tmp.ekca1PfHHK +++++ mktemp ++++ local LAST_ERR=/tmp/tmp.P5q3xblgCE ++++ local exit_status=0 ++++ local timeout=4 +++++ seq 0 2 ++++ for i in $(seq 0 2) ++++ set +e ++++ kubectl -n default exec 18626 -- bash -c 'mongod --version 2>&1' ++++ exit_status=0 ++++ set -e ++++ '[' 0 '!=' 0 -a -n 1 ']' ++++ break ++++ cat /tmp/tmp.ekca1PfHHK ++++ cat /tmp/tmp.P5q3xblgCE ++++ rm /tmp/tmp.ekca1PfHHK /tmp/tmp.P5q3xblgCE ++++ return 0 +++ local $'output=db version v8.0.23-10\nBuild Info: {\n "version": "8.0.23-10",\n "gitVersion": "10286e6c2a0ccd5d65c0b324c6fe29e5412db449",\n "openSSLVersion": "OpenSSL 3.5.5 27 Jan 2026",\n "modules": [],\n "perconaFeatures": [\n "MemoryEngine",\n "HotBackup",\n "BackupCursorAggregationStage",\n "BackupCursorExtendAggregationStage",\n "AWSIAM",\n "Kerberos",\n "LDAP",\n "OIDC",\n "TDE",\n "FIPSMode",\n "FCBIS",\n "Auditing",\n "ProfilingRateLimit",\n "LogRedaction",\n "ngram"\n ],\n "allocator": "tcmalloc-google",\n "environment": {\n "distarch": "x86_64",\n "target_arch": "x86_64"\n }\n}' +++ kubectl_bin -n default delete pod/18626 --grace-period=0 --force ++++ mktemp +++ local LAST_OUT=/tmp/tmp.54fbYsfpHi ++++ mktemp +++ local LAST_ERR=/tmp/tmp.9HPRDXYBlt +++ local exit_status=0 +++ local timeout=4 ++++ seq 0 2 +++ for i in $(seq 0 2) +++ set +e +++ kubectl -n default delete pod/18626 --grace-period=0 --force +++ exit_status=0 +++ set -e +++ '[' 0 '!=' 0 -a -n 1 ']' +++ break +++ cat /tmp/tmp.54fbYsfpHi +++ cat /tmp/tmp.9HPRDXYBlt Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely. +++ rm /tmp/tmp.54fbYsfpHi /tmp/tmp.9HPRDXYBlt +++ return 0 +++ echo db version v8.0.23-10 Build Info: '{' '"version":' '"8.0.23-10",' '"gitVersion":' '"10286e6c2a0ccd5d65c0b324c6fe29e5412db449",' '"openSSLVersion":' '"OpenSSL' 3.5.5 27 Jan '2026",' '"modules":' '[],' '"perconaFeatures":' '[' '"MemoryEngine",' '"HotBackup",' '"BackupCursorAggregationStage",' '"BackupCursorExtendAggregationStage",' '"AWSIAM",' '"Kerberos",' '"LDAP",' '"OIDC",' '"TDE",' '"FIPSMode",' '"FCBIS",' '"Auditing",' '"ProfilingRateLimit",' '"LogRedaction",' '"ngram"' '],' '"allocator":' '"tcmalloc-google",' '"environment":' '{' '"distarch":' '"x86_64",' '"target_arch":' '"x86_64"' '}' '}' ++ version_info=8.0.23-10 ++ [[ ! 8.0.23-10 =~ ^([0-9]+\.){2}[0-9]+-[0-9]+$ ]] ++ echo 8.0.23-10 + current_mongod_version=8.0.23-10 ++ echo '{' '"6.0.28-22":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",' '"status":' '"recommended"' '},' '"7.0.34-19":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0",' '"status":' '"recommended"' '},' '"8.0.23-10":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0",' '"status":' '"recommended"' '}' '}' ++ jq '. += {"8.0.23-10":{"image_path":"docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0","status": "recommended"}}' + version_matrix=$'{\n "6.0.28-22": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",\n "status": "recommended"\n },\n "7.0.34-19": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0",\n "status": "recommended"\n },\n "8.0.23-10": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0",\n "status": "recommended"\n }\n}' ++ echo '{' '"6.0.28-22":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",' '"status":' '"recommended"' '},' '"7.0.34-19":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0",' '"status":' '"recommended"' '},' '"8.0.23-10":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0",' '"status":' '"recommended"' '}' '}' ++ jq $'to_entries\n\t\t\t\t\t\t\t\t\t\t\t\t | sort_by( .key | split("[[:punct:]]";"g") | map(tonumber) )\n\t\t\t\t\t\t\t\t\t\t\t\t | map({(.key): .value}) ' + version_matrix=$'[\n {\n "6.0.28-22": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",\n "status": "recommended"\n }\n },\n {\n "7.0.34-19": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0",\n "status": "recommended"\n }\n },\n {\n "8.0.23-10": {\n "image_path": "docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0",\n "status": "recommended"\n }\n }\n]' ++ echo '[' '{' '"6.0.28-22":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",' '"status":' '"recommended"' '}' '},' '{' '"7.0.34-19":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0",' '"status":' '"recommended"' '}' '},' '{' '"8.0.23-10":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0",' '"status":' '"recommended"' '}' '}' ']' ++ jq -r '.[] | keys | .[] | split(".") | .[:2] | join(".")' ++ uniq ++ tail -n +2 + versions_to_verify=$'7.0\n8.0' + cluster=some-name ++ echo '[' '{' '"6.0.28-22":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",' '"status":' '"recommended"' '}' '},' '{' '"7.0.34-19":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0",' '"status":' '"recommended"' '}' '},' '{' '"8.0.23-10":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0",' '"status":' '"recommended"' '}' '}' ']' ++ jq '.[0] | keys | .[0]' + desc 'Starting the cluster with IMAGE_MONGOD "6.0.28-22"' + set +o xtrace ----------------------------------------------------------------------------------- Starting the cluster with IMAGE_MONGOD "6.0.28-22" ----------------------------------------------------------------------------------- ++ echo '[' '{' '"6.0.28-22":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0",' '"status":' '"recommended"' '}' '},' '{' '"7.0.34-19":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod7.0",' '"status":' '"recommended"' '}' '},' '{' '"8.0.23-10":' '{' '"image_path":' '"docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0",' '"status":' '"recommended"' '}' '}' ']' ++ jq -r 'to_entries | .[0].value | .[].image_path' + export IMAGE_MONGOD=docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0 + IMAGE_MONGOD=docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0 + qualify_image_var IMAGE_MONGOD + local var=IMAGE_MONGOD + local val=docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0 + local out= + local ref + [[ -z docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0 ]] + [[ docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0 == * * ]] ++ qualify_image_ref docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0 ++ local ref=docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0 ++ local first=docker.io ++ [[ docker.io == *.* ]] ++ printf %s docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0 ++ return 0 + printf -v IMAGE_MONGOD %s docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0 + apply_cluster /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/mongod-major-upgrade-sharded/conf/some-name.yml + '[' -z '' ']' + cat_config /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/mongod-major-upgrade-sharded/conf/some-name.yml + kubectl_bin apply -f - + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/mongod-major-upgrade-sharded/conf/some-name.yml ++ mktemp + yq eval '(.spec | select(has("pmm"))).pmm.image = "docker.io/percona/pmm-client:2.44.1-1"' + yq eval '(.spec | select(.image == null)).image = "docker.io/perconalab/percona-server-mongodb-operator:main-mongod6.0"' + yq eval '(.spec | select(has("initImage"))).initImage = "docker.io/perconalab/percona-server-mongodb-operator:PR-2058-fb8cc7187"' + yq eval '(.spec | select(has("backup"))).backup.image = "docker.io/perconalab/percona-server-mongodb-operator:main-backup"' + /usr/sbin/sed -e s/NAME_SPACE/mongod-major-upgrade-sharded-3473/g + yq eval '.spec.upgradeOptions.apply="Never"' + local LAST_OUT=/tmp/tmp.oMfFbWooXt ++ mktemp + local LAST_ERR=/tmp/tmp.Hv5rdjkEmX + 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.oMfFbWooXt perconaservermongodb.psmdb.percona.com/some-name created + cat /tmp/tmp.Hv5rdjkEmX + rm /tmp/tmp.oMfFbWooXt /tmp/tmp.Hv5rdjkEmX + return 0 + desc 'check if all 3 Pods started' + set +o xtrace ----------------------------------------------------------------------------------- check if all 3 Pods started ----------------------------------------------------------------------------------- + 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.HZLrQpuxSs +++ mktemp ++ local LAST_ERR=/tmp/tmp.F7mYUKyftc ++ 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.HZLrQpuxSs ++ cat /tmp/tmp.F7mYUKyftc ++ rm /tmp/tmp.HZLrQpuxSs /tmp/tmp.F7mYUKyftc ++ 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.eZ3mjBI6LX +++ mktemp ++ local LAST_ERR=/tmp/tmp.3uN3PQ2U7N ++ 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.eZ3mjBI6LX ++ cat /tmp/tmp.3uN3PQ2U7N ++ rm /tmp/tmp.eZ3mjBI6LX /tmp/tmp.3uN3PQ2U7N ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.MViZX4STwi +++ mktemp ++ local LAST_ERR=/tmp/tmp.BL0Pv8hZNz ++ 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.MViZX4STwi ++ cat /tmp/tmp.BL0Pv8hZNz ++ rm /tmp/tmp.MViZX4STwi /tmp/tmp.BL0Pv8hZNz ++ return 0 + [[ '' == true ]] + sleep 10 + [[ true == true ]] + set +x Waiting for cluster readyness..................... + 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.iRdvYybEfL +++ mktemp ++ local LAST_ERR=/tmp/tmp.vk72SVVPoR ++ 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.iRdvYybEfL ++ cat /tmp/tmp.vk72SVVPoR ++ rm /tmp/tmp.iRdvYybEfL /tmp/tmp.vk72SVVPoR ++ 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.KLLbkcfgaN +++ mktemp ++ local LAST_ERR=/tmp/tmp.ofaIPiKJGG ++ 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.KLLbkcfgaN ++ cat /tmp/tmp.ofaIPiKJGG ++ rm /tmp/tmp.KLLbkcfgaN /tmp/tmp.ofaIPiKJGG ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.hs1gxFtkrA +++ mktemp ++ local LAST_ERR=/tmp/tmp.PRCYZ4Hq8U ++ 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.hs1gxFtkrA ++ cat /tmp/tmp.PRCYZ4Hq8U ++ rm /tmp/tmp.hs1gxFtkrA /tmp/tmp.PRCYZ4Hq8U ++ 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.Mt37O68Pyi +++ mktemp ++ local LAST_ERR=/tmp/tmp.OUTcqvoHQe ++ 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.Mt37O68Pyi ++ cat /tmp/tmp.OUTcqvoHQe ++ rm /tmp/tmp.Mt37O68Pyi /tmp/tmp.OUTcqvoHQe ++ 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.nk1oEFRswY +++ mktemp ++ local LAST_ERR=/tmp/tmp.N8g5ZDllXZ ++ 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.nk1oEFRswY ++ cat /tmp/tmp.N8g5ZDllXZ ++ rm /tmp/tmp.nk1oEFRswY /tmp/tmp.N8g5ZDllXZ ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.bMRVNMuYGO +++ mktemp ++ local LAST_ERR=/tmp/tmp.ARxDAjBovs ++ 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.bMRVNMuYGO ++ cat /tmp/tmp.ARxDAjBovs ++ rm /tmp/tmp.bMRVNMuYGO /tmp/tmp.ARxDAjBovs ++ 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.SDbqAMg6TG +++ mktemp ++ local LAST_ERR=/tmp/tmp.CInuZYKolz ++ 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.SDbqAMg6TG ++ cat /tmp/tmp.CInuZYKolz ++ rm /tmp/tmp.SDbqAMg6TG /tmp/tmp.CInuZYKolz ++ return 0 + [[ ready == ready ]] + echo .OK .OK + desc 'write data, read from all' + set +o xtrace ----------------------------------------------------------------------------------- write data, read from all ----------------------------------------------------------------------------------- + run_mongos 'db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})' userAdmin:userAdmin123456@some-name-mongos.mongod-major-upgrade-sharded-3473 + local 'command=db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})' + local uri=userAdmin:userAdmin123456@some-name-mongos.mongod-major-upgrade-sharded-3473 + 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.V11fG7asi7 +++ mktemp ++ local LAST_ERR=/tmp/tmp.vuWJPj0fOQ ++ 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.V11fG7asi7 ++ cat /tmp/tmp.vuWJPj0fOQ ++ rm /tmp/tmp.V11fG7asi7 /tmp/tmp.vuWJPj0fOQ ++ return 0 + local client_container=psmdb-client-bb8b97679-wqmj6 + kubectl_bin exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})\n'\'' | mongo mongodb://userAdmin:userAdmin123456@some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.BelBy6AQPL ++ mktemp + local LAST_ERR=/tmp/tmp.bse8umbBJw + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''db.createUser({user:"myApp",pwd:"myPass",roles:[{db:"myApp",role:"readWrite"}]})\n'\'' | mongo mongodb://userAdmin:userAdmin123456@some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.BelBy6AQPL Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("17b9ff83-9ffd-467e-a39a-5429751b0c0c") } Percona Server for MongoDB server version: v6.0.28-22 WARNING: shell and server versions do not match Successfully added user: { "user" : "myApp", "roles" : [ { "db" : "myApp", "role" : "readWrite" } ] } bye + cat /tmp/tmp.bse8umbBJw + rm /tmp/tmp.BelBy6AQPL /tmp/tmp.bse8umbBJw + return 0 + sleep 2 + run_mongos 'use myApp\n db.test.insert({ x: 100501 })' myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 + local 'command=use myApp\n db.test.insert({ x: 100501 })' + local uri=myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 + 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.BpOScdfdbD +++ mktemp ++ local LAST_ERR=/tmp/tmp.5x1RGjmJEx ++ 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.BpOScdfdbD ++ cat /tmp/tmp.5x1RGjmJEx ++ rm /tmp/tmp.BpOScdfdbD /tmp/tmp.5x1RGjmJEx ++ return 0 + local client_container=psmdb-client-bb8b97679-wqmj6 + kubectl_bin exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100501 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.zchfSHavyB ++ mktemp + local LAST_ERR=/tmp/tmp.8KopeebOD8 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100501 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.zchfSHavyB Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("27817e24-38bf-4a0e-8a55-45083eaef9bb") } Percona Server for MongoDB server version: v6.0.28-22 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.8KopeebOD8 + rm /tmp/tmp.zchfSHavyB /tmp/tmp.8KopeebOD8 + return 0 + compare_mongos_cmd find myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 + local command=find + local uri=myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 + local postfix= + 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-09T09:19:30+0000] running db.test.command() in myApp + run_mongos 'use myApp\n db.test.find()' myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 mongodb '' '' 27017 + 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' + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag= + local port=27017 + local mongo_bin=mongo + /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.gIt173qco2 +++ mktemp ++ local LAST_ERR=/tmp/tmp.eb5f3mzMQ3 ++ 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.gIt173qco2 ++ cat /tmp/tmp.eb5f3mzMQ3 ++ rm /tmp/tmp.gIt173qco2 /tmp/tmp.eb5f3mzMQ3 ++ return 0 + local client_container=psmdb-client-bb8b97679-wqmj6 + kubectl_bin exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.fmRmAtk5Xj ++ mktemp + local LAST_ERR=/tmp/tmp.Je4IoCN5tx + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.fmRmAtk5Xj + cat /tmp/tmp.Je4IoCN5tx + rm /tmp/tmp.fmRmAtk5Xj /tmp/tmp.Je4IoCN5tx + return 0 + [[ 0 -eq 0 ]] + diff /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/mongod-major-upgrade-sharded/compare/find.json /tmp/tmp.tmihlWXVeV/find + desc 'Starting to follow mongod upgrade images chain' + set +o xtrace ----------------------------------------------------------------------------------- Starting to follow mongod upgrade images chain ----------------------------------------------------------------------------------- + target_generation=2 + for version in ${versions_to_verify[@]} + desc 'Testing upgrade to version: 7.0' + set +o xtrace ----------------------------------------------------------------------------------- Testing upgrade to version: 7.0 ----------------------------------------------------------------------------------- + kubectl_bin patch psmdb/some-name --type=json $'-p=[\n\t\t\t\t\t{"op":"replace","path":"/spec/upgradeOptions/apply","value": "7.0-recommended"},\n\t\t\t\t]' ++ mktemp + local LAST_OUT=/tmp/tmp.PJVe4DhrIq ++ mktemp + local LAST_ERR=/tmp/tmp.NLohfVTx58 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl patch psmdb/some-name --type=json $'-p=[\n\t\t\t\t\t{"op":"replace","path":"/spec/upgradeOptions/apply","value": "7.0-recommended"},\n\t\t\t\t]' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.PJVe4DhrIq perconaservermongodb.psmdb.percona.com/some-name patched + cat /tmp/tmp.NLohfVTx58 + rm /tmp/tmp.PJVe4DhrIq /tmp/tmp.NLohfVTx58 + return 0 + sleep 70 + 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.Oi35gFb5pS +++ mktemp ++ local LAST_ERR=/tmp/tmp.Vi0OgLooWp ++ 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.Oi35gFb5pS ++ cat /tmp/tmp.Vi0OgLooWp ++ rm /tmp/tmp.Oi35gFb5pS /tmp/tmp.Vi0OgLooWp ++ 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.CB4n4qX81M +++ mktemp ++ local LAST_ERR=/tmp/tmp.DtXtTcXVsF ++ 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.CB4n4qX81M ++ cat /tmp/tmp.DtXtTcXVsF ++ rm /tmp/tmp.CB4n4qX81M /tmp/tmp.DtXtTcXVsF ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.y5hOKM5Vkw +++ mktemp ++ local LAST_ERR=/tmp/tmp.eXgaL64fAC ++ 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.y5hOKM5Vkw ++ cat /tmp/tmp.eXgaL64fAC ++ rm /tmp/tmp.y5hOKM5Vkw /tmp/tmp.eXgaL64fAC ++ return 0 + [[ '' == true ]] + sleep 10 + [[ true == true ]] + set +x Waiting for cluster readyness............................................................................................................................................. + 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.nk6GNQoOt4 +++ mktemp ++ local LAST_ERR=/tmp/tmp.A6kpohXaUJ ++ 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.nk6GNQoOt4 ++ cat /tmp/tmp.A6kpohXaUJ ++ rm /tmp/tmp.nk6GNQoOt4 /tmp/tmp.A6kpohXaUJ ++ 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.BVKSppvsTo +++ mktemp ++ local LAST_ERR=/tmp/tmp.Y8JpAiSbdS ++ 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.BVKSppvsTo ++ cat /tmp/tmp.Y8JpAiSbdS ++ rm /tmp/tmp.BVKSppvsTo /tmp/tmp.Y8JpAiSbdS ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.F45emFOv6h +++ mktemp ++ local LAST_ERR=/tmp/tmp.LCuGrGwSDw ++ 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.F45emFOv6h ++ cat /tmp/tmp.LCuGrGwSDw ++ rm /tmp/tmp.F45emFOv6h /tmp/tmp.LCuGrGwSDw ++ 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.x4NYC9QcLH +++ mktemp ++ local LAST_ERR=/tmp/tmp.ykbtQDjIdi ++ 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.x4NYC9QcLH ++ cat /tmp/tmp.ykbtQDjIdi ++ rm /tmp/tmp.x4NYC9QcLH /tmp/tmp.ykbtQDjIdi ++ 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.ROSBlTM4Ju +++ mktemp ++ local LAST_ERR=/tmp/tmp.Uq5ffAj2p5 ++ 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.ROSBlTM4Ju ++ cat /tmp/tmp.Uq5ffAj2p5 ++ rm /tmp/tmp.ROSBlTM4Ju /tmp/tmp.Uq5ffAj2p5 ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.w5Q53dTN65 +++ mktemp ++ local LAST_ERR=/tmp/tmp.bCjZbe3ITC ++ 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.w5Q53dTN65 ++ cat /tmp/tmp.bCjZbe3ITC ++ rm /tmp/tmp.w5Q53dTN65 /tmp/tmp.bCjZbe3ITC ++ 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.7NPrLaxdJV +++ mktemp ++ local LAST_ERR=/tmp/tmp.26mTnjFEF8 ++ 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.7NPrLaxdJV ++ cat /tmp/tmp.26mTnjFEF8 ++ rm /tmp/tmp.7NPrLaxdJV /tmp/tmp.26mTnjFEF8 ++ return 0 + [[ ready == ready ]] + echo .OK .OK + compare_generation 2 statefulset some-name-cfg + local generation=2 + local resource_type=statefulset + local resource_name=some-name-cfg + local current_generation ++ kubectl_bin get statefulset some-name-cfg -o 'jsonpath={.metadata.generation}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.XcQmiU5Re3 +++ mktemp ++ local LAST_ERR=/tmp/tmp.zy8ugPDIUz ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get statefulset some-name-cfg -o 'jsonpath={.metadata.generation}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.XcQmiU5Re3 ++ cat /tmp/tmp.zy8ugPDIUz ++ rm /tmp/tmp.XcQmiU5Re3 /tmp/tmp.zy8ugPDIUz ++ return 0 + current_generation=2 + [[ 2 != 2 ]] + compare_generation 2 statefulset some-name-rs0 + local generation=2 + local resource_type=statefulset + local resource_name=some-name-rs0 + local current_generation ++ kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={.metadata.generation}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.LDerAfXu3a +++ mktemp ++ local LAST_ERR=/tmp/tmp.1kzQ4Qiq4C ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get statefulset some-name-rs0 -o 'jsonpath={.metadata.generation}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.LDerAfXu3a ++ cat /tmp/tmp.1kzQ4Qiq4C ++ rm /tmp/tmp.LDerAfXu3a /tmp/tmp.1kzQ4Qiq4C ++ return 0 + current_generation=2 + [[ 2 != 2 ]] + compare_generation 2 statefulset some-name-mongos + local generation=2 + local resource_type=statefulset + local resource_name=some-name-mongos + local current_generation ++ kubectl_bin get statefulset some-name-mongos -o 'jsonpath={.metadata.generation}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.6rNAWGogLn +++ mktemp ++ local LAST_ERR=/tmp/tmp.gE3GNytJ6Y ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get statefulset some-name-mongos -o 'jsonpath={.metadata.generation}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.6rNAWGogLn ++ cat /tmp/tmp.gE3GNytJ6Y ++ rm /tmp/tmp.6rNAWGogLn /tmp/tmp.gE3GNytJ6Y ++ return 0 + current_generation=2 + [[ 2 != 2 ]] + kubectl_bin patch psmdb/some-name --type=json $'-p=[\n\t\t\t\t\t{"op":"replace","path":"/spec/upgradeOptions/setFCV","value": true}\n\t\t\t\t]' ++ mktemp + local LAST_OUT=/tmp/tmp.2XU1YMAr89 ++ mktemp + local LAST_ERR=/tmp/tmp.eT2nSgoYgj + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl patch psmdb/some-name --type=json $'-p=[\n\t\t\t\t\t{"op":"replace","path":"/spec/upgradeOptions/setFCV","value": true}\n\t\t\t\t]' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.2XU1YMAr89 perconaservermongodb.psmdb.percona.com/some-name patched + cat /tmp/tmp.eT2nSgoYgj + rm /tmp/tmp.2XU1YMAr89 /tmp/tmp.eT2nSgoYgj + return 0 + sleep 10 + 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.Gq3AEZZcUH +++ mktemp ++ local LAST_ERR=/tmp/tmp.2Hrl14UXEh ++ 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.Gq3AEZZcUH ++ cat /tmp/tmp.2Hrl14UXEh ++ rm /tmp/tmp.Gq3AEZZcUH /tmp/tmp.2Hrl14UXEh ++ return 0 + [[ ready == ready ]] + echo .OK .OK ++ run_mongos 'JSON.stringify(db.adminCommand({getParameter:1,featureCompatibilityVersion:1}))' clusterAdmin:clusterAdmin123456@some-name-cfg.mongod-major-upgrade-sharded-3473 ++ local 'command=JSON.stringify(db.adminCommand({getParameter:1,featureCompatibilityVersion:1}))' ++ grep -E '^\{.*\}$' ++ local uri=clusterAdmin:clusterAdmin123456@some-name-cfg.mongod-major-upgrade-sharded-3473 ++ local driver=mongodb ++ local suffix=.svc.cluster.local ++ local mongo_flag= ++ local port=27017 ++ local mongo_bin=mongo ++ jq -r .featureCompatibilityVersion.version +++ 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.Cr6VZulMX4 ++++ mktemp +++ local LAST_ERR=/tmp/tmp.ZLD2fEgoGe +++ 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.Cr6VZulMX4 +++ cat /tmp/tmp.ZLD2fEgoGe +++ rm /tmp/tmp.Cr6VZulMX4 /tmp/tmp.ZLD2fEgoGe +++ return 0 ++ local client_container=psmdb-client-bb8b97679-wqmj6 ++ kubectl_bin exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''JSON.stringify(db.adminCommand({getParameter:1,featureCompatibilityVersion:1}))\n'\'' | mongo mongodb://clusterAdmin:clusterAdmin123456@some-name-cfg.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' +++ mktemp ++ local LAST_OUT=/tmp/tmp.6xpg051Id5 +++ mktemp ++ local LAST_ERR=/tmp/tmp.Hghvt15Xjm ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''JSON.stringify(db.adminCommand({getParameter:1,featureCompatibilityVersion:1}))\n'\'' | mongo mongodb://clusterAdmin:clusterAdmin123456@some-name-cfg.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.6xpg051Id5 ++ cat /tmp/tmp.Hghvt15Xjm ++ rm /tmp/tmp.6xpg051Id5 /tmp/tmp.Hghvt15Xjm ++ return 0 + currentFCV=7.0 + [[ 7.0 != 7.0 ]] + run_mongos 'use myApp\n db.test.insert({ x: 100502 })' myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 + local 'command=use myApp\n db.test.insert({ x: 100502 })' + local uri=myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 + 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.d7hu7DEES6 +++ mktemp ++ local LAST_ERR=/tmp/tmp.EVjGuZLLVj ++ 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.d7hu7DEES6 ++ cat /tmp/tmp.EVjGuZLLVj ++ rm /tmp/tmp.d7hu7DEES6 /tmp/tmp.EVjGuZLLVj ++ return 0 + local client_container=psmdb-client-bb8b97679-wqmj6 + kubectl_bin exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100502 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.h4v9c25WiW ++ mktemp + local LAST_ERR=/tmp/tmp.mUuZnxN3oT + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100502 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.h4v9c25WiW Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("a561a350-7d4b-4739-9be7-b93b5d81ebc4") } Percona Server for MongoDB server version: v7.0.34-19 WARNING: shell and server versions do not match switched to db myApp WriteResult({ "nInserted" : 1 }) bye + cat /tmp/tmp.mUuZnxN3oT + rm /tmp/tmp.h4v9c25WiW /tmp/tmp.mUuZnxN3oT + return 0 + compare_mongos_cmd find myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 -2 + local command=find + local uri=myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 + local postfix=-2 + 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-09T09:27:20+0000] running db.test.command() in myApp + run_mongos 'use myApp\n db.test.find()' myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 mongodb '' '' 27017 + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 + 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.bxXKJpRPge +++ mktemp ++ local LAST_ERR=/tmp/tmp.vab11rTu6T ++ 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.bxXKJpRPge ++ cat /tmp/tmp.vab11rTu6T ++ rm /tmp/tmp.bxXKJpRPge /tmp/tmp.vab11rTu6T ++ return 0 + local client_container=psmdb-client-bb8b97679-wqmj6 + kubectl_bin exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.hQte1mook2 ++ mktemp + local LAST_ERR=/tmp/tmp.OGCVECB7eG + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.hQte1mook2 + cat /tmp/tmp.OGCVECB7eG + rm /tmp/tmp.hQte1mook2 /tmp/tmp.OGCVECB7eG + return 0 + [[ 0 -eq 0 ]] + diff /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/mongod-major-upgrade-sharded/compare/find-2.json /tmp/tmp.tmihlWXVeV/find-2 + target_generation=3 + for version in ${versions_to_verify[@]} + desc 'Testing upgrade to version: 8.0' + set +o xtrace ----------------------------------------------------------------------------------- Testing upgrade to version: 8.0 ----------------------------------------------------------------------------------- + kubectl_bin patch psmdb/some-name --type=json $'-p=[\n\t\t\t\t\t{"op":"replace","path":"/spec/upgradeOptions/apply","value": "8.0-recommended"},\n\t\t\t\t]' ++ mktemp + local LAST_OUT=/tmp/tmp.MHXMEzN0se ++ mktemp + local LAST_ERR=/tmp/tmp.D3TTkCV8Eu + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl patch psmdb/some-name --type=json $'-p=[\n\t\t\t\t\t{"op":"replace","path":"/spec/upgradeOptions/apply","value": "8.0-recommended"},\n\t\t\t\t]' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.MHXMEzN0se perconaservermongodb.psmdb.percona.com/some-name patched + cat /tmp/tmp.D3TTkCV8Eu + rm /tmp/tmp.MHXMEzN0se /tmp/tmp.D3TTkCV8Eu + return 0 + sleep 70 + 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.MQREl5zg8L +++ mktemp ++ local LAST_ERR=/tmp/tmp.5sT5JppmOa ++ 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.MQREl5zg8L ++ cat /tmp/tmp.5sT5JppmOa ++ rm /tmp/tmp.MQREl5zg8L /tmp/tmp.5sT5JppmOa ++ 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.7hDmJXHDqA +++ mktemp ++ local LAST_ERR=/tmp/tmp.0WTzJq8nL6 ++ 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.7hDmJXHDqA ++ cat /tmp/tmp.0WTzJq8nL6 ++ rm /tmp/tmp.7hDmJXHDqA /tmp/tmp.0WTzJq8nL6 ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.rGJww2I9kT +++ mktemp ++ local LAST_ERR=/tmp/tmp.PgKiddMXgQ ++ 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.rGJww2I9kT ++ cat /tmp/tmp.PgKiddMXgQ ++ rm /tmp/tmp.rGJww2I9kT /tmp/tmp.PgKiddMXgQ ++ return 0 + [[ '' == true ]] + sleep 10 + [[ true == true ]] + set +x Waiting for cluster readyness......................................................................................................... + 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.D3bLC9Eo5P +++ mktemp ++ local LAST_ERR=/tmp/tmp.2KAf0QAUxK ++ 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.D3bLC9Eo5P ++ cat /tmp/tmp.2KAf0QAUxK ++ rm /tmp/tmp.D3bLC9Eo5P /tmp/tmp.2KAf0QAUxK ++ 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.w22OKvSUNZ +++ mktemp ++ local LAST_ERR=/tmp/tmp.MWdXL1XNae ++ 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.w22OKvSUNZ ++ cat /tmp/tmp.MWdXL1XNae ++ rm /tmp/tmp.w22OKvSUNZ /tmp/tmp.MWdXL1XNae ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.YlOomypc0C +++ mktemp ++ local LAST_ERR=/tmp/tmp.xDz8PmzgpX ++ 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.YlOomypc0C ++ cat /tmp/tmp.xDz8PmzgpX ++ rm /tmp/tmp.YlOomypc0C /tmp/tmp.xDz8PmzgpX ++ 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.fwh9kPTnR8 +++ mktemp ++ local LAST_ERR=/tmp/tmp.NG8DyiOdcq ++ 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.fwh9kPTnR8 ++ cat /tmp/tmp.NG8DyiOdcq ++ rm /tmp/tmp.fwh9kPTnR8 /tmp/tmp.NG8DyiOdcq ++ 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.5ASt7Phqcy +++ mktemp ++ local LAST_ERR=/tmp/tmp.73jOZlZx05 ++ 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.5ASt7Phqcy ++ cat /tmp/tmp.73jOZlZx05 ++ rm /tmp/tmp.5ASt7Phqcy /tmp/tmp.73jOZlZx05 ++ return 0 + [[ '' == true ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.KcMwOB3DhJ +++ mktemp ++ local LAST_ERR=/tmp/tmp.9EXusZ7Ec3 ++ 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.KcMwOB3DhJ ++ cat /tmp/tmp.9EXusZ7Ec3 ++ rm /tmp/tmp.KcMwOB3DhJ /tmp/tmp.9EXusZ7Ec3 ++ 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.ow0JTnzVap +++ mktemp ++ local LAST_ERR=/tmp/tmp.9zwVH1rm82 ++ 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.ow0JTnzVap ++ cat /tmp/tmp.9zwVH1rm82 ++ rm /tmp/tmp.ow0JTnzVap /tmp/tmp.9zwVH1rm82 ++ return 0 + [[ ready == ready ]] + echo .OK .OK + compare_generation 3 statefulset some-name-cfg + local generation=3 + local resource_type=statefulset + local resource_name=some-name-cfg + local current_generation ++ kubectl_bin get statefulset some-name-cfg -o 'jsonpath={.metadata.generation}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.SmV1kxIspO +++ mktemp ++ local LAST_ERR=/tmp/tmp.ZojxJBcGVp ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get statefulset some-name-cfg -o 'jsonpath={.metadata.generation}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.SmV1kxIspO ++ cat /tmp/tmp.ZojxJBcGVp ++ rm /tmp/tmp.SmV1kxIspO /tmp/tmp.ZojxJBcGVp ++ return 0 + current_generation=3 + [[ 3 != 3 ]] + compare_generation 3 statefulset some-name-rs0 + local generation=3 + local resource_type=statefulset + local resource_name=some-name-rs0 + local current_generation ++ kubectl_bin get statefulset some-name-rs0 -o 'jsonpath={.metadata.generation}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.ShQKaYQJki +++ mktemp ++ local LAST_ERR=/tmp/tmp.I52iyVCdA9 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get statefulset some-name-rs0 -o 'jsonpath={.metadata.generation}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.ShQKaYQJki ++ cat /tmp/tmp.I52iyVCdA9 ++ rm /tmp/tmp.ShQKaYQJki /tmp/tmp.I52iyVCdA9 ++ return 0 + current_generation=3 + [[ 3 != 3 ]] + compare_generation 3 statefulset some-name-mongos + local generation=3 + local resource_type=statefulset + local resource_name=some-name-mongos + local current_generation ++ kubectl_bin get statefulset some-name-mongos -o 'jsonpath={.metadata.generation}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.b9ueMvtvHq +++ mktemp ++ local LAST_ERR=/tmp/tmp.L6MbnaBNmU ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get statefulset some-name-mongos -o 'jsonpath={.metadata.generation}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.b9ueMvtvHq ++ cat /tmp/tmp.L6MbnaBNmU ++ rm /tmp/tmp.b9ueMvtvHq /tmp/tmp.L6MbnaBNmU ++ return 0 + current_generation=3 + [[ 3 != 3 ]] + kubectl_bin patch psmdb/some-name --type=json $'-p=[\n\t\t\t\t\t{"op":"replace","path":"/spec/upgradeOptions/setFCV","value": true}\n\t\t\t\t]' ++ mktemp + local LAST_OUT=/tmp/tmp.SqxtujOXfO ++ mktemp + local LAST_ERR=/tmp/tmp.yqAA6nXILN + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl patch psmdb/some-name --type=json $'-p=[\n\t\t\t\t\t{"op":"replace","path":"/spec/upgradeOptions/setFCV","value": true}\n\t\t\t\t]' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.SqxtujOXfO perconaservermongodb.psmdb.percona.com/some-name patched (no change) + cat /tmp/tmp.yqAA6nXILN + rm /tmp/tmp.SqxtujOXfO /tmp/tmp.yqAA6nXILN + return 0 + sleep 10 + 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.8QyY740oj3 +++ mktemp ++ local LAST_ERR=/tmp/tmp.mkpdYh9m37 ++ 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.8QyY740oj3 ++ cat /tmp/tmp.mkpdYh9m37 ++ rm /tmp/tmp.8QyY740oj3 /tmp/tmp.mkpdYh9m37 ++ return 0 + [[ ready == ready ]] + echo .OK .OK ++ run_mongos 'JSON.stringify(db.adminCommand({getParameter:1,featureCompatibilityVersion:1}))' clusterAdmin:clusterAdmin123456@some-name-cfg.mongod-major-upgrade-sharded-3473 ++ local 'command=JSON.stringify(db.adminCommand({getParameter:1,featureCompatibilityVersion:1}))' ++ local uri=clusterAdmin:clusterAdmin123456@some-name-cfg.mongod-major-upgrade-sharded-3473 ++ local driver=mongodb ++ local suffix=.svc.cluster.local ++ local mongo_flag= ++ local port=27017 ++ local mongo_bin=mongo ++ grep -E '^\{.*\}$' ++ jq -r .featureCompatibilityVersion.version +++ 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.Oqr8hyU7z5 ++++ mktemp +++ local LAST_ERR=/tmp/tmp.Or64cGPpnn +++ 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.Oqr8hyU7z5 +++ cat /tmp/tmp.Or64cGPpnn +++ rm /tmp/tmp.Oqr8hyU7z5 /tmp/tmp.Or64cGPpnn +++ return 0 ++ local client_container=psmdb-client-bb8b97679-wqmj6 ++ kubectl_bin exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''JSON.stringify(db.adminCommand({getParameter:1,featureCompatibilityVersion:1}))\n'\'' | mongo mongodb://clusterAdmin:clusterAdmin123456@some-name-cfg.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' +++ mktemp ++ local LAST_OUT=/tmp/tmp.v21Nq7cgni +++ mktemp ++ local LAST_ERR=/tmp/tmp.lY5Tq9gNYn ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''JSON.stringify(db.adminCommand({getParameter:1,featureCompatibilityVersion:1}))\n'\'' | mongo mongodb://clusterAdmin:clusterAdmin123456@some-name-cfg.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.v21Nq7cgni ++ cat /tmp/tmp.lY5Tq9gNYn ++ rm /tmp/tmp.v21Nq7cgni /tmp/tmp.lY5Tq9gNYn ++ return 0 + currentFCV=8.0 + [[ 8.0 != 8.0 ]] + run_mongos 'use myApp\n db.test.insert({ x: 100503 })' myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 + local 'command=use myApp\n db.test.insert({ x: 100503 })' + local uri=myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 + 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.BwYpGCWcCr +++ mktemp ++ local LAST_ERR=/tmp/tmp.MJDIC30PAB ++ 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.BwYpGCWcCr ++ cat /tmp/tmp.MJDIC30PAB ++ rm /tmp/tmp.BwYpGCWcCr /tmp/tmp.MJDIC30PAB ++ return 0 + local client_container=psmdb-client-bb8b97679-wqmj6 + kubectl_bin exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100503 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.C9fCoMe7bW ++ mktemp + local LAST_ERR=/tmp/tmp.jvsoNkAf0x + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''use myApp\n db.test.insert({ x: 100503 })\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.C9fCoMe7bW Percona Server for MongoDB shell version v4.4.29-28 connecting to: mongodb://some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin?compressors=disabled&gssapiServiceName=mongodb Implicit session: session { "id" : UUID("32ede541-1a2f-4837-8030-d92beb134034") } 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.jvsoNkAf0x + rm /tmp/tmp.C9fCoMe7bW /tmp/tmp.jvsoNkAf0x + return 0 + compare_mongos_cmd find myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 -3 + local command=find + local uri=myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 + local postfix=-3 + 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-09T09:34:10+0000] running db.test.command() in myApp + run_mongos 'use myApp\n db.test.find()' myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 mongodb '' '' 27017 + local 'command=use myApp\n db.test.find()' + local uri=myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473 + 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.K2RaD2mF7W +++ mktemp ++ local LAST_ERR=/tmp/tmp.IwWPPYRlvP ++ 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.K2RaD2mF7W ++ cat /tmp/tmp.IwWPPYRlvP ++ rm /tmp/tmp.K2RaD2mF7W /tmp/tmp.IwWPPYRlvP ++ return 0 + local client_container=psmdb-client-bb8b97679-wqmj6 + kubectl_bin exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' ++ mktemp + local LAST_OUT=/tmp/tmp.I9dzWDen6K ++ mktemp + local LAST_ERR=/tmp/tmp.GjBtjNBDvr + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-bb8b97679-wqmj6 -- bash -c 'printf '\''use myApp\n db.test.find()\n'\'' | mongo mongodb://myApp:myPass@some-name-mongos.mongod-major-upgrade-sharded-3473.svc.cluster.local:27017/admin ' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.I9dzWDen6K + cat /tmp/tmp.GjBtjNBDvr + rm /tmp/tmp.I9dzWDen6K /tmp/tmp.GjBtjNBDvr + return 0 + [[ 0 -eq 0 ]] + diff /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2058/e2e-tests/mongod-major-upgrade-sharded/compare/find-3.json /tmp/tmp.tmihlWXVeV/find-3 + target_generation=4 + destroy mongod-major-upgrade-sharded-3473 + local namespace=mongod-major-upgrade-sharded-3473 + local ignore_logs=true + [[ 1 == 1 ]] + echo 'SKIP_DELETE=1, not destroying mongod-major-upgrade-sharded-3473' SKIP_DELETE=1, not destroying mongod-major-upgrade-sharded-3473 + return + desc 'test passed' + set +o xtrace ----------------------------------------------------------------------------------- test passed -----------------------------------------------------------------------------------