• fix(connectors): replicate local-only connectors across the cluster
    Release / version (push) Canceled after 0s
    Release / frontend (push) Canceled after 0s
    Release / linux (amd64) (push) Canceled after 0s
    Release / linux (arm64) (push) Canceled after 0s
    Release / windows (push) Canceled after 0s
    Release / macos (push) Canceled after 0s
    Release / release (push) Canceled after 0s
    Build and Push Docker Image / build-and-push (push) Canceled after 0s

    LastSkywalker released this 2026-06-21 15:35:51 +03:00

    A connector configured while a node was standalone (or auto-created on the
    PVE-LXC node before it joined a cluster) only ever entered that node's local
    SQLite: the CRUD persistUpsert path is Raft-only once clustered, so a
    pre-cluster connector never made it into the replicated log. The Proxmox
    poller is leader-gated and reads the local connectors table, so whenever a
    node that lacked the row became leader it polled nothing — the connector
    froze even though another node owned it.

    Add Replicator.BackfillLocalConnectors and run it from the cluster
    reconciler (not leader-gated): each node re-submits its local connectors via
    CmdConnectorUpsert (forwarded to the leader when a follower; applier dedupes
    by fingerprint), so the row replicates to every peer and ANY leader can poll
    it. The pass latches off after one success to avoid per-cycle log churn;
    connectors added later already replicate directly through persistUpsert.

    Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com
    Claude-Session: https://claude.ai/code/session_01U3LvJu9qZfspPr21TW9ptv

    Downloads