planetscale / planetscale/vitess-operator

Annotations not being removed on VTTablets

Open
#180 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
372
Forks
102
Avg merge
3d 5h
Merged PRs (30d)
15

Description

When updating annotations for a keyspace:

....
          annotations:
            prometheus.io/path: /metrics
            prometheus.io/port: "15000"
            prometheus.io/scrape: "true"
          backupLocationName: gcs
          cell: useast4b0
          dataVolumeClaimTemplate:
....

to remove:

....
          annotations:
            prometheus.io/path: /metrics
            prometheus.io/scrape: "true"
          backupLocationName: gcs
          cell: useast4b0
          dataVolumeClaimTemplate:
....

The VTTablet pods end up in an inconsistent state and retain the old annotation:

...
  annotations:
....
    drain.planetscale.com/supported: ensure that the tablet is not a master
    planetscale.com/observed-shard-generation: "8"
    prometheus.io/path: /metrics
    prometheus.io/port: "15000"
    prometheus.io/scrape: "true"
...

and even after removing them manually, the operator will try to bring it back:

  annotations:
...
    drain.planetscale.com/supported: ensure that the tablet is not a master
    planetscale.com/observed-shard-generation: "8"
    prometheus.io/path: /metrics
    prometheus.io/scrape: "true"
    rollout.planetscale.com/scheduled: |
      metadata:
        annotations:
          prometheus.io/port: "15000"

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no source files, tests, or entry points. Start by reproducing the keyspace annotation update and trace how the operator builds VTTablet metadata; done means removing an annotation from the keyspace does not leave it on the pod or cause the operator to restore it.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kubernetes
Domain
devops, infrastructure
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.