Open hongshaoyang opened 3 months ago
@hongshaoyang did you set the value of paused
(pause: ${var.is_backup_paused}
) to true
or false
? some default values may be absent in the manifest.
@csuzhangxc - it is set to the default, false, that is, scheduled backups are not paused.
some default values may be absent in the manifest.
but that is not expected. this will cause issues with infrastructure-as-code tools like terraform which expect values to not change over time.
specially, for this pause: false
, I tested it on Kubernetes server v1.27.3 and client v1.29.0, I can get it back with -o yaml
.
Can you try it on other versions of server and client?
Our GKE clusters are standardised to be the same version across. So I cannot try it on other versions.
One observation is that after applying the Kube manifest, I also can view the pause: false
field immediately with -o yaml
. But after a while (after the backup was created) the .spec.pause
field became absent.
but that is not expected. this will cause issues with infrastructure-as-code tools like terraform which expect values to not change over time.
One possible method to resolve it may not set these empty values in IaC tools as K8s/Golang-JSON has the omitempty
behavior.
Bug Report
What version of Kubernetes are you using?
Server Version: v1.26.11-gke.1055000
What version of TiDB Operator are you using?
TiDB Operator Version: version.Info{GitVersion:"v1.5.1", GitCommit:"2802a0834c50dab95e5eb4409dfbcc9717330721", GitTreeState:"clean", BuildDate:"2023-10-20T08:13:25Z", GoVersion:"go1.21.3", Compiler:"gc", Platform:"linux/amd64"}
What storage classes exist in the Kubernetes cluster and what are used for PD/TiKV pods?
(irrelevant)
What's the status of the TiDB cluster pods?
(irrelevant)
What did you do?
What did you expect to see?
.spec.pause
is present in kube manifestWhat did you see instead?
.spec.pause
was present after applying the kube manifest. however, after the backup was successfully created at 20:00 UTC, the.spec.pause
field became absent: