[FEATURE REQ] Port hub region caching per partition level from .NET SDK
Maintainer thường phản hồi trong vòng 1 ngày
Đánh giá
Issue này chưa được đánh giá.
Mô tả
Summary
Port the per-partition hub region caching feature from .NET SDK (PR Azure/azure-cosmos-dotnet-v3#5648) to the Java SDK.
Background
On single-master accounts encountering repeated 404/1002 (ReadSessionNotAvailable) errors, the SDK should discover the hub region via a 403/3 (WriteForbidden) discovery chain and cache the result per partition. Subsequent requests to the same partition route directly to the cached hub, eliminating redundant discovery round-trips.
Key Behavior
- After 2 consecutive 404/1002 on a single-master account, set \x-ms-cosmos-hub-region-processing-only\ header
- Non-hub regions return 403/3 (WriteForbidden) — SDK retries to next region (discovery chain)
- Hub region responds with 200 OK — SDK caches hub URI for that partition
- Future requests route directly to cached hub (warm path)
- Works for both PPAF and non-PPAF accounts
- Must be gated by a feature flag / environment variable (per Debdatta's guidance)
.NET Reference
- PR: https://github.com/Azure/azure-cosmos-dotnet-v3/pull/5648
- Key files: ClientRetryPolicy.cs, GlobalPartitionEndpointManagerCore.cs, GatewayStoreModel.cs
Java SDK Files Likely Affected
- \ClientRetryPolicy.java\
- \GlobalPartitionEndpointManager.java\ / related partition failover classes
- \RxGatewayStoreModel.java\
- \Configs.java\ (feature flag)
Acceptance Criteria
- Hub region discovery via 403/3 chain after 2x 404/1002 on single-master
- Per-partition hub region caching (warm path skips discovery)
- Feature flag gate (environment variable, disabled by default initially)
- Works for both PPAF and non-PPAF accounts
- Unit tests + integration tests
- Ngôn ngữ chính
- Java
- Star
- 2.6k
- Fork
- 2.2k
- Merge trung bình
- 1 ngày 22 giờ
- Pull request đã merge (30 ngày)
- 220
Chuẩn bị môi trường
Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của Azure/azure-sdk-for-java
-
mgmt, in track 1 migration guide, call out that file-based authentication method is not recommendedCó thể làm lại được Pull request cho issue này đã bị đóng mà không được merge. Đang mởAzure.Identity
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 74/100
Azure/azure-sdk-for-java#48894 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
needs-triage
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 42/100
Azure/azure-sdk-for-java#50905 · 1 bình luận · 1 reaction ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[BUG] - Handler.close livelocks on FAIL_NON_SERIALIZED while holding the ReactorConnection monitorCó thể đã có người làm @conniey đã nhận 2 ngày trước. Đang mởAzure.Core.AMQP Client customer-reported needs-team-attention question
Azure/azure-sdk-for-java#50879 · 2 bình luận · 1 reaction · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[Design] Support External Evaluation Policy (Invoke) in management SDKsCó thể đã có người làm @weidongxu-microsoft đã nhận 7 ngày trước. Đang mở
Azure/azure-sdk-for-java#50818 · 2 reaction · 2 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[FEATURE REQ] ChangeFeedProcessor event handler fully reactive implementationCó thể đã có người làm @FabianMeiswinkel đã nhận 8 ngày trước. Đang mởClient Cosmos customer-reported feature-request needs-team-attention Service Attention
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 12/100
Azure/azure-sdk-for-java#50758 · 3 bình luận · 1 reaction · 2 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của Azure/azure-sdk-for-java
Issue tương tự
-
Optimize consumer version heatmap aggregation to avoid repeated scansCó thể đã có người làm @praykaria31 đã nhận hôm nay. Đang mởtype/enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Apicurio/apicurio-registry#10662 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
a:false-positive
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 77/100
Maintainer thường phản hồi trong vòng 1 ngày
-
status: waiting-for-triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
spring-projects/spring-boot#52347 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
bug untriaged
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
opensearch-project/opensearch-migrations#3480 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
[Bug] Certificate expiry sorting can reverse UTC order across a viewer daylight-saving gapCó thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
apache/rocketmq-dashboard#7318 ·
Maintainer thường phản hồi trong vòng 3 ngày