Skip to content

decide: ring-redirect a pool session whose host is between replicas #5267

Open

Description

@EmilienM

User Story

I work on OpenShell's gateway HA session placement (#4223) and need this edge settled so shared-supervisor rollouts keep sessions on the replica serving their supervisor.

Description

Under supervisor_topology: gateway (#5052), a pool sandbox session dials the replica that accepted its host and follows the host when it reattaches elsewhere. When a host stream ends (for example an expiring supervisor token), its sessions prefer their home replica for GATEWAY_HOME_WAIT (5 s), then fall back to dialing the Service. If such a session lands on a replica that is not the ring owner for its sandbox, preferred_peer_redirect redirects it to the ring owner, which is not where its host is or will reattach. The session then sits on a different replica than its supervisor until the host moves again.

Gateway-side pool session placement was deliberately removed in #5052 ("pool sessions will dial their supervisor's gateway directly instead"), so this is a design question rather than a bug report: is the 5-second window plus host-follow enough, or should the gateway stop ring-redirecting sessions that belong to a shared supervisor?

Context

Definition of Done

  • A decision on whether pool sessions should be exempt from ring redirects while hostless and, if so, where that knowledge lives (gateway, supervisor, or both)

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

    state:triage-neededOpened without agent diagnostics and needs triage

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions