Log: /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/logs/balancer.log Warning: version difference between client (1.35) and server (1.32) exceeds the supported minor version skew of +/-1 Warning: version difference between client (1.35) and server (1.32) exceeds the supported minor version skew of +/-1 Warning: version difference between client (1.35) and server (1.32) exceeds the supported minor version skew of +/-1 + main + create_infra balancer-4730 + local ns=balancer-4730 + [[ 1 == 1 ]] + delete_crd + desc 'get and delete old CRDs and RBAC' + set +o xtrace ----------------------------------------------------------------------------------- get and delete old CRDs and RBAC ----------------------------------------------------------------------------------- + kubectl_bin delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/deploy/crd.yaml --ignore-not-found --wait=false ++ mktemp + local LAST_OUT=/tmp/tmp.DvaZbP7IA6 ++ mktemp + local LAST_ERR=/tmp/tmp.qwJPuYFnM8 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/deploy/crd.yaml --ignore-not-found --wait=false + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.DvaZbP7IA6 customresourcedefinition.apiextensions.k8s.io "perconaservermongodbbackups.psmdb.percona.com" deleted customresourcedefinition.apiextensions.k8s.io "perconaservermongodbrestores.psmdb.percona.com" deleted customresourcedefinition.apiextensions.k8s.io "perconaservermongodbs.psmdb.percona.com" deleted + cat /tmp/tmp.qwJPuYFnM8 + rm /tmp/tmp.DvaZbP7IA6 /tmp/tmp.qwJPuYFnM8 + return 0 ++ yq eval .metadata.name /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/deploy/crd.yaml ++ grep -v '\-\-\-' grep: warning: stray \ before - grep: warning: stray \ before - + for crd_name in $(yq eval '.metadata.name' "${src_dir}/deploy/crd.yaml" | grep -v '\-\-\-') + kubectl get perconaservermongodbbackups.psmdb.percona.com --all-namespaces -o wide + grep -v NAMESPACE + xargs -L 1 sh -xc 'kubectl patch perconaservermongodbbackups.psmdb.percona.com -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' error: the server doesn't have a resource type "perconaservermongodbbackups" + kubectl patch perconaservermongodbbackups.psmdb.percona.com -n sh --type=merge -p '{"metadata":{"finalizers":[]}}' error: the server doesn't have a resource type "perconaservermongodbbackups" + : + kubectl_bin wait --for=delete crd perconaservermongodbbackups.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.CBZcYm0DIO ++ mktemp + local LAST_ERR=/tmp/tmp.Jl7pGyYbKu + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete crd perconaservermongodbbackups.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.CBZcYm0DIO + cat /tmp/tmp.Jl7pGyYbKu + rm /tmp/tmp.CBZcYm0DIO /tmp/tmp.Jl7pGyYbKu + return 0 + for crd_name in $(yq eval '.metadata.name' "${src_dir}/deploy/crd.yaml" | grep -v '\-\-\-') + kubectl get perconaservermongodbrestores.psmdb.percona.com --all-namespaces -o wide + grep -v NAMESPACE + xargs -L 1 sh -xc 'kubectl patch perconaservermongodbrestores.psmdb.percona.com -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' error: the server doesn't have a resource type "perconaservermongodbrestores" + kubectl patch perconaservermongodbrestores.psmdb.percona.com -n sh --type=merge -p '{"metadata":{"finalizers":[]}}' error: the server doesn't have a resource type "perconaservermongodbrestores" + : + kubectl_bin wait --for=delete crd perconaservermongodbrestores.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.jwew7CK1ta ++ mktemp + local LAST_ERR=/tmp/tmp.IsrjDb8Tes + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete crd perconaservermongodbrestores.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.jwew7CK1ta + cat /tmp/tmp.IsrjDb8Tes + rm /tmp/tmp.jwew7CK1ta /tmp/tmp.IsrjDb8Tes + return 0 + for crd_name in $(yq eval '.metadata.name' "${src_dir}/deploy/crd.yaml" | grep -v '\-\-\-') + kubectl get perconaservermongodbs.psmdb.percona.com --all-namespaces -o wide + grep -v NAMESPACE + xargs -L 1 sh -xc 'kubectl patch perconaservermongodbs.psmdb.percona.com -n $0 $1 --type=merge -p "{\"metadata\":{\"finalizers\":[]}}"' error: the server doesn't have a resource type "perconaservermongodbs" + kubectl patch perconaservermongodbs.psmdb.percona.com -n sh --type=merge -p '{"metadata":{"finalizers":[]}}' error: the server doesn't have a resource type "perconaservermongodbs" + : + kubectl_bin wait --for=delete crd perconaservermongodbs.psmdb.percona.com ++ mktemp + local LAST_OUT=/tmp/tmp.HU4x55HiVZ ++ mktemp + local LAST_ERR=/tmp/tmp.1kRwEkQWg2 + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete crd perconaservermongodbs.psmdb.percona.com + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.HU4x55HiVZ + cat /tmp/tmp.1kRwEkQWg2 + rm /tmp/tmp.HU4x55HiVZ /tmp/tmp.1kRwEkQWg2 + return 0 + local rbac_yaml=rbac.yaml + '[' -n psmdb-operator ']' + rbac_yaml=cw-rbac.yaml + kubectl_bin delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/deploy/cw-rbac.yaml --ignore-not-found ++ mktemp + local LAST_OUT=/tmp/tmp.cVJUqO0tBJ ++ mktemp + local LAST_ERR=/tmp/tmp.Y7aS6YXAxo + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/deploy/cw-rbac.yaml --ignore-not-found + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.cVJUqO0tBJ clusterrole.rbac.authorization.k8s.io "percona-server-mongodb-operator" deleted clusterrolebinding.rbac.authorization.k8s.io "service-account-percona-server-mongodb-operator" deleted + cat /tmp/tmp.Y7aS6YXAxo + rm /tmp/tmp.cVJUqO0tBJ /tmp/tmp.Y7aS6YXAxo + return 0 + check_crd_for_deletion PR-2219-d7e802db + local git_tag=PR-2219-d7e802db ++ curl -s https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/PR-2219-d7e802db/deploy/crd.yaml ++ yq eval .metadata.name ++ /usr/sbin/sed s/---//g ++ /usr/sbin/sed ':a;N;$!ba;s/\n/ /g' + for crd_name in $(curl -s https://raw.githubusercontent.com/percona/percona-server-mongodb-operator/${git_tag}/deploy/crd.yaml | yq eval '.metadata.name' | $sed 's/---//g' | $sed ':a;N;$!ba;s/\n/ /g') ++ kubectl_bin get crd/null -o 'jsonpath={.status.conditions[-1].type}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.jQOZjQCgaB +++ mktemp ++ local LAST_ERR=/tmp/tmp.skTNqTQenl ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get crd/null -o 'jsonpath={.status.conditions[-1].type}' ++ exit_status=1 ++ set -e ++ '[' 1 '!=' 0 -a -n 1 ']' ++ cat /tmp/tmp.jQOZjQCgaB ++ cat /tmp/tmp.skTNqTQenl Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ sleep 0 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get crd/null -o 'jsonpath={.status.conditions[-1].type}' ++ exit_status=1 ++ set -e ++ '[' 1 '!=' 0 -a -n 1 ']' ++ cat /tmp/tmp.jQOZjQCgaB ++ cat /tmp/tmp.skTNqTQenl Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ sleep 4 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get crd/null -o 'jsonpath={.status.conditions[-1].type}' ++ exit_status=1 ++ set -e ++ '[' 1 '!=' 0 -a -n 1 ']' ++ cat /tmp/tmp.jQOZjQCgaB ++ cat /tmp/tmp.skTNqTQenl Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ sleep 8 ++ cat /tmp/tmp.jQOZjQCgaB ++ cat /tmp/tmp.skTNqTQenl Error from server (NotFound): customresourcedefinitions.apiextensions.k8s.io "null" not found ++ rm /tmp/tmp.jQOZjQCgaB /tmp/tmp.skTNqTQenl ++ return 1 + [[ '' == \T\e\r\m\i\n\a\t\i\n\g ]] + '[' -n psmdb-operator ']' + create_namespace psmdb-operator + local namespace=psmdb-operator + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ 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 ++ kubectl get MutatingWebhookConfiguration ++ awk '{print $1}' + timeout 30 kubectl delete MutatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep validate-auth ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl api-resources ++ grep chaos-mesh ++ awk '{print $1}' ++ grep chaos-mesh.org ++ kubectl get crd ++ awk '{print $1}' + timeout 30 kubectl delete crd error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrolebinding ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete clusterrolebinding error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrole ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete clusterrole error: resource(s) were provided, but no name was specified + : + desc 'cleaned up all old namespaces' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up all old namespaces ----------------------------------------------------------------------------------- + kubectl_bin get ns + grep -E -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' + awk '{print$1}' ++ mktemp + '[' -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 + xargs kubectl delete ns ++ mktemp + local LAST_OUT=/tmp/tmp.PkQOZdNzpM ++ mktemp + local LAST_ERR=/tmp/tmp.fSwwAWXa2v + local exit_status=0 + local timeout=4 ++ seq 0 2 + local LAST_OUT=/tmp/tmp.xkmB3E2L4v + for i in $(seq 0 2) ++ mktemp + set +e + kubectl get ns + local LAST_ERR=/tmp/tmp.lczp4OQrX0 + 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.PkQOZdNzpM + cat /tmp/tmp.fSwwAWXa2v + rm /tmp/tmp.PkQOZdNzpM /tmp/tmp.fSwwAWXa2v + return 0 namespace "balancer-5922" deleted + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.xkmB3E2L4v namespace "psmdb-operator" deleted + cat /tmp/tmp.lczp4OQrX0 + rm /tmp/tmp.xkmB3E2L4v /tmp/tmp.lczp4OQrX0 + return 0 + kubectl_bin wait --for=delete namespace psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.tyhQ0RIvJS ++ mktemp + local LAST_ERR=/tmp/tmp.GUQXLbVjEC + 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.tyhQ0RIvJS + cat /tmp/tmp.GUQXLbVjEC + rm /tmp/tmp.tyhQ0RIvJS /tmp/tmp.GUQXLbVjEC + 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.3hFFH09B8p ++ mktemp + local LAST_ERR=/tmp/tmp.JKq5Aebvuh + 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.3hFFH09B8p namespace/psmdb-operator created + cat /tmp/tmp.JKq5Aebvuh + rm /tmp/tmp.3hFFH09B8p /tmp/tmp.JKq5Aebvuh + return 0 + set_kube_ctx psmdb-operator + local namespace=psmdb-operator ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.svp47AB1aU +++ mktemp ++ local LAST_ERR=/tmp/tmp.4TzE9xbjys ++ 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.svp47AB1aU ++ cat /tmp/tmp.4TzE9xbjys ++ rm /tmp/tmp.svp47AB1aU /tmp/tmp.4TzE9xbjys ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2219-d7e802db-7-cluster2 --namespace=psmdb-operator ++ mktemp + local LAST_OUT=/tmp/tmp.GYRhX5Droy ++ mktemp + local LAST_ERR=/tmp/tmp.w54xmkKOKj + 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-2219-d7e802db-7-cluster2 --namespace=psmdb-operator + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.GYRhX5Droy Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2219-d7e802db-7-cluster2" modified. + cat /tmp/tmp.w54xmkKOKj + rm /tmp/tmp.GYRhX5Droy /tmp/tmp.w54xmkKOKj + return 0 + deploy_operator + desc 'start PSMDB operator: docker.io/perconalab/percona-server-mongodb-operator:PR-2219-d7e802db' + set +o xtrace ----------------------------------------------------------------------------------- start PSMDB operator: docker.io/perconalab/percona-server-mongodb-operator:PR-2219-d7e802db ----------------------------------------------------------------------------------- + local cr_file + '[' -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/balancer/conf/crd.yaml ']' + cr_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/deploy/crd.yaml + kubectl_bin apply --server-side --force-conflicts -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/deploy/crd.yaml ++ mktemp + local LAST_OUT=/tmp/tmp.iTOuwe0YiR ++ mktemp + local LAST_ERR=/tmp/tmp.KYVTQ6NpNb + 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-2219/deploy/crd.yaml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.iTOuwe0YiR 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.KYVTQ6NpNb + rm /tmp/tmp.iTOuwe0YiR /tmp/tmp.KYVTQ6NpNb + 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-2219/deploy/cw-rbac.yaml + sed -e 's^namespace: .*^namespace: psmdb-operator^' + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.KfIQBi04HH ++ mktemp + local LAST_ERR=/tmp/tmp.7Zm17nQTlL + 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.KfIQBi04HH clusterrole.rbac.authorization.k8s.io/percona-server-mongodb-operator created serviceaccount/percona-server-mongodb-operator created clusterrolebinding.rbac.authorization.k8s.io/service-account-percona-server-mongodb-operator created + cat /tmp/tmp.7Zm17nQTlL + rm /tmp/tmp.KfIQBi04HH /tmp/tmp.7Zm17nQTlL + return 0 + yq eval ' (.spec.template.spec.containers[].image = "docker.io/perconalab/percona-server-mongodb-operator:PR-2219-d7e802db") | ((.. | select(.[] == "DISABLE_TELEMETRY")) |= .value="true") | ((.. | select(.[] == "LOG_LEVEL")) |= .value="DEBUG")' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/deploy/cw-operator.yaml + kubectl_bin apply -n psmdb-operator -f - ++ mktemp + local LAST_OUT=/tmp/tmp.q0oEgi13k3 ++ mktemp + local LAST_ERR=/tmp/tmp.OPeAKneymG + 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.q0oEgi13k3 deployment.apps/percona-server-mongodb-operator created + cat /tmp/tmp.OPeAKneymG + rm /tmp/tmp.q0oEgi13k3 /tmp/tmp.OPeAKneymG + 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.Nl0ea9r2wT +++ mktemp ++ local LAST_ERR=/tmp/tmp.60QrGM8R6c ++ 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.Nl0ea9r2wT ++ cat /tmp/tmp.60QrGM8R6c ++ rm /tmp/tmp.Nl0ea9r2wT /tmp/tmp.60QrGM8R6c ++ return 0 + wait_operator_pod percona-server-mongodb-operator-76758dcf9-8jrwc + local pod=percona-server-mongodb-operator-76758dcf9-8jrwc + set +o xtrace waiting for pod/percona-server-mongodb-operator-76758dcf9-8jrwc 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.LYtGOPd0a0 +++ mktemp ++ local LAST_ERR=/tmp/tmp.iWX2oMaWSq ++ 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.LYtGOPd0a0 ++ cat /tmp/tmp.iWX2oMaWSq ++ rm /tmp/tmp.LYtGOPd0a0 /tmp/tmp.iWX2oMaWSq ++ return 0 + kubectl_bin logs -n psmdb-operator percona-server-mongodb-operator-76758dcf9-8jrwc ++ mktemp + local LAST_OUT=/tmp/tmp.IsyLB7orGL ++ mktemp + local LAST_ERR=/tmp/tmp.HXmBFiHG4o + 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-76758dcf9-8jrwc + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.IsyLB7orGL + cat /tmp/tmp.HXmBFiHG4o + rm /tmp/tmp.IsyLB7orGL /tmp/tmp.HXmBFiHG4o + return 0 2026-03-10T22:01:25.583Z INFO setup Manager starting up {"gitCommit": "d7e802db10c9b2b2028f56c7b5227cb276fe5878", "gitBranch": "PR-2219-d7e802db", "buildTime": "", "goVersion": "go1.25.8", "os": "linux", "arch": "amd64"} + create_namespace balancer-4730 + local namespace=balancer-4730 + local skip_clean_namespace= + [[ 1 == 1 ]] + [[ -z '' ]] + destroy_chaos_mesh ++ helm list --all-namespaces --filter chaos-mesh ++ tail -n1 ++ sed s/NAMESPACE// ++ awk '-F ' '{print $2}' + local chaos_mesh_ns= + desc 'destroy chaos-mesh' + set +o xtrace ----------------------------------------------------------------------------------- destroy chaos-mesh ----------------------------------------------------------------------------------- + '[' -n '' ']' ++ kubectl get MutatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete MutatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl get ValidatingWebhookConfiguration ++ grep validate-auth ++ awk '{print $1}' + timeout 30 kubectl delete ValidatingWebhookConfiguration error: resource(s) were provided, but no name was specified + : ++ kubectl api-resources ++ grep chaos-mesh ++ awk '{print $1}' ++ kubectl get crd ++ grep chaos-mesh.org ++ awk '{print $1}' + timeout 30 kubectl delete crd error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrolebinding ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete clusterrolebinding error: resource(s) were provided, but no name was specified + : ++ kubectl get clusterrole ++ grep chaos-mesh ++ awk '{print $1}' + timeout 30 kubectl delete clusterrole error: resource(s) were provided, but no name was specified + : + desc 'cleaned up all old namespaces' + set +o xtrace ----------------------------------------------------------------------------------- cleaned up all old namespaces ----------------------------------------------------------------------------------- + kubectl_bin get ns + grep -E -v '^kube-|^default|Terminating|psmdb-operator|openshift|^gke-|^gmp-|^NAME' + awk '{print$1}' + '[' -n '' ']' + xargs kubectl delete ns + desc 'cleaned up old namespaces balancer-4730' ++ mktemp + set +o xtrace ----------------------------------------------------------------------------------- cleaned up old namespaces balancer-4730 ----------------------------------------------------------------------------------- + kubectl_bin delete namespace balancer-4730 --ignore-not-found ++ mktemp + local LAST_OUT=/tmp/tmp.Qx4szv5zU6 ++ mktemp + local LAST_OUT=/tmp/tmp.MJzeqeEC45 ++ mktemp + local LAST_ERR=/tmp/tmp.RuAVTQz8i8 + local exit_status=0 + local timeout=4 + local LAST_ERR=/tmp/tmp.wWiGSZk0LE + local exit_status=0 + local timeout=4 ++ seq 0 2 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl delete namespace balancer-4730 --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.Qx4szv5zU6 + cat /tmp/tmp.RuAVTQz8i8 + rm /tmp/tmp.Qx4szv5zU6 /tmp/tmp.RuAVTQz8i8 + 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.MJzeqeEC45 + cat /tmp/tmp.wWiGSZk0LE + rm /tmp/tmp.MJzeqeEC45 /tmp/tmp.wWiGSZk0LE + return 0 + kubectl_bin wait --for=delete namespace balancer-4730 ++ mktemp + local LAST_OUT=/tmp/tmp.eeoV1AZxxO ++ mktemp + local LAST_ERR=/tmp/tmp.F25iY2fnkn + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl wait --for=delete namespace balancer-4730 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.eeoV1AZxxO + cat /tmp/tmp.F25iY2fnkn + rm /tmp/tmp.eeoV1AZxxO /tmp/tmp.F25iY2fnkn + return 0 + desc 'create namespace balancer-4730' + set +o xtrace ----------------------------------------------------------------------------------- create namespace balancer-4730 ----------------------------------------------------------------------------------- + kubectl_bin create namespace balancer-4730 ++ mktemp + local LAST_OUT=/tmp/tmp.YmSTRQd4s9 ++ mktemp + local LAST_ERR=/tmp/tmp.PiPIFvL1kD + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl create namespace balancer-4730 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.YmSTRQd4s9 namespace/balancer-4730 created + cat /tmp/tmp.PiPIFvL1kD + rm /tmp/tmp.YmSTRQd4s9 /tmp/tmp.PiPIFvL1kD + return 0 + set_kube_ctx balancer-4730 + local namespace=balancer-4730 ++ kubectl_bin config current-context +++ mktemp ++ local LAST_OUT=/tmp/tmp.eRNsPbhcIP +++ mktemp ++ local LAST_ERR=/tmp/tmp.m95nFI0DgJ ++ 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.eRNsPbhcIP ++ cat /tmp/tmp.m95nFI0DgJ ++ rm /tmp/tmp.eRNsPbhcIP /tmp/tmp.m95nFI0DgJ ++ return 0 + kubectl_bin config set-context gke_cloud-dev-112233_us-central1-a_jen-psmdb-2219-d7e802db-7-cluster2 --namespace=balancer-4730 ++ mktemp + local LAST_OUT=/tmp/tmp.40lNoGm460 ++ mktemp + local LAST_ERR=/tmp/tmp.NeTqLCUrkp + 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-2219-d7e802db-7-cluster2 --namespace=balancer-4730 + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.40lNoGm460 Context "gke_cloud-dev-112233_us-central1-a_jen-psmdb-2219-d7e802db-7-cluster2" modified. + cat /tmp/tmp.NeTqLCUrkp + rm /tmp/tmp.40lNoGm460 /tmp/tmp.NeTqLCUrkp + return 0 + deploy_minio + local cert_secret= + local service_name=minio-service + desc 'install MinIO: minio-service' + set +o xtrace ----------------------------------------------------------------------------------- install MinIO: minio-service ----------------------------------------------------------------------------------- + helm uninstall minio-service + : + helm repo remove minio "minio" has been removed from your repositories + helm repo add minio https://charts.min.io/ "minio" has been added to your repositories + local endpoint=http://minio-service:9000 + minio_args=('--version' '5.4.0' '--set' 'replicas=1' '--set' 'mode=standalone' '--set' 'resources.requests.memory=256Mi' '--set' 'rootUser=rootuser' '--set' 'rootPassword=rootpass123' '--set' 'users[0].accessKey=some-access-key' '--set' 'users[0].secretKey=some-secret-key' '--set' 'users[0].policy=consoleAdmin' '--set' 'service.type=ClusterIP' '--set' 'configPathmc=/tmp/' '--set' 'securityContext.enabled=false' '--set' 'persistence.size=2G' '--set' 'fullnameOverride=minio-service' '--set' 'serviceAccount.create=true' '--set' 'serviceAccount.name=minio-service-sa') + local minio_args + [[ -n '' ]] + retry 10 60 helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/ --set securityContext.enabled=false --set persistence.size=2G --set fullnameOverride=minio-service --set serviceAccount.create=true --set serviceAccount.name=minio-service-sa minio/minio + local max=10 + local delay=60 + shift 2 + local n=1 + helm install minio-service --version 5.4.0 --set replicas=1 --set mode=standalone --set resources.requests.memory=256Mi --set rootUser=rootuser --set rootPassword=rootpass123 --set 'users[0].accessKey=some-access-key' --set 'users[0].secretKey=some-secret-key' --set 'users[0].policy=consoleAdmin' --set service.type=ClusterIP --set configPathmc=/tmp/ --set securityContext.enabled=false --set persistence.size=2G --set fullnameOverride=minio-service --set serviceAccount.create=true --set serviceAccount.name=minio-service-sa minio/minio NAME: minio-service LAST DEPLOYED: Tue Mar 10 22:02:03 2026 NAMESPACE: balancer-4730 STATUS: deployed REVISION: 1 TEST SUITE: None NOTES: MinIO can be accessed via port 9000 on the following DNS name from within your cluster: minio-service.balancer-4730.cluster.local To access MinIO from localhost, run the below commands: 1. export POD_NAME=$(kubectl get pods --namespace balancer-4730 -l "release=minio-service" -o jsonpath="{.items[0].metadata.name}") 2. kubectl port-forward $POD_NAME 9000 --namespace balancer-4730 Read more about port forwarding here: http://kubernetes.io/docs/user-guide/kubectl/kubectl_port-forward/ You can now access MinIO server on http://localhost:9000. Follow the below steps to connect to MinIO server with mc client: 1. Download the MinIO mc client - https://min.io/docs/minio/linux/reference/minio-mc.html#quickstart 2. export MC_HOST_minio-service-local=http://$(kubectl get secret --namespace balancer-4730 minio-service -o jsonpath="{.data.rootUser}" | base64 --decode):$(kubectl get secret --namespace balancer-4730 minio-service -o jsonpath="{.data.rootPassword}" | base64 --decode)@localhost:9000 3. mc ls minio-service-local ++ kubectl_bin get pods --selector=release=minio-service -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.0TIS4Oz7TK +++ mktemp ++ local LAST_ERR=/tmp/tmp.CfD5WV6Eb3 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl get pods --selector=release=minio-service -o 'jsonpath={.items[].metadata.name}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.0TIS4Oz7TK ++ cat /tmp/tmp.CfD5WV6Eb3 ++ rm /tmp/tmp.0TIS4Oz7TK /tmp/tmp.CfD5WV6Eb3 ++ return 0 + local MINIO_POD=minio-service-6d5f646cdc-f7v5l + wait_pod minio-service-6d5f646cdc-f7v5l + local pod=minio-service-6d5f646cdc-f7v5l + set +o xtrace waiting for pod/minio-service-6d5f646cdc-f7v5l to be ready.OK + '[' -n psmdb-operator ']' + kubectl_bin create svc -n psmdb-operator externalname minio-service --external-name=minio-service.balancer-4730.svc.cluster.local --tcp=9000 service/minio-service created + create_minio_bucket operator-testing http://minio-service:9000 + local bucket=operator-testing + local endpoint=http://minio-service:9000 + kubectl_bin run -i --rm aws-cli --image=docker.io/perconalab/awscli --restart=Never -- bash -c 'AWS_ACCESS_KEY_ID=some-access-key AWS_SECRET_ACCESS_KEY=some-secret-key AWS_DEFAULT_REGION=us-east-1 /usr/bin/aws --no-verify-ssl --endpoint-url http://minio-service:9000 s3 mb s3://operator-testing' ++ mktemp + local LAST_OUT=/tmp/tmp.9yZ5RyGN4i ++ mktemp + local LAST_ERR=/tmp/tmp.u5TWz6lizp + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl run -i --rm aws-cli --image=docker.io/perconalab/awscli --restart=Never -- bash -c 'AWS_ACCESS_KEY_ID=some-access-key AWS_SECRET_ACCESS_KEY=some-secret-key AWS_DEFAULT_REGION=us-east-1 /usr/bin/aws --no-verify-ssl --endpoint-url http://minio-service:9000 s3 mb s3://operator-testing' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.9yZ5RyGN4i pod "aws-cli" deleted from balancer-4730 namespace + cat /tmp/tmp.u5TWz6lizp All commands and output from this session will be recorded in container logs, including credentials and sensitive information passed through the command prompt. If you don't see a command prompt, try pressing enter. + rm /tmp/tmp.9yZ5RyGN4i /tmp/tmp.u5TWz6lizp + 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-2219/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/conf/cloud-secret.yml ++ mktemp + local LAST_OUT=/tmp/tmp.B13kzGafRu ++ mktemp + local LAST_ERR=/tmp/tmp.GXvpuxLHc3 + 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-2219/e2e-tests/conf/minio-secret.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/conf/cloud-secret.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.B13kzGafRu secret/minio-secret created secret/aws-s3-secret created secret/gcp-cs-secret created secret/azure-secret created secret/gcp-cs-sa-key-secret created + cat /tmp/tmp.GXvpuxLHc3 + rm /tmp/tmp.B13kzGafRu /tmp/tmp.GXvpuxLHc3 + return 0 + log 'create PSMDB cluster' + set +o xtrace [2026-03-10T22:02:49+0000] create PSMDB cluster + cluster=some-name + kubectl_bin apply -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/conf/client-70.yml ++ mktemp + local LAST_OUT=/tmp/tmp.l4Wh6u0myS ++ mktemp + local LAST_ERR=/tmp/tmp.zKueDMi4FS + 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-2219/e2e-tests/conf/secrets.yml -f /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/conf/client-70.yml + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.l4Wh6u0myS secret/some-users created deployment.apps/psmdb-client created + cat /tmp/tmp.zKueDMi4FS + rm /tmp/tmp.l4Wh6u0myS /tmp/tmp.zKueDMi4FS + return 0 + apply_cluster /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/balancer/conf/some-name-rs0.yml + '[' -z '' ']' + cat_config /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/balancer/conf/some-name-rs0.yml + kubectl_bin apply -f - + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/balancer/conf/some-name-rs0.yml ++ mktemp + yq eval '(.spec | select(.image == null)).image = "docker.io/perconalab/percona-server-mongodb-operator:main-mongod8.0"' + yq eval '(.spec | select(has("pmm"))).pmm.image = "docker.io/percona/pmm-client:2.44.1-1"' + yq eval '(.spec | select(has("initImage"))).initImage = "docker.io/perconalab/percona-server-mongodb-operator:PR-2219-d7e802db"' + local LAST_OUT=/tmp/tmp.hZVGV3Y2Cw + yq eval '(.spec | select(has("backup"))).backup.image = "docker.io/perconalab/percona-server-mongodb-operator:main-backup"' ++ mktemp + yq eval '.spec.upgradeOptions.apply="Never"' + /usr/sbin/sed -e s/NAME_SPACE/balancer-4730/g + local LAST_ERR=/tmp/tmp.kDQsUio8Ol + 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.hZVGV3Y2Cw perconaservermongodb.psmdb.percona.com/some-name created + cat /tmp/tmp.kDQsUio8Ol + rm /tmp/tmp.hZVGV3Y2Cw /tmp/tmp.kDQsUio8Ol + return 0 + log 'check if cfg pods started' + set +o xtrace [2026-03-10T22:02:53+0000] check if cfg pods started + wait_for_running some-name-cfg 3 false + local name=some-name-cfg + let last_pod=2 + local check_cluster_readyness=false + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=cfg + local cluster_name=some-name ++ seq 0 2 + for i in $(seq 0 $last_pod) + [[ 0 -eq 2 ]] + wait_pod some-name-cfg-0 + local pod=some-name-cfg-0 + set +o xtrace waiting for pod/some-name-cfg-0 to be ready.....OK + for i in $(seq 0 $last_pod) + [[ 1 -eq 2 ]] + wait_pod some-name-cfg-1 + local pod=some-name-cfg-1 + set +o xtrace waiting for pod/some-name-cfg-1 to be ready.......OK + for i in $(seq 0 $last_pod) + [[ 2 -eq 2 ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.bla7zMVW8O +++ mktemp ++ local LAST_ERR=/tmp/tmp.rPktmksWLM ++ 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.bla7zMVW8O ++ cat /tmp/tmp.rPktmksWLM ++ rm /tmp/tmp.bla7zMVW8O /tmp/tmp.rPktmksWLM ++ return 0 + [[ '' == \t\r\u\e ]] + wait_pod some-name-cfg-2 + local pod=some-name-cfg-2 + set +o xtrace waiting for pod/some-name-cfg-2 to be ready.....OK ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.y9e417O1YB +++ mktemp ++ local LAST_ERR=/tmp/tmp.WPcKcZVt4I ++ 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.y9e417O1YB ++ cat /tmp/tmp.WPcKcZVt4I ++ rm /tmp/tmp.y9e417O1YB /tmp/tmp.WPcKcZVt4I ++ return 0 + [[ '' == \t\r\u\e ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="cfg")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.7E1yyVuojY +++ mktemp ++ local LAST_ERR=/tmp/tmp.dJcTLjZFdL ++ 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.7E1yyVuojY ++ cat /tmp/tmp.dJcTLjZFdL ++ rm /tmp/tmp.7E1yyVuojY /tmp/tmp.dJcTLjZFdL ++ return 0 + [[ '' == \t\r\u\e ]] + sleep 10 + [[ false == \t\r\u\e ]] + log 'check if all shards started' + set +o xtrace [2026-03-10T22:04:15+0000] check if all shards started + wait_for_running some-name-rs0 3 false + local name=some-name-rs0 + let last_pod=2 + local check_cluster_readyness=false + 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.sG6UEFrPmY +++ mktemp ++ local LAST_ERR=/tmp/tmp.yjr6u0nXzI ++ 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.sG6UEFrPmY ++ cat /tmp/tmp.yjr6u0nXzI ++ rm /tmp/tmp.sG6UEFrPmY /tmp/tmp.yjr6u0nXzI ++ return 0 + [[ '' == \t\r\u\e ]] + wait_pod some-name-rs0-2 + local pod=some-name-rs0-2 + set +o xtrace waiting for pod/some-name-rs0-2 to be ready.OK ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.eExm0FVcKx +++ mktemp ++ local LAST_ERR=/tmp/tmp.rb7rDoKv4Q ++ 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.eExm0FVcKx ++ cat /tmp/tmp.rb7rDoKv4Q ++ rm /tmp/tmp.eExm0FVcKx /tmp/tmp.rb7rDoKv4Q ++ return 0 + [[ '' == \t\r\u\e ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs0")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.QWovCCaJ0a +++ mktemp ++ local LAST_ERR=/tmp/tmp.4qAMILi1hB ++ 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.QWovCCaJ0a ++ cat /tmp/tmp.4qAMILi1hB ++ rm /tmp/tmp.QWovCCaJ0a /tmp/tmp.4qAMILi1hB ++ return 0 + [[ '' == \t\r\u\e ]] + sleep 10 + [[ false == \t\r\u\e ]] + wait_for_running some-name-rs1 3 false + local name=some-name-rs1 + let last_pod=2 + local check_cluster_readyness=false + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=rs1 + local cluster_name=some-name ++ seq 0 2 + for i in $(seq 0 $last_pod) + [[ 0 -eq 2 ]] + wait_pod some-name-rs1-0 + local pod=some-name-rs1-0 + set +o xtrace waiting for pod/some-name-rs1-0 to be ready.OK + for i in $(seq 0 $last_pod) + [[ 1 -eq 2 ]] + wait_pod some-name-rs1-1 + local pod=some-name-rs1-1 + set +o xtrace waiting for pod/some-name-rs1-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=="rs1")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.R2u59l02Xi +++ mktemp ++ local LAST_ERR=/tmp/tmp.lxD2LHCPDq ++ 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=="rs1")].arbiter.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.R2u59l02Xi ++ cat /tmp/tmp.lxD2LHCPDq ++ rm /tmp/tmp.R2u59l02Xi /tmp/tmp.lxD2LHCPDq ++ return 0 + [[ '' == \t\r\u\e ]] + wait_pod some-name-rs1-2 + local pod=some-name-rs1-2 + set +o xtrace waiting for pod/some-name-rs1-2 to be ready.OK ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs1")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.zpYlic7na1 +++ mktemp ++ local LAST_ERR=/tmp/tmp.UKheXGAUcf ++ 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=="rs1")].nonvoting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.zpYlic7na1 ++ cat /tmp/tmp.UKheXGAUcf ++ rm /tmp/tmp.zpYlic7na1 /tmp/tmp.UKheXGAUcf ++ return 0 + [[ '' == \t\r\u\e ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs1")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Ylyu00iRwj +++ mktemp ++ local LAST_ERR=/tmp/tmp.Rz6u132tWD ++ 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=="rs1")].hidden.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.Ylyu00iRwj ++ cat /tmp/tmp.Rz6u132tWD ++ rm /tmp/tmp.Ylyu00iRwj /tmp/tmp.Rz6u132tWD ++ return 0 + [[ '' == \t\r\u\e ]] + sleep 10 + [[ false == \t\r\u\e ]] + wait_for_running some-name-rs2 3 false + local name=some-name-rs2 + let last_pod=2 + local check_cluster_readyness=false + set_debug + [[ 1 == 1 ]] + set -o xtrace + local rs_name=rs2 + local cluster_name=some-name ++ seq 0 2 + for i in $(seq 0 $last_pod) + [[ 0 -eq 2 ]] + wait_pod some-name-rs2-0 + local pod=some-name-rs2-0 + set +o xtrace waiting for pod/some-name-rs2-0 to be ready.OK + for i in $(seq 0 $last_pod) + [[ 1 -eq 2 ]] + wait_pod some-name-rs2-1 + local pod=some-name-rs2-1 + set +o xtrace waiting for pod/some-name-rs2-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=="rs2")].arbiter.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.xH6iqdx8Xj +++ mktemp ++ local LAST_ERR=/tmp/tmp.cY8hp5QcnI ++ 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=="rs2")].arbiter.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.xH6iqdx8Xj ++ cat /tmp/tmp.cY8hp5QcnI ++ rm /tmp/tmp.xH6iqdx8Xj /tmp/tmp.cY8hp5QcnI ++ return 0 + [[ '' == \t\r\u\e ]] + wait_pod some-name-rs2-2 + local pod=some-name-rs2-2 + set +o xtrace waiting for pod/some-name-rs2-2 to be ready.OK ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs2")].nonvoting.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.jcqkVnrGYI +++ mktemp ++ local LAST_ERR=/tmp/tmp.MOIWPg878D ++ 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=="rs2")].nonvoting.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.jcqkVnrGYI ++ cat /tmp/tmp.MOIWPg878D ++ rm /tmp/tmp.jcqkVnrGYI /tmp/tmp.MOIWPg878D ++ return 0 + [[ '' == \t\r\u\e ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="rs2")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.W7ofwO23E1 +++ mktemp ++ local LAST_ERR=/tmp/tmp.8vTP0LRqoh ++ 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=="rs2")].hidden.enabled}' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.W7ofwO23E1 ++ cat /tmp/tmp.8vTP0LRqoh ++ rm /tmp/tmp.W7ofwO23E1 /tmp/tmp.8vTP0LRqoh ++ return 0 + [[ '' == \t\r\u\e ]] + sleep 10 + [[ false == \t\r\u\e ]] + log 'check if mongos pods started' + set +o xtrace [2026-03-10T22:05:02+0000] check if mongos pods started + 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.fjrNeJBYBI +++ mktemp ++ local LAST_ERR=/tmp/tmp.ZByjeSqmWQ ++ 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.fjrNeJBYBI ++ cat /tmp/tmp.ZByjeSqmWQ ++ rm /tmp/tmp.fjrNeJBYBI /tmp/tmp.ZByjeSqmWQ ++ return 0 + [[ '' == \t\r\u\e ]] + 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.wpjrvd0M5U +++ mktemp ++ local LAST_ERR=/tmp/tmp.3M333e8EDo ++ 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.wpjrvd0M5U ++ cat /tmp/tmp.3M333e8EDo ++ rm /tmp/tmp.wpjrvd0M5U /tmp/tmp.3M333e8EDo ++ return 0 + [[ '' == \t\r\u\e ]] ++ kubectl_bin get psmdb some-name -o 'jsonpath={.spec.replsets[?(@.name=="mongos")].hidden.enabled}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.oG8m1w2ZPE +++ mktemp ++ local LAST_ERR=/tmp/tmp.IMWKVaenwl ++ 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.oG8m1w2ZPE ++ cat /tmp/tmp.IMWKVaenwl ++ rm /tmp/tmp.oG8m1w2ZPE /tmp/tmp.IMWKVaenwl ++ return 0 + [[ '' == \t\r\u\e ]] + sleep 10 + [[ true == \t\r\u\e ]] + set +x Waiting for cluster readyness.............. + check_balancer some-name true 10 + local cluster=some-name + local expected=true + local delay=10 + local balancer_running + log 'sleeping for 10 seconds...' + set +o xtrace [2026-03-10T22:05:48+0000] sleeping for 10 seconds... + sleep 10 ++ run_mongosh 'sh.getBalancerState()' clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local 'command=sh.getBalancerState()' ++ local uri=clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local driver=mongodb+srv ++ local suffix=.svc.cluster.local ++ local mongo_flag= ++ grep -E -v 'Warning|cfg' ++ grep -E 'true|false' +++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.7DzreNr12n ++++ mktemp +++ local LAST_ERR=/tmp/tmp.LVFiG1cQJ6 +++ 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.7DzreNr12n +++ cat /tmp/tmp.LVFiG1cQJ6 +++ rm /tmp/tmp.7DzreNr12n /tmp/tmp.LVFiG1cQJ6 +++ return 0 ++ local client_container=psmdb-client-f6f8c745d-8vbtr ++ [[ clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 == *cfg* ]] ++ replica_set=cfg ++ kubectl_bin exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' +++ mktemp ++ local LAST_OUT=/tmp/tmp.7TvWJ71kYU +++ mktemp ++ local LAST_ERR=/tmp/tmp.9sp6dJxLRT ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.7TvWJ71kYU ++ cat /tmp/tmp.9sp6dJxLRT ++ rm /tmp/tmp.7TvWJ71kYU /tmp/tmp.9sp6dJxLRT ++ return 0 + balancer_running=true + echo -n 'checking if balancer status is true...' checking if balancer status is true...+ [[ true != \t\r\u\e ]] + echo OK OK + write_data some-name + local cluster=some-name + log 'create user' + set +o xtrace [2026-03-10T22:06:02+0000] create user + run_mongos 'db.createUser({user:"user",pwd:"pass",roles:[{db:"app",role:"readWrite"}]})' userAdmin:userAdmin123456@some-name-mongos.balancer-4730 mongodb .svc.cluster.local --quiet 27017 mongosh + local 'command=db.createUser({user:"user",pwd:"pass",roles:[{db:"app",role:"readWrite"}]})' + local uri=userAdmin:userAdmin123456@some-name-mongos.balancer-4730 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag=--quiet + local port=27017 + local mongo_bin=mongosh ++ 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.Sjyoarm6Rz +++ mktemp ++ local LAST_ERR=/tmp/tmp.rSLAvic6rL ++ 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.Sjyoarm6Rz ++ cat /tmp/tmp.rSLAvic6rL ++ rm /tmp/tmp.Sjyoarm6Rz /tmp/tmp.rSLAvic6rL ++ return 0 + local client_container=psmdb-client-f6f8c745d-8vbtr + kubectl_bin exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''db.createUser({user:"user",pwd:"pass",roles:[{db:"app",role:"readWrite"}]})\n'\'' | mongosh mongodb://userAdmin:userAdmin123456@some-name-mongos.balancer-4730.svc.cluster.local:27017/admin --quiet' ++ mktemp + local LAST_OUT=/tmp/tmp.k45oeGzDXg ++ mktemp + local LAST_ERR=/tmp/tmp.O8o3vTurAe + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''db.createUser({user:"user",pwd:"pass",roles:[{db:"app",role:"readWrite"}]})\n'\'' | mongosh mongodb://userAdmin:userAdmin123456@some-name-mongos.balancer-4730.svc.cluster.local:27017/admin --quiet' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.k45oeGzDXg [direct: mongos] admin> { ok: 1, '$clusterTime': { clusterTime: Timestamp({ t: 1773180366, i: 4 }), signature: { hash: Binary.createFromBase64('hmvRf/dpIucs9KsNzbS1mIUnoPg=', 0), keyId: Long('7615751157893300248') } }, operationTime: Timestamp({ t: 1773180366, i: 4 }) } [direct: mongos] admin> + cat /tmp/tmp.O8o3vTurAe + rm /tmp/tmp.k45oeGzDXg /tmp/tmp.O8o3vTurAe + return 0 + sleep 2 + log 'enable sharding' + set +o xtrace [2026-03-10T22:06:08+0000] enable sharding + run_mongos 'sh.enableSharding("app")' clusterAdmin:clusterAdmin123456@some-name-mongos.balancer-4730 mongodb .svc.cluster.local --quiet 27017 mongosh + local 'command=sh.enableSharding("app")' + local uri=clusterAdmin:clusterAdmin123456@some-name-mongos.balancer-4730 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag=--quiet + local port=27017 + local mongo_bin=mongosh ++ 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.ib1o3x7Low +++ mktemp ++ local LAST_ERR=/tmp/tmp.ZHSUdsULoo ++ 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.ib1o3x7Low ++ cat /tmp/tmp.ZHSUdsULoo ++ rm /tmp/tmp.ib1o3x7Low /tmp/tmp.ZHSUdsULoo ++ return 0 + local client_container=psmdb-client-f6f8c745d-8vbtr + kubectl_bin exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.enableSharding("app")\n'\'' | mongosh mongodb://clusterAdmin:clusterAdmin123456@some-name-mongos.balancer-4730.svc.cluster.local:27017/admin --quiet' ++ mktemp + local LAST_OUT=/tmp/tmp.IeB5ccwXaz ++ mktemp + local LAST_ERR=/tmp/tmp.K3rBYZpQbi + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.enableSharding("app")\n'\'' | mongosh mongodb://clusterAdmin:clusterAdmin123456@some-name-mongos.balancer-4730.svc.cluster.local:27017/admin --quiet' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.IeB5ccwXaz [direct: mongos] admin> { ok: 1, '$clusterTime': { clusterTime: Timestamp({ t: 1773180372, i: 9 }), signature: { hash: Binary.createFromBase64('5ODQrda9bqKFJ+tANOtzTGnl+dw=', 0), keyId: Long('7615751157893300248') } }, operationTime: Timestamp({ t: 1773180372, i: 6 }) } [direct: mongos] admin> + cat /tmp/tmp.K3rBYZpQbi + rm /tmp/tmp.IeB5ccwXaz /tmp/tmp.K3rBYZpQbi + return 0 + sleep 2 + log 'shard collection' + set +o xtrace [2026-03-10T22:06:14+0000] shard collection + run_mongos 'sh.shardCollection("app.city", { _id: 1 } )' clusterAdmin:clusterAdmin123456@some-name-mongos.balancer-4730 mongodb .svc.cluster.local --quiet 27017 mongosh + local 'command=sh.shardCollection("app.city", { _id: 1 } )' + local uri=clusterAdmin:clusterAdmin123456@some-name-mongos.balancer-4730 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag=--quiet + local port=27017 + local mongo_bin=mongosh ++ 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.G7MmrET2pO +++ mktemp ++ local LAST_ERR=/tmp/tmp.E5VK7Y5lxs ++ 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.G7MmrET2pO ++ cat /tmp/tmp.E5VK7Y5lxs ++ rm /tmp/tmp.G7MmrET2pO /tmp/tmp.E5VK7Y5lxs ++ return 0 + local client_container=psmdb-client-f6f8c745d-8vbtr + kubectl_bin exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.shardCollection("app.city", { _id: 1 } )\n'\'' | mongosh mongodb://clusterAdmin:clusterAdmin123456@some-name-mongos.balancer-4730.svc.cluster.local:27017/admin --quiet' ++ mktemp + local LAST_OUT=/tmp/tmp.B0NPjAlAGc ++ mktemp + local LAST_ERR=/tmp/tmp.4TlmSvU6fs + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.shardCollection("app.city", { _id: 1 } )\n'\'' | mongosh mongodb://clusterAdmin:clusterAdmin123456@some-name-mongos.balancer-4730.svc.cluster.local:27017/admin --quiet' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.B0NPjAlAGc [direct: mongos] admin> { collectionsharded: 'app.city', ok: 1, '$clusterTime': { clusterTime: Timestamp({ t: 1773180379, i: 16 }), signature: { hash: Binary.createFromBase64('Anf+I3m1QnIS8bwWat36SMFZWcA=', 0), keyId: Long('7615751157893300248') } }, operationTime: Timestamp({ t: 1773180379, i: 15 }) } [direct: mongos] admin> + cat /tmp/tmp.4TlmSvU6fs + rm /tmp/tmp.B0NPjAlAGc /tmp/tmp.4TlmSvU6fs + return 0 + log 'write data (this can take some time, be patient)' + set +o xtrace [2026-03-10T22:06:19+0000] write data (this can take some time, be patient) + run_script_mongos /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/balancer/data.js user:pass@some-name-mongos.balancer-4730 mongodb .svc.cluster.local --quiet mongosh + local script=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/balancer/data.js + local uri=user:pass@some-name-mongos.balancer-4730 + local driver=mongodb + local suffix=.svc.cluster.local + local mongo_flag=--quiet + local mongo_bin=mongosh ++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.dK7oCkITvj +++ mktemp ++ local LAST_ERR=/tmp/tmp.jhWzLetHVp ++ 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.dK7oCkITvj ++ cat /tmp/tmp.jhWzLetHVp ++ rm /tmp/tmp.dK7oCkITvj /tmp/tmp.jhWzLetHVp ++ return 0 + local client_container=psmdb-client-f6f8c745d-8vbtr ++ basename /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/balancer/data.js + name=data.js + kubectl_bin cp /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/balancer/data.js balancer-4730/psmdb-client-f6f8c745d-8vbtr:/tmp ++ mktemp + local LAST_OUT=/tmp/tmp.K40iasXjYC ++ mktemp + local LAST_ERR=/tmp/tmp.RL3E6aO12G + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl cp /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/balancer/data.js balancer-4730/psmdb-client-f6f8c745d-8vbtr:/tmp + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.K40iasXjYC + cat /tmp/tmp.RL3E6aO12G + rm /tmp/tmp.K40iasXjYC /tmp/tmp.RL3E6aO12G + return 0 + kubectl_bin exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'mongosh mongodb://user:pass@some-name-mongos.balancer-4730.svc.cluster.local/admin --quiet /tmp/data.js' ++ mktemp + local LAST_OUT=/tmp/tmp.VwbFL5Dncw ++ mktemp + local LAST_ERR=/tmp/tmp.MG8fVEXIRr + local exit_status=0 + local timeout=4 ++ seq 0 2 + for i in $(seq 0 2) + set +e + kubectl exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'mongosh mongodb://user:pass@some-name-mongos.balancer-4730.svc.cluster.local/admin --quiet /tmp/data.js' + exit_status=0 + set -e + '[' 0 '!=' 0 -a -n 1 ']' + break + cat /tmp/tmp.VwbFL5Dncw + cat /tmp/tmp.MG8fVEXIRr + rm /tmp/tmp.VwbFL5Dncw /tmp/tmp.MG8fVEXIRr + return 0 + check_backup_and_restore some-name 0 true + local cluster=some-name + local backup_suffix=0 + local balancer_end_state=true + local backup_name=backup-minio-0 + log 'running backup: backup-minio-0' + set +o xtrace [2026-03-10T22:09:05+0000] running backup: backup-minio-0 + run_backup minio backup-minio-0 + local storage=minio + local backup_name=backup-minio-0 + local type=logical + log 'running backup backup-minio-0' + set +o xtrace [2026-03-10T22:09:05+0000] running backup backup-minio-0 + yq eval '.metadata.name = "backup-minio-0" | .spec.storageName = "minio" | .spec.type = "logical"' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/balancer/conf/backup-minio.yml + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.DInMEGFv0V ++ mktemp + local LAST_ERR=/tmp/tmp.Qxbib2oODO + 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.DInMEGFv0V perconaservermongodbbackup.psmdb.percona.com/backup-minio-0 created + cat /tmp/tmp.Qxbib2oODO + rm /tmp/tmp.DInMEGFv0V /tmp/tmp.Qxbib2oODO + return 0 + wait_backup backup-minio-0 requested + local backup_name=backup-minio-0 + local target_state=requested + set +o xtrace waiting for backup-minio-0 to reach requested state..OK + log 'checking if balancer is disabled' + set +o xtrace [2026-03-10T22:09:09+0000] checking if balancer is disabled + check_balancer some-name false + local cluster=some-name + local expected=false + local delay=0 + local balancer_running + log 'sleeping for 0 seconds...' + set +o xtrace [2026-03-10T22:09:09+0000] sleeping for 0 seconds... + sleep 0 ++ run_mongosh 'sh.getBalancerState()' clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local 'command=sh.getBalancerState()' ++ local uri=clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local driver=mongodb+srv ++ local suffix=.svc.cluster.local ++ local mongo_flag= ++ grep -E -v 'Warning|cfg' ++ grep -E 'true|false' +++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.LzTTgpV1vl ++++ mktemp +++ local LAST_ERR=/tmp/tmp.33xOCajDJp +++ 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.LzTTgpV1vl +++ cat /tmp/tmp.33xOCajDJp +++ rm /tmp/tmp.LzTTgpV1vl /tmp/tmp.33xOCajDJp +++ return 0 ++ local client_container=psmdb-client-f6f8c745d-8vbtr ++ [[ clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 == *cfg* ]] ++ replica_set=cfg ++ kubectl_bin exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' +++ mktemp ++ local LAST_OUT=/tmp/tmp.6jX3XiDLBf +++ mktemp ++ local LAST_ERR=/tmp/tmp.VDUTM93p2U ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.6jX3XiDLBf ++ cat /tmp/tmp.VDUTM93p2U ++ rm /tmp/tmp.6jX3XiDLBf /tmp/tmp.VDUTM93p2U ++ return 0 + balancer_running=false + echo -n 'checking if balancer status is false...' checking if balancer status is false...+ [[ false != \f\a\l\s\e ]] + echo OK OK + wait_backup backup-minio-0 ready + local backup_name=backup-minio-0 + local target_state=ready + set +o xtrace waiting for backup-minio-0 to reach ready state...............OK + log 'checking if balancer is true after backup' + set +o xtrace [2026-03-10T22:09:40+0000] checking if balancer is true after backup + check_balancer some-name true 10 + local cluster=some-name + local expected=true + local delay=10 + local balancer_running + log 'sleeping for 10 seconds...' + set +o xtrace [2026-03-10T22:09:40+0000] sleeping for 10 seconds... + sleep 10 ++ run_mongosh 'sh.getBalancerState()' clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local 'command=sh.getBalancerState()' ++ local uri=clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local driver=mongodb+srv ++ local suffix=.svc.cluster.local ++ local mongo_flag= ++ grep -E -v 'Warning|cfg' +++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ grep -E 'true|false' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.gIA2dB3dKQ ++++ mktemp +++ local LAST_ERR=/tmp/tmp.1OObBF2QBR +++ 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.gIA2dB3dKQ +++ cat /tmp/tmp.1OObBF2QBR +++ rm /tmp/tmp.gIA2dB3dKQ /tmp/tmp.1OObBF2QBR +++ return 0 ++ local client_container=psmdb-client-f6f8c745d-8vbtr ++ [[ clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 == *cfg* ]] ++ replica_set=cfg ++ kubectl_bin exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' +++ mktemp ++ local LAST_OUT=/tmp/tmp.z8ijvURe24 +++ mktemp ++ local LAST_ERR=/tmp/tmp.i4Qob8nGfX ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.z8ijvURe24 ++ cat /tmp/tmp.i4Qob8nGfX ++ rm /tmp/tmp.z8ijvURe24 /tmp/tmp.i4Qob8nGfX ++ return 0 + balancer_running=true + echo -n 'checking if balancer status is true...' checking if balancer status is true...+ [[ true != \t\r\u\e ]] + echo OK OK + log 'running restore: restore-backup-minio-0' + set +o xtrace [2026-03-10T22:09:53+0000] running restore: restore-backup-minio-0 + run_restore backup-minio-0 + local backup_name=backup-minio-0 + local restore_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/balancer/conf/restore.yml + log 'running restore restore-backup-minio-0' + set +o xtrace [2026-03-10T22:09:53+0000] running restore restore-backup-minio-0 + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/balancer/conf/restore.yml + /usr/sbin/sed -e 's/name:/name: restore-backup-minio-0/' + /usr/sbin/sed -e 's/backupName:/backupName: backup-minio-0/' + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.tCEUFEZDE3 ++ mktemp + local LAST_ERR=/tmp/tmp.gWo6GrqPS5 + 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.tCEUFEZDE3 perconaservermongodbrestore.psmdb.percona.com/restore-backup-minio-0 created + cat /tmp/tmp.gWo6GrqPS5 + rm /tmp/tmp.tCEUFEZDE3 /tmp/tmp.gWo6GrqPS5 + return 0 + wait_restore backup-minio-0 some-name requested 0 + local backup_name=backup-minio-0 + local cluster_name=some-name + local target_state=requested + local wait_cluster_consistency=0 + local wait_time=1780 + local ok_if_ready=0 + set +o xtrace Waiting for the psmdb-restore/restore-backup-minio-0 object to be created.OK Waiting psmdb-restore/restore-backup-minio-0 to reach state "requested" .OK after 0 minutes + [[ 0 -eq 1 ]] + log 'checking if balancer is disabled' + set +o xtrace [2026-03-10T22:10:17+0000] checking if balancer is disabled + check_balancer some-name false + local cluster=some-name + local expected=false + local delay=0 + local balancer_running + log 'sleeping for 0 seconds...' + set +o xtrace [2026-03-10T22:10:17+0000] sleeping for 0 seconds... + sleep 0 ++ run_mongosh 'sh.getBalancerState()' clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local 'command=sh.getBalancerState()' ++ local uri=clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local driver=mongodb+srv ++ local suffix=.svc.cluster.local ++ local mongo_flag= ++ grep -E -v 'Warning|cfg' ++ grep -E 'true|false' +++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.FdhuDFdZpX ++++ mktemp +++ local LAST_ERR=/tmp/tmp.Diu2hBrYp9 +++ 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.FdhuDFdZpX +++ cat /tmp/tmp.Diu2hBrYp9 +++ rm /tmp/tmp.FdhuDFdZpX /tmp/tmp.Diu2hBrYp9 +++ return 0 ++ local client_container=psmdb-client-f6f8c745d-8vbtr ++ [[ clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 == *cfg* ]] ++ replica_set=cfg ++ kubectl_bin exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' +++ mktemp ++ local LAST_OUT=/tmp/tmp.O8L6W2xYws +++ mktemp ++ local LAST_ERR=/tmp/tmp.qoEOWjq91c ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.O8L6W2xYws ++ cat /tmp/tmp.qoEOWjq91c ++ rm /tmp/tmp.O8L6W2xYws /tmp/tmp.qoEOWjq91c ++ return 0 + balancer_running=false + echo -n 'checking if balancer status is false...' checking if balancer status is false...+ [[ false != \f\a\l\s\e ]] + echo OK OK + wait_restore backup-minio-0 some-name ready 1 + local backup_name=backup-minio-0 + local cluster_name=some-name + local target_state=ready + local wait_cluster_consistency=1 + local wait_time=1780 + local ok_if_ready=0 + set +o xtrace Waiting for the psmdb-restore/restore-backup-minio-0 object to be created.OK Waiting psmdb-restore/restore-backup-minio-0 to reach state "ready" ..OK after 1 minutes + [[ 1 -eq 1 ]] + wait_cluster_consistency some-name + local cluster_name=some-name + local wait_time=32 + retry=0 + sleep 7 + echo -n 'waiting for cluster readyness' waiting for cluster readyness++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.kYMXGG7u4A +++ mktemp ++ local LAST_ERR=/tmp/tmp.kMR1LFmce3 ++ 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.kYMXGG7u4A ++ cat /tmp/tmp.kMR1LFmce3 ++ rm /tmp/tmp.kYMXGG7u4A /tmp/tmp.kMR1LFmce3 ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 1 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.N3bZ7wUL5S +++ mktemp ++ local LAST_ERR=/tmp/tmp.ncst11qCIM ++ 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.N3bZ7wUL5S ++ cat /tmp/tmp.ncst11qCIM ++ rm /tmp/tmp.N3bZ7wUL5S /tmp/tmp.ncst11qCIM ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 2 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.ItGMZt5cjA +++ mktemp ++ local LAST_ERR=/tmp/tmp.Rj5IfEezMa ++ 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.ItGMZt5cjA ++ cat /tmp/tmp.Rj5IfEezMa ++ rm /tmp/tmp.ItGMZt5cjA /tmp/tmp.Rj5IfEezMa ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 3 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.qbUcJHhVA1 +++ mktemp ++ local LAST_ERR=/tmp/tmp.Fhr85ZBU0l ++ 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.qbUcJHhVA1 ++ cat /tmp/tmp.Fhr85ZBU0l ++ rm /tmp/tmp.qbUcJHhVA1 /tmp/tmp.Fhr85ZBU0l ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 4 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.P4RYDUXH43 +++ mktemp ++ local LAST_ERR=/tmp/tmp.VRX2pTlfjv ++ 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.P4RYDUXH43 ++ cat /tmp/tmp.VRX2pTlfjv ++ rm /tmp/tmp.P4RYDUXH43 /tmp/tmp.VRX2pTlfjv ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 5 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.FDDVtL0cl5 +++ mktemp ++ local LAST_ERR=/tmp/tmp.KF9N1oLniz ++ 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.FDDVtL0cl5 ++ cat /tmp/tmp.KF9N1oLniz ++ rm /tmp/tmp.FDDVtL0cl5 /tmp/tmp.KF9N1oLniz ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 6 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.MtARzWSXAf +++ mktemp ++ local LAST_ERR=/tmp/tmp.TRiBScrxnV ++ 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.MtARzWSXAf ++ cat /tmp/tmp.TRiBScrxnV ++ rm /tmp/tmp.MtARzWSXAf /tmp/tmp.TRiBScrxnV ++ return 0 + [[ ready == \r\e\a\d\y ]] + echo .OK .OK + log 'checking if balancer is true after restore' + set +o xtrace [2026-03-10T22:13:22+0000] checking if balancer is true after restore + check_balancer some-name true 10 + local cluster=some-name + local expected=true + local delay=10 + local balancer_running + log 'sleeping for 10 seconds...' + set +o xtrace [2026-03-10T22:13:22+0000] sleeping for 10 seconds... + sleep 10 ++ grep -E -v 'Warning|cfg' ++ run_mongosh 'sh.getBalancerState()' clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local 'command=sh.getBalancerState()' ++ local uri=clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ grep -E 'true|false' ++ local driver=mongodb+srv ++ local suffix=.svc.cluster.local ++ local mongo_flag= +++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.LQ5TflmU4w ++++ mktemp +++ local LAST_ERR=/tmp/tmp.XLAfT4VYIw +++ 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.LQ5TflmU4w +++ cat /tmp/tmp.XLAfT4VYIw +++ rm /tmp/tmp.LQ5TflmU4w /tmp/tmp.XLAfT4VYIw +++ return 0 ++ local client_container=psmdb-client-f6f8c745d-8vbtr ++ [[ clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 == *cfg* ]] ++ replica_set=cfg ++ kubectl_bin exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' +++ mktemp ++ local LAST_OUT=/tmp/tmp.3lQrHkIK5e +++ mktemp ++ local LAST_ERR=/tmp/tmp.8wYG45yMrK ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.3lQrHkIK5e ++ cat /tmp/tmp.8wYG45yMrK ++ rm /tmp/tmp.3lQrHkIK5e /tmp/tmp.8wYG45yMrK ++ return 0 + balancer_running=true + echo -n 'checking if balancer status is true...' checking if balancer status is true...+ [[ true != \t\r\u\e ]] + echo OK OK + log 'disabling balancer' + set +o xtrace [2026-03-10T22:13:35+0000] disabling balancer + kubectl patch psmdb some-name --type=merge -p '{"spec":{"sharding":{"balancer":{"enabled":false}}}}' perconaservermongodb.psmdb.percona.com/some-name patched + check_balancer some-name false 10 + local cluster=some-name + local expected=false + local delay=10 + local balancer_running + log 'sleeping for 10 seconds...' + set +o xtrace [2026-03-10T22:13:37+0000] sleeping for 10 seconds... + sleep 10 ++ run_mongosh 'sh.getBalancerState()' clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local 'command=sh.getBalancerState()' ++ local uri=clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local driver=mongodb+srv ++ local suffix=.svc.cluster.local ++ local mongo_flag= ++ grep -E -v 'Warning|cfg' ++ grep -E 'true|false' +++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.dJICsGw8Yy ++++ mktemp +++ local LAST_ERR=/tmp/tmp.VvrRsbZ2mA +++ 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.dJICsGw8Yy +++ cat /tmp/tmp.VvrRsbZ2mA +++ rm /tmp/tmp.dJICsGw8Yy /tmp/tmp.VvrRsbZ2mA +++ return 0 ++ local client_container=psmdb-client-f6f8c745d-8vbtr ++ [[ clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 == *cfg* ]] ++ replica_set=cfg ++ kubectl_bin exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' +++ mktemp ++ local LAST_OUT=/tmp/tmp.W6U4WUJEXi +++ mktemp ++ local LAST_ERR=/tmp/tmp.tCehvIPZU6 ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.W6U4WUJEXi ++ cat /tmp/tmp.tCehvIPZU6 ++ rm /tmp/tmp.W6U4WUJEXi /tmp/tmp.tCehvIPZU6 ++ return 0 + balancer_running=false + echo -n 'checking if balancer status is false...' checking if balancer status is false...+ [[ false != \f\a\l\s\e ]] + echo OK OK + check_backup_and_restore some-name 1 false + local cluster=some-name + local backup_suffix=1 + local balancer_end_state=false + local backup_name=backup-minio-1 + log 'running backup: backup-minio-1' + set +o xtrace [2026-03-10T22:13:50+0000] running backup: backup-minio-1 + run_backup minio backup-minio-1 + local storage=minio + local backup_name=backup-minio-1 + local type=logical + log 'running backup backup-minio-1' + set +o xtrace [2026-03-10T22:13:50+0000] running backup backup-minio-1 + yq eval '.metadata.name = "backup-minio-1" | .spec.storageName = "minio" | .spec.type = "logical"' /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/balancer/conf/backup-minio.yml + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.Bg2FudR0Zi ++ mktemp + local LAST_ERR=/tmp/tmp.McTDSDXYir + 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.Bg2FudR0Zi perconaservermongodbbackup.psmdb.percona.com/backup-minio-1 created + cat /tmp/tmp.McTDSDXYir + rm /tmp/tmp.Bg2FudR0Zi /tmp/tmp.McTDSDXYir + return 0 + wait_backup backup-minio-1 requested + local backup_name=backup-minio-1 + local target_state=requested + set +o xtrace waiting for backup-minio-1 to reach requested state..OK + log 'checking if balancer is disabled' + set +o xtrace [2026-03-10T22:13:54+0000] checking if balancer is disabled + check_balancer some-name false + local cluster=some-name + local expected=false + local delay=0 + local balancer_running + log 'sleeping for 0 seconds...' + set +o xtrace [2026-03-10T22:13:54+0000] sleeping for 0 seconds... + sleep 0 ++ run_mongosh 'sh.getBalancerState()' clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local 'command=sh.getBalancerState()' ++ local uri=clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local driver=mongodb+srv ++ local suffix=.svc.cluster.local ++ local mongo_flag= ++ grep -E -v 'Warning|cfg' +++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++ grep -E 'true|false' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.qs2EN5fYnH ++++ mktemp +++ local LAST_ERR=/tmp/tmp.Y1f3PqPCMF +++ 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.qs2EN5fYnH +++ cat /tmp/tmp.Y1f3PqPCMF +++ rm /tmp/tmp.qs2EN5fYnH /tmp/tmp.Y1f3PqPCMF +++ return 0 ++ local client_container=psmdb-client-f6f8c745d-8vbtr ++ [[ clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 == *cfg* ]] ++ replica_set=cfg ++ kubectl_bin exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' +++ mktemp ++ local LAST_OUT=/tmp/tmp.traD8MoLIg +++ mktemp ++ local LAST_ERR=/tmp/tmp.nMNxbV1CUg ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.traD8MoLIg ++ cat /tmp/tmp.nMNxbV1CUg ++ rm /tmp/tmp.traD8MoLIg /tmp/tmp.nMNxbV1CUg ++ return 0 + balancer_running=false + echo -n 'checking if balancer status is false...' checking if balancer status is false...+ [[ false != \f\a\l\s\e ]] + echo OK OK + wait_backup backup-minio-1 ready + local backup_name=backup-minio-1 + local target_state=ready + set +o xtrace waiting for backup-minio-1 to reach ready state...............OK + log 'checking if balancer is false after backup' + set +o xtrace [2026-03-10T22:14:26+0000] checking if balancer is false after backup + check_balancer some-name false 10 + local cluster=some-name + local expected=false + local delay=10 + local balancer_running + log 'sleeping for 10 seconds...' + set +o xtrace [2026-03-10T22:14:26+0000] sleeping for 10 seconds... + sleep 10 ++ run_mongosh 'sh.getBalancerState()' clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local 'command=sh.getBalancerState()' ++ grep -E 'true|false' ++ local uri=clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ grep -E -v 'Warning|cfg' ++ local driver=mongodb+srv ++ local suffix=.svc.cluster.local ++ local mongo_flag= +++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.tlkgi78jdu ++++ mktemp +++ local LAST_ERR=/tmp/tmp.KwZCiOq8lQ +++ 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.tlkgi78jdu +++ cat /tmp/tmp.KwZCiOq8lQ +++ rm /tmp/tmp.tlkgi78jdu /tmp/tmp.KwZCiOq8lQ +++ return 0 ++ local client_container=psmdb-client-f6f8c745d-8vbtr ++ [[ clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 == *cfg* ]] ++ replica_set=cfg ++ kubectl_bin exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' +++ mktemp ++ local LAST_OUT=/tmp/tmp.FqwbZVthRU +++ mktemp ++ local LAST_ERR=/tmp/tmp.teJaXMuGcn ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.FqwbZVthRU ++ cat /tmp/tmp.teJaXMuGcn ++ rm /tmp/tmp.FqwbZVthRU /tmp/tmp.teJaXMuGcn ++ return 0 + balancer_running=false + echo -n 'checking if balancer status is false...' checking if balancer status is false...+ [[ false != \f\a\l\s\e ]] + echo OK OK + log 'running restore: restore-backup-minio-1' + set +o xtrace [2026-03-10T22:14:39+0000] running restore: restore-backup-minio-1 + run_restore backup-minio-1 + local backup_name=backup-minio-1 + local restore_file=/mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/balancer/conf/restore.yml + log 'running restore restore-backup-minio-1' + set +o xtrace [2026-03-10T22:14:39+0000] running restore restore-backup-minio-1 + cat /mnt/jenkins/workspace/cloud-psmdb-operator_PR-2219/e2e-tests/balancer/conf/restore.yml + /usr/sbin/sed -e 's/name:/name: restore-backup-minio-1/' + /usr/sbin/sed -e 's/backupName:/backupName: backup-minio-1/' + kubectl_bin apply -f - ++ mktemp + local LAST_OUT=/tmp/tmp.NOIPMBm8xf ++ mktemp + local LAST_ERR=/tmp/tmp.VvExA1H16c + 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.NOIPMBm8xf perconaservermongodbrestore.psmdb.percona.com/restore-backup-minio-1 created + cat /tmp/tmp.VvExA1H16c + rm /tmp/tmp.NOIPMBm8xf /tmp/tmp.VvExA1H16c + return 0 + wait_restore backup-minio-1 some-name requested 0 + local backup_name=backup-minio-1 + local cluster_name=some-name + local target_state=requested + local wait_cluster_consistency=0 + local wait_time=1780 + local ok_if_ready=0 + set +o xtrace Waiting for the psmdb-restore/restore-backup-minio-1 object to be created.OK Waiting psmdb-restore/restore-backup-minio-1 to reach state "requested" .OK after 0 minutes + [[ 0 -eq 1 ]] + log 'checking if balancer is disabled' + set +o xtrace [2026-03-10T22:15:02+0000] checking if balancer is disabled + check_balancer some-name false + local cluster=some-name + local expected=false + local delay=0 + local balancer_running + log 'sleeping for 0 seconds...' + set +o xtrace [2026-03-10T22:15:02+0000] sleeping for 0 seconds... + sleep 0 ++ run_mongosh 'sh.getBalancerState()' clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local 'command=sh.getBalancerState()' ++ local uri=clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local driver=mongodb+srv ++ local suffix=.svc.cluster.local ++ local mongo_flag= ++ grep -E -v 'Warning|cfg' ++ grep -E 'true|false' +++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.QxwmzdIfWl ++++ mktemp +++ local LAST_ERR=/tmp/tmp.7eZicGS7l5 +++ 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.QxwmzdIfWl +++ cat /tmp/tmp.7eZicGS7l5 +++ rm /tmp/tmp.QxwmzdIfWl /tmp/tmp.7eZicGS7l5 +++ return 0 ++ local client_container=psmdb-client-f6f8c745d-8vbtr ++ [[ clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 == *cfg* ]] ++ replica_set=cfg ++ kubectl_bin exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' +++ mktemp ++ local LAST_OUT=/tmp/tmp.Cn17rbchra +++ mktemp ++ local LAST_ERR=/tmp/tmp.F7NVLb2mjw ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.Cn17rbchra ++ cat /tmp/tmp.F7NVLb2mjw ++ rm /tmp/tmp.Cn17rbchra /tmp/tmp.F7NVLb2mjw ++ return 0 + balancer_running=false + echo -n 'checking if balancer status is false...' checking if balancer status is false...+ [[ false != \f\a\l\s\e ]] + echo OK OK + wait_restore backup-minio-1 some-name ready 1 + local backup_name=backup-minio-1 + local cluster_name=some-name + local target_state=ready + local wait_cluster_consistency=1 + local wait_time=1780 + local ok_if_ready=0 + set +o xtrace Waiting for the psmdb-restore/restore-backup-minio-1 object to be created.OK Waiting psmdb-restore/restore-backup-minio-1 to reach state "ready" ..OK after 1 minutes + [[ 1 -eq 1 ]] + wait_cluster_consistency some-name + local cluster_name=some-name + local wait_time=32 + retry=0 + sleep 7 + echo -n 'waiting for cluster readyness' waiting for cluster readyness++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.kCj9OMVjYS +++ mktemp ++ local LAST_ERR=/tmp/tmp.wU7fjqgJOV ++ 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.kCj9OMVjYS ++ cat /tmp/tmp.wU7fjqgJOV ++ rm /tmp/tmp.kCj9OMVjYS /tmp/tmp.wU7fjqgJOV ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 1 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.jaqZD2Oold +++ mktemp ++ local LAST_ERR=/tmp/tmp.OwtvBYw1Eg ++ 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.jaqZD2Oold ++ cat /tmp/tmp.OwtvBYw1Eg ++ rm /tmp/tmp.jaqZD2Oold /tmp/tmp.OwtvBYw1Eg ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 2 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.4GY46IlmfV +++ mktemp ++ local LAST_ERR=/tmp/tmp.vM2eUarimK ++ 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.4GY46IlmfV ++ cat /tmp/tmp.vM2eUarimK ++ rm /tmp/tmp.4GY46IlmfV /tmp/tmp.vM2eUarimK ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 3 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.fZHuDHXEer +++ mktemp ++ local LAST_ERR=/tmp/tmp.i0wa0fRjdn ++ 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.fZHuDHXEer ++ cat /tmp/tmp.i0wa0fRjdn ++ rm /tmp/tmp.fZHuDHXEer /tmp/tmp.i0wa0fRjdn ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 4 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.f8xR8EilsV +++ mktemp ++ local LAST_ERR=/tmp/tmp.2gG40xx788 ++ 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.f8xR8EilsV ++ cat /tmp/tmp.2gG40xx788 ++ rm /tmp/tmp.f8xR8EilsV /tmp/tmp.2gG40xx788 ++ return 0 + [[ error == \r\e\a\d\y ]] + let retry+=1 + '[' 5 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.2w0hGKAbn7 +++ mktemp ++ local LAST_ERR=/tmp/tmp.tXYYc6Cb5Z ++ 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.2w0hGKAbn7 ++ cat /tmp/tmp.tXYYc6Cb5Z ++ rm /tmp/tmp.2w0hGKAbn7 /tmp/tmp.tXYYc6Cb5Z ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 6 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.WTI1Bw0Jet +++ mktemp ++ local LAST_ERR=/tmp/tmp.6mmjbVi77u ++ 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.WTI1Bw0Jet ++ cat /tmp/tmp.6mmjbVi77u ++ rm /tmp/tmp.WTI1Bw0Jet /tmp/tmp.6mmjbVi77u ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 7 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.77RYEiKd8g +++ mktemp ++ local LAST_ERR=/tmp/tmp.kwgImTR9Fy ++ 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.77RYEiKd8g ++ cat /tmp/tmp.kwgImTR9Fy ++ rm /tmp/tmp.77RYEiKd8g /tmp/tmp.kwgImTR9Fy ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 8 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.pxacNiDCG6 +++ mktemp ++ local LAST_ERR=/tmp/tmp.GbJgLWIXHD ++ 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.pxacNiDCG6 ++ cat /tmp/tmp.GbJgLWIXHD ++ rm /tmp/tmp.pxacNiDCG6 /tmp/tmp.GbJgLWIXHD ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 9 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.TE5R1SstXu +++ mktemp ++ local LAST_ERR=/tmp/tmp.5E3NoG0OGq ++ 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.TE5R1SstXu ++ cat /tmp/tmp.5E3NoG0OGq ++ rm /tmp/tmp.TE5R1SstXu /tmp/tmp.5E3NoG0OGq ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 10 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.pA2nBergor +++ mktemp ++ local LAST_ERR=/tmp/tmp.8tO5roqxQm ++ 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.pA2nBergor ++ cat /tmp/tmp.8tO5roqxQm ++ rm /tmp/tmp.pA2nBergor /tmp/tmp.8tO5roqxQm ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 11 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.G8tjW9FIrP +++ mktemp ++ local LAST_ERR=/tmp/tmp.l7oRvVll8c ++ 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.G8tjW9FIrP ++ cat /tmp/tmp.l7oRvVll8c ++ rm /tmp/tmp.G8tjW9FIrP /tmp/tmp.l7oRvVll8c ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 12 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.1O5WShDbmT +++ mktemp ++ local LAST_ERR=/tmp/tmp.5b2vgTvVsj ++ 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.1O5WShDbmT ++ cat /tmp/tmp.5b2vgTvVsj ++ rm /tmp/tmp.1O5WShDbmT /tmp/tmp.5b2vgTvVsj ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 13 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.ag0xiaGaGl +++ mktemp ++ local LAST_ERR=/tmp/tmp.ToF8jfrQjv ++ 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.ag0xiaGaGl ++ cat /tmp/tmp.ToF8jfrQjv ++ rm /tmp/tmp.ag0xiaGaGl /tmp/tmp.ToF8jfrQjv ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 14 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.3LoV2yhRsF +++ mktemp ++ local LAST_ERR=/tmp/tmp.c3x6eJckYg ++ 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.3LoV2yhRsF ++ cat /tmp/tmp.c3x6eJckYg ++ rm /tmp/tmp.3LoV2yhRsF /tmp/tmp.c3x6eJckYg ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 15 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.W9DsUOYog9 +++ mktemp ++ local LAST_ERR=/tmp/tmp.ddcd30VQ4L ++ 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.W9DsUOYog9 ++ cat /tmp/tmp.ddcd30VQ4L ++ rm /tmp/tmp.W9DsUOYog9 /tmp/tmp.ddcd30VQ4L ++ return 0 + [[ initializing == \r\e\a\d\y ]] + let retry+=1 + '[' 16 -ge 32 ']' + echo -n . .+ sleep 10 ++ kubectl_bin get psmdb some-name -o 'jsonpath={.status.state}' +++ mktemp ++ local LAST_OUT=/tmp/tmp.R2vmLcKVJJ +++ mktemp ++ local LAST_ERR=/tmp/tmp.o8fBsvrru5 ++ 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.R2vmLcKVJJ ++ cat /tmp/tmp.o8fBsvrru5 ++ rm /tmp/tmp.R2vmLcKVJJ /tmp/tmp.o8fBsvrru5 ++ return 0 + [[ ready == \r\e\a\d\y ]] + echo .OK .OK + log 'checking if balancer is false after restore' + set +o xtrace [2026-03-10T22:20:04+0000] checking if balancer is false after restore + check_balancer some-name false 10 + local cluster=some-name + local expected=false + local delay=10 + local balancer_running + log 'sleeping for 10 seconds...' + set +o xtrace [2026-03-10T22:20:04+0000] sleeping for 10 seconds... + sleep 10 ++ run_mongosh 'sh.getBalancerState()' clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local 'command=sh.getBalancerState()' ++ local uri=clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ grep -E -v 'Warning|cfg' ++ local driver=mongodb+srv ++ local suffix=.svc.cluster.local ++ local mongo_flag= ++ grep -E 'true|false' +++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.4nJQBFPksc ++++ mktemp +++ local LAST_ERR=/tmp/tmp.tF3WNqIV1N +++ 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.4nJQBFPksc +++ cat /tmp/tmp.tF3WNqIV1N +++ rm /tmp/tmp.4nJQBFPksc /tmp/tmp.tF3WNqIV1N +++ return 0 ++ local client_container=psmdb-client-f6f8c745d-8vbtr ++ [[ clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 == *cfg* ]] ++ replica_set=cfg ++ kubectl_bin exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' +++ mktemp ++ local LAST_OUT=/tmp/tmp.tpUlKBGHwp +++ mktemp ++ local LAST_ERR=/tmp/tmp.TDQFOPGvMS ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.tpUlKBGHwp ++ cat /tmp/tmp.TDQFOPGvMS ++ rm /tmp/tmp.tpUlKBGHwp /tmp/tmp.TDQFOPGvMS ++ return 0 + balancer_running=false + echo -n 'checking if balancer status is false...' checking if balancer status is false...+ [[ false != \f\a\l\s\e ]] + echo OK OK + log 'enabling balancer' + set +o xtrace [2026-03-10T22:20:17+0000] enabling balancer + kubectl patch psmdb some-name --type=merge -p '{"spec":{"sharding":{"balancer":{"enabled":true}}}}' perconaservermongodb.psmdb.percona.com/some-name patched + check_balancer some-name true 10 + local cluster=some-name + local expected=true + local delay=10 + local balancer_running + log 'sleeping for 10 seconds...' + set +o xtrace [2026-03-10T22:20:18+0000] sleeping for 10 seconds... + sleep 10 ++ run_mongosh 'sh.getBalancerState()' clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local 'command=sh.getBalancerState()' ++ local uri=clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 ++ local driver=mongodb+srv ++ local suffix=.svc.cluster.local ++ local mongo_flag= ++ grep -E -v 'Warning|cfg' ++ grep -E 'true|false' +++ kubectl_bin get pods --selector=name=psmdb-client -o 'jsonpath={.items[].metadata.name}' ++++ mktemp +++ local LAST_OUT=/tmp/tmp.uBhTaUbTV5 ++++ mktemp +++ local LAST_ERR=/tmp/tmp.HGVFZrUj5O +++ 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.uBhTaUbTV5 +++ cat /tmp/tmp.HGVFZrUj5O +++ rm /tmp/tmp.uBhTaUbTV5 /tmp/tmp.HGVFZrUj5O +++ return 0 ++ local client_container=psmdb-client-f6f8c745d-8vbtr ++ [[ clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730 == *cfg* ]] ++ replica_set=cfg ++ kubectl_bin exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' +++ mktemp ++ local LAST_OUT=/tmp/tmp.6yP0EW7Tua +++ mktemp ++ local LAST_ERR=/tmp/tmp.o0jij2EXWm ++ local exit_status=0 ++ local timeout=4 +++ seq 0 2 ++ for i in $(seq 0 2) ++ set +e ++ kubectl exec psmdb-client-f6f8c745d-8vbtr -- bash -c 'printf '\''sh.getBalancerState()\n'\'' | mongosh --quiet mongodb+srv://clusterAdmin:clusterAdmin123456@some-name-cfg.balancer-4730.svc.cluster.local/admin?ssl=false\&replicaSet=cfg ' ++ exit_status=0 ++ set -e ++ '[' 0 '!=' 0 -a -n 1 ']' ++ break ++ cat /tmp/tmp.6yP0EW7Tua ++ cat /tmp/tmp.o0jij2EXWm ++ rm /tmp/tmp.6yP0EW7Tua /tmp/tmp.o0jij2EXWm ++ return 0 + balancer_running=false + echo -n 'checking if balancer status is true...' checking if balancer status is true...+ [[ false != \t\r\u\e ]] + echo + log 'Unexpected output from "sh.getBalancerState()": false' + set +o xtrace [2026-03-10T22:20:32+0000] Unexpected output from "sh.getBalancerState()": false + log 'Expected: true' + set +o xtrace [2026-03-10T22:20:32+0000] Expected: true + exit 1