Skip to content

fix(cassandra): make initialization wait for usable authentication #1595

Description

@sbaum1994

Describe the bug

On a fresh self-managed install, the Cassandra initialization Job starts after the Cassandra pod reports Ready but before CQL authentication and the native transport consistently accept connections. The first Job pod fails. In repeated clean installs, one or two Job retries were needed before initialization succeeded.

This creates avoidable install flakiness and consumes the Job backoff budget even though Kubernetes reports Cassandra as ready.

Steps or code to reproduce bug

  1. Create a clean local Kubernetes cluster.
  2. Install the self-managed stack with the current Cassandra chart.
  3. Inspect the cassandra-initialize-cluster Job and its pods.

The first attempt reports connection-refused or bad-credentials errors. A later retry normally succeeds without configuration changes.

Expected behavior

The Cassandra readiness contract, or the initialization hook itself, should wait until the native transport accepts the intended credentials before attempting password rotation and schema initialization. A normal fresh install should complete on the first Job attempt.

Additional context

This reproduced across the single-cluster, multi-cluster, LLM, and observability BDD profiles. The migration Job succeeds after the initialization retry, so this is independent of migration SQL content.


By submitting this issue, you agree to follow our code of conduct and our contributing guidelines.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-triageIssue or PR awaiting maintainer triage

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions