Add error code 92008 for apply-on-ACK abandonment of wait-for-SYNCED#328
Open
lawrence-forooghian wants to merge 1 commit intomainfrom
Open
Add error code 92008 for apply-on-ACK abandonment of wait-for-SYNCED#328lawrence-forooghian wants to merge 1 commit intomainfrom
lawrence-forooghian wants to merge 1 commit intomainfrom
Conversation
This is the code that a LiveObjects mutation operation will fail with if the channel enters DETACHED, SUSPENDED, or FAILED whilst waiting for the objects sync state to become SYNCED. See [1]. [1] ably/specification#419
lawrence-forooghian
added a commit
to ably/specification
that referenced
this pull request
Feb 16, 2026
…20e1) The RTO20e wait for the objects sync to reach SYNCED has no failure condition, which means publishAndApply can hang indefinitely if the channel never completes the sync — for example, during a disconnection loop where publish succeeds (ACK received) but the OBJECT_SYNC sequence never finishes. This adds RTO20e1 to fail the operation when the channel enters DETACHED, SUSPENDED, or FAILED. The objects sync requires the channel to be ATTACHED to receive the OBJECT_SYNC sequence (RTO4c), so waiting for sync is essentially waiting for the channel to become attached. The decision of when to give up on that is already established by RTL11: queued presence messages — which are also waiting for the channel to become ATTACHED (RTP16b) — are failed when the channel enters DETACHED, SUSPENDED, or FAILED. We apply the same rule here. The error uses code 92008, in the objects error range in ably-common. Added in [1]. [1] ably/ably-common#328 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
VeskeR
approved these changes
Feb 18, 2026
|
This should also be added to the docs https://github.com/ably/docs/blob/7611b9d585ec56c40c13aa3b0a589a7b12abb2dc/src/pages/docs/platform/errors/codes.mdx#L768 for this page https://faqs.ably.com/ably-error-codes |
Collaborator
Author
Thanks, have updated ably/docs#3161 |
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.
This is the code that a LiveObjects mutation operation will fail with if the channel enters
DETACHED,SUSPENDED, orFAILEDwhilst waiting for the objects sync state to becomeSYNCED. See ably/specification#419.