Skip to content

Make the subscription spec's fake server independent of the default locale - #278

Merged
ghostdogpr merged 1 commit into
mainfrom
bound-hanging-tests
Oct 25, 2026
Merged

ghostdogpr merged 1 commit into
mainfrom
bound-hanging-tests

Conversation

@ghostdogpr

@ghostdogpr ghostdogpr commented Oct 25, 2026 •

Copy link
Copy Markdown
Owner

Fixes the intermittent hang of the unit job in SubscriptionConnectionSpec.

SageConfigSpec sets the default locale to tr-TR for one test, and the suites in a cell run concurrently in one JVM. SubscriptionConnectionSpec's fake server built its SUBSCRIBE confirmations with verb.toLowerCase, so when the two overlapped it replied ssubscrıbe with a dotless ı. Pubsub.decode did not recognize that as a confirmation, and the subscribe waited forever because the spec's ManualScheduler never advances its clock.

The spec now uses Locale.ROOT for every case conversion, as the production code already does. With the default locale forced to tr-TR, the spec hung every time before this change and passes after it.

…ocale

SubscriptionConnectionSpec's fake server built its SUBSCRIBE confirmations with verb.toLowerCase, which uses the default locale.
SageConfigSpec sets the default locale to tr-TR for one test, and suites in a cell share one JVM and run concurrently. When the two
overlapped, the fake server replied "subscrıbe" with a dotless ı, Pubsub.decode did not recognize the confirmation, and the subscribe
waited forever because the spec's ManualScheduler never advances its clock. This made the unit job hang intermittently on CI.

Use Locale.ROOT for every case conversion in the spec, as the production code already does.
@ghostdogpr ghostdogpr changed the title Fail a hung SubscriptionConnectionSpec test instead of blocking the run Make the subscription spec's fake server independent of the default locale Oct 25, 2026
@ghostdogpr
ghostdogpr merged commit 5e39b69 into main Oct 25, 2026
11 checks passed
@ghostdogpr
ghostdogpr deleted the bound-hanging-tests branch October 25, 2026 10:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant