docs(pipecat-cloud): clarify that sequential sessions reuse the same process (T-2660) - #1049
Draft
jamsea wants to merge 1 commit into
Draft
docs(pipecat-cloud): clarify that sequential sessions reuse the same process (T-2660)#1049jamsea wants to merge 1 commit into
jamsea wants to merge 1 commit into
Conversation
…process (T-2660) Found while working Daily support ticket T-2660: a customer saw memory grow call after call on a warm Pipecat Cloud instance. Two gaps, both about session isolation: 1. The Session API page said "Different sessions are separate pods and don't share state." That is true for two sessions running at the same time, but it reads as a promise of a fresh process per session. It is not. Split the bullet so the concurrent-session guarantee stays and the sequential-session behavior is stated plainly. 2. The scaling page did not say how to get fresh instances. Added a subsection under "Updating scaling configuration": a min-agents or max-agents change only resizes the pool and does not replace running instances, `pipecat cloud deploy <agent> --force` does, and readyz() takes an instance out of rotation without restarting its process. Also spells out releasing per-session references. Note: draft PR #1028 (T-3090) covers the same underlying finding from the instance-lifecycle angle and adds an "Instance reuse and memory" section to the same page. These edits touch different sections and do not conflict textually, but the two should be deduped before either lands.
Contributor
|
🔍 Mintlify preview for this branch: https://daily-docs-pcc-session-isolation-t2660.mintlify.site |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Found while working Daily support ticket T-2660: a customer saw memory grow call after call on a warm Pipecat Cloud instance.
The gap
Nothing public said that a warm instance which picks up a new session is running the same process that handled the previous session. Worse, the Session API page said the opposite:
That sentence is about routing, and it is true for two sessions running at the same time. But it reads as a promise of a fresh process per session, which is not what happens for sequential sessions on a reused warm instance. The scaling page says an instance "is returned to the pool and can immediately serve another session" and never says the process survives.
What changed
pipecat-cloud/guides/session-api.mdxSplit the "Session scope" bullet in two. The first keeps the real guarantee: two sessions running at the same time are on separate instances, so a request for one never reaches the other. The second says plainly that being routed separately is not the same as getting a fresh process, and links to the new scaling section.
pipecat-cloud/fundamentals/scaling.mdxNew subsection under "Updating scaling configuration" covering:
min-agentsormax-agentschange only resizes the pool. It does not replace the instances you already have.None, close clients, stop tasks and threads).pipecat cloud deploy [agent-name] --force, with a heads-up that in-flight sessions can be cut off.readyz()override for taking one instance out of rotation, and a note that it does not restart the process.Verified against source
Checked on current
mainof each repo rather than from memory:--forceflag sets the force-redeploy input, which creates a new deployment and therefore replaces pods.Note on overlap with #1028
Draft PR #1028 (T-3090) covers the same underlying finding from the instance-lifecycle and
readyz()angle, and adds an "Instance reuse and memory" section toscaling.mdx. These edits touch different sections of that file and do not conflict textually, but there is real overlap in what they explain. The two should be deduped before either one lands. Landing #1028 first and rebasing this onto it is probably cleanest.Draft on purpose: not ready for review, pending that dedupe decision.