From 65f3b9c09935d845458720f9ce19d719f278db13 Mon Sep 17 00:00:00 2001 From: Richard McDaniel <1130888+rmcdaniel@users.noreply.github.com> Date: Wed, 4 Nov 2026 04:09:20 -0600 Subject: [PATCH] Select Rust SDK 4.11.2 and explain condition wait upgrade limits --- docs/polyglot/rust.md | 13 +++++++++++++ .../current/polyglot/rust.md | 14 ++++++++++++++ i18n/de/source-hashes.json | 2 +- .../current/polyglot/rust.md | 15 +++++++++++++++ i18n/es/source-hashes.json | 2 +- .../current/polyglot/rust.md | 15 +++++++++++++++ i18n/fr/source-hashes.json | 2 +- .../current/polyglot/rust.md | 13 +++++++++++++ i18n/ja/source-hashes.json | 2 +- .../current/polyglot/rust.md | 14 ++++++++++++++ i18n/pt-BR/source-hashes.json | 2 +- .../current/polyglot/rust.md | 14 ++++++++++++++ i18n/uk/source-hashes.json | 2 +- .../current/polyglot/rust.md | 11 +++++++++++ i18n/zh-Hans/source-hashes.json | 2 +- static/stable-releases.json | 2 +- 16 files changed, 117 insertions(+), 8 deletions(-) diff --git a/docs/polyglot/rust.md b/docs/polyglot/rust.md index fc72c5f91de..d0059d0145e 100644 --- a/docs/polyglot/rust.md +++ b/docs/polyglot/rust.md @@ -118,6 +118,19 @@ or a worker minor newer than the server's advertised minor is rejected. The SDK and Server release versions are tracked independently. Their runtime protocol manifests determine compatibility. +## Condition wait deadlines and worker upgrades {#condition-wait-deadlines} + +Rust SDK 4.11.2 measures an ungrouped `wait_condition` timeout from its first +open. When a wake finds the predicate still false, the wait reopens with its +remaining time, so unrelated signals do not extend its deadline. Waits in +`parallel` or `select` groups still reopen with the authored timeout for +compatibility with PHP Server 2.11.8. + +Workers on 4.11.1 or earlier refuse histories that record a shorter reopen +timeout. Keep those runs on workers using 4.11.2 or later during rolling +deployments and rollback. See the +[tagged 4.11.2 compatibility notes](https://github.com/durable-workflow/sdk-rust/blob/4.11.2/CHANGELOG.md#4112). + ## Workflow lists and complete run history {#workflow-lists-and-history} These APIs require Rust SDK **4.6.0 or later**; check `Cargo.lock` because the separate installation tuple above may select an older crate. The [normal installed-package acceptance](https://github.com/durable-workflow/sdk-rust/issues/122#issuecomment-6363352910) verifies three list pages, six history pages, a 128 KiB payload, export/replay and the read-only example against published Server 2.11.0. Offline testing helpers require 4.5.0; these listing/history methods and iterators require 4.6.0. This does not change the selected Server/SDK tuple. diff --git a/i18n/de/docusaurus-plugin-content-docs/current/polyglot/rust.md b/i18n/de/docusaurus-plugin-content-docs/current/polyglot/rust.md index 29a0533b968..716faf4d5dd 100644 --- a/i18n/de/docusaurus-plugin-content-docs/current/polyglot/rust.md +++ b/i18n/de/docusaurus-plugin-content-docs/current/polyglot/rust.md @@ -118,6 +118,20 @@ eine andere Hauptversion oder eine höhere Worker-Nebenversion als die vom Server gemeldete werden abgelehnt. SDK- und Server-Release-Versionen werden unabhängig geführt. Ihre Laufzeit-Protokollmanifeste bestimmen die Kompatibilität. +## Fristen für Bedingungswarteoperationen und Worker-Upgrades {#condition-wait-deadlines} + +Rust SDK 4.11.2 misst das Timeout eines nicht gruppierten `wait_condition` +ab dem ersten Öffnen. Ist das Prädikat beim Aufwachen weiterhin falsch, wird +die Warteoperation mit der verbleibenden Zeit erneut geöffnet. Unabhängige +Signale verlängern ihre Frist daher nicht. Warteoperationen in `parallel`- +oder `select`-Gruppen werden für die Kompatibilität mit PHP Server 2.11.8 +weiterhin mit dem im Code angegebenen Timeout erneut geöffnet. + +Worker mit Version 4.11.1 oder älter lehnen Verläufe ab, die beim erneuten +Öffnen ein kürzeres Timeout aufzeichnen. Halte diese Läufe bei schrittweisen +Deployments und Rollbacks auf Workern mit Version 4.11.2 oder neuer. Siehe die +[Kompatibilitätshinweise zum Tag 4.11.2](https://github.com/durable-workflow/sdk-rust/blob/4.11.2/CHANGELOG.md#4112). + ## Workflow-Listen und vollständiger Laufverlauf {#workflow-lists-and-history} Diese APIs benötigen Rust SDK **4.6.0 oder neuer**. Prüfen Sie `Cargo.lock`, da die separate Installationskombination oben ein älteres Crate wählen kann. Die [Abnahme des normal installierten Pakets](https://github.com/durable-workflow/sdk-rust/issues/122#issuecomment-6363352910) bestätigt drei Listenseiten, sechs Verlaufsseiten, 128 KiB Payload, Export/Replay und das Nur-Lese-Beispiel mit veröffentlichtem Server 2.11.0. Offline-Testhelfer benötigen 4.5.0; diese Listen-/Verlaufsmethoden und Iteratoren benötigen 4.6.0. Die ausgewählte Server/SDK-Kombination bleibt unverändert. diff --git a/i18n/de/source-hashes.json b/i18n/de/source-hashes.json index 54e620e42fb..db720fa97ca 100644 --- a/i18n/de/source-hashes.json +++ b/i18n/de/source-hashes.json @@ -86,7 +86,7 @@ "polyglot/python.md": "9692d88fd2b6144a777a0ffbe95dfa7cbf62329ab279e86472a1c1a0589b6381", "polyglot/runtime-migration.md": "5a78713bb8cb74aea58f6d5d826400d968a405f69c6ff17fdf2f7decb1d14b71", "polyglot/rust-cloud-quickstart.md": "2303434fc9302a81a8381ad4836423ef9952eb3201a4574c432254e3cb68c5f3", - "polyglot/rust.md": "af91b22c93a7fe6833df156371d99bb105740684915bc73af4576f6de2897e10", + "polyglot/rust.md": "a06511434ccd7aab9f6ed317131da9f39a8de0507e69059927cf5abba85f363c", "polyglot/server-api-reference.md": "8bac825f11f7aa3f2a335cf3d1dcdc951219f11d6702e9fe3502d3803fd1e2a5", "polyglot/server-config-reference.md": "6c28075a3245c30d54e4d7578f63519e9ad1e407bd72bf47121e0d055e0f60fc", "polyglot/server-role-topology.md": "3d048f0c6b5f179399622508f51e67fff8aa5a6d5b2492533fc720eeec2c27f2", diff --git a/i18n/es/docusaurus-plugin-content-docs/current/polyglot/rust.md b/i18n/es/docusaurus-plugin-content-docs/current/polyglot/rust.md index 01523f20a02..93a05e06b39 100644 --- a/i18n/es/docusaurus-plugin-content-docs/current/polyglot/rust.md +++ b/i18n/es/docusaurus-plugin-content-docs/current/polyglot/rust.md @@ -65,6 +65,21 @@ Server negocia las cabeceras del protocolo de workers dentro de la versión prin La negociación rechaza las incompatibilidades. Se rechaza una cabecera ausente o malformada, otra versión principal o una versión menor del worker superior a la anunciada por el servidor. Las versiones del SDK y de Server se gestionan por separado. Sus manifiestos de protocolo en runtime determinan la compatibilidad. +## Plazos de espera de condiciones y actualización de workers {#condition-wait-deadlines} + +El SDK Rust 4.11.2 mide el timeout de un `wait_condition` fuera de un grupo +desde su primera apertura. Si un despertar encuentra el predicado todavía +falso, la espera se vuelve a abrir con el tiempo restante, por lo que las +señales ajenas no alargan su plazo. Las esperas en grupos `parallel` o +`select` siguen abriéndose de nuevo con el timeout definido en el código para +mantener la compatibilidad con PHP Server 2.11.8. + +Los workers con la versión 4.11.1 o anterior rechazan los historiales que +registran un timeout menor al volver a abrir la espera. Mantén esas +ejecuciones en workers con la versión 4.11.2 o posterior durante los +despliegues graduales y las reversiones. Consulta las +[notas de compatibilidad de la etiqueta 4.11.2](https://github.com/durable-workflow/sdk-rust/blob/4.11.2/CHANGELOG.md#4112). + ## Listas de workflows e historial completo de una ejecución {#workflow-lists-and-history} Estas API requieren Rust SDK **4.6.0 o posterior**; revise `Cargo.lock`, pues la combinación de instalación anterior puede seleccionar un crate más antiguo. La [aceptación del paquete instalado normalmente](https://github.com/durable-workflow/sdk-rust/issues/122#issuecomment-6363352910) verifica tres páginas de lista, seis de historial, un payload de 128 KiB, exportación/reproducción y el ejemplo de solo lectura con Server 2.11.0 publicado. Las pruebas sin servidor requieren 4.5.0; estos métodos e iteradores de listas/historial requieren 4.6.0. La combinación seleccionada de Server/SDK no cambia. diff --git a/i18n/es/source-hashes.json b/i18n/es/source-hashes.json index 54e620e42fb..db720fa97ca 100644 --- a/i18n/es/source-hashes.json +++ b/i18n/es/source-hashes.json @@ -86,7 +86,7 @@ "polyglot/python.md": "9692d88fd2b6144a777a0ffbe95dfa7cbf62329ab279e86472a1c1a0589b6381", "polyglot/runtime-migration.md": "5a78713bb8cb74aea58f6d5d826400d968a405f69c6ff17fdf2f7decb1d14b71", "polyglot/rust-cloud-quickstart.md": "2303434fc9302a81a8381ad4836423ef9952eb3201a4574c432254e3cb68c5f3", - "polyglot/rust.md": "af91b22c93a7fe6833df156371d99bb105740684915bc73af4576f6de2897e10", + "polyglot/rust.md": "a06511434ccd7aab9f6ed317131da9f39a8de0507e69059927cf5abba85f363c", "polyglot/server-api-reference.md": "8bac825f11f7aa3f2a335cf3d1dcdc951219f11d6702e9fe3502d3803fd1e2a5", "polyglot/server-config-reference.md": "6c28075a3245c30d54e4d7578f63519e9ad1e407bd72bf47121e0d055e0f60fc", "polyglot/server-role-topology.md": "3d048f0c6b5f179399622508f51e67fff8aa5a6d5b2492533fc720eeec2c27f2", diff --git a/i18n/fr/docusaurus-plugin-content-docs/current/polyglot/rust.md b/i18n/fr/docusaurus-plugin-content-docs/current/polyglot/rust.md index 900632a9f77..12509be4a35 100644 --- a/i18n/fr/docusaurus-plugin-content-docs/current/polyglot/rust.md +++ b/i18n/fr/docusaurus-plugin-content-docs/current/polyglot/rust.md @@ -122,6 +122,21 @@ celle annoncée par Server est refusée. Les versions de publication SDK et Server sont suivies indépendamment. Leurs manifestes de protocole runtime déterminent la compatibilité. +## Échéances des attentes de condition et mise à niveau des workers {#condition-wait-deadlines} + +Le SDK Rust 4.11.2 mesure le délai d’un `wait_condition` hors groupe depuis +sa première ouverture. Si le prédicat reste faux au réveil, l’attente est +rouverte avec le temps restant, de sorte que les signaux sans rapport avec la +condition ne repoussent pas son échéance. Les attentes dans un groupe +`parallel` ou `select` sont toujours rouvertes avec le délai défini dans le +code pour rester compatibles avec PHP Server 2.11.8. + +Les workers en version 4.11.1 ou antérieure refusent les historiques qui +enregistrent un délai de réouverture plus court. Gardez ces exécutions sur des +workers en version 4.11.2 ou ultérieure pendant les déploiements progressifs +et les retours en arrière. Consultez les +[notes de compatibilité du tag 4.11.2](https://github.com/durable-workflow/sdk-rust/blob/4.11.2/CHANGELOG.md#4112). + ## Listes de workflows et historique complet d’une exécution {#workflow-lists-and-history} Ces API nécessitent Rust SDK **4.6.0 ou ultérieur** ; vérifiez `Cargo.lock`, car la combinaison d’installation précédente peut choisir un crate plus ancien. L’[acceptation du paquet installé normalement](https://github.com/durable-workflow/sdk-rust/issues/122#issuecomment-6363352910) vérifie trois pages de liste, six d’historique, un payload de 128 KiB, export/replay et l’exemple en lecture seule avec Server 2.11.0 publié. Les outils de test hors ligne nécessitent 4.5.0 ; ces méthodes et itérateurs de liste/historique nécessitent 4.6.0. La combinaison Server/SDK sélectionnée reste inchangée. diff --git a/i18n/fr/source-hashes.json b/i18n/fr/source-hashes.json index 54e620e42fb..db720fa97ca 100644 --- a/i18n/fr/source-hashes.json +++ b/i18n/fr/source-hashes.json @@ -86,7 +86,7 @@ "polyglot/python.md": "9692d88fd2b6144a777a0ffbe95dfa7cbf62329ab279e86472a1c1a0589b6381", "polyglot/runtime-migration.md": "5a78713bb8cb74aea58f6d5d826400d968a405f69c6ff17fdf2f7decb1d14b71", "polyglot/rust-cloud-quickstart.md": "2303434fc9302a81a8381ad4836423ef9952eb3201a4574c432254e3cb68c5f3", - "polyglot/rust.md": "af91b22c93a7fe6833df156371d99bb105740684915bc73af4576f6de2897e10", + "polyglot/rust.md": "a06511434ccd7aab9f6ed317131da9f39a8de0507e69059927cf5abba85f363c", "polyglot/server-api-reference.md": "8bac825f11f7aa3f2a335cf3d1dcdc951219f11d6702e9fe3502d3803fd1e2a5", "polyglot/server-config-reference.md": "6c28075a3245c30d54e4d7578f63519e9ad1e407bd72bf47121e0d055e0f60fc", "polyglot/server-role-topology.md": "3d048f0c6b5f179399622508f51e67fff8aa5a6d5b2492533fc720eeec2c27f2", diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/polyglot/rust.md b/i18n/ja/docusaurus-plugin-content-docs/current/polyglot/rust.md index 9a487848628..04b5ae67de1 100644 --- a/i18n/ja/docusaurus-plugin-content-docs/current/polyglot/rust.md +++ b/i18n/ja/docusaurus-plugin-content-docs/current/polyglot/rust.md @@ -65,6 +65,19 @@ Server はメジャー `1` 内で Worker プロトコルヘッダーをネゴシ ネゴシエーションは安全側に失敗します。ヘッダーの欠落・不正、異なるメジャー、Server が広告するマイナーより新しい Worker マイナーは拒否します。SDK と Server のリリースバージョンは独立に管理します。互換性はランタイムのプロトコルマニフェストで決まります。 +## 条件待機の期限と Worker のアップグレード {#condition-wait-deadlines} + +Rust SDK 4.11.2 は、グループに含まれない `wait_condition` のタイムアウトを +最初に待機を開いた時点から計算します。起床時に述語がまだ偽であれば、残り +時間で待機を再度開くため、無関係なシグナルによって期限が延びることは +ありません。PHP Server 2.11.8 との互換性のため、`parallel` や `select` +グループ内の待機は、引き続きコードで指定したタイムアウトで再度開きます。 + +4.11.1 以前の Worker は、再度開く際のタイムアウトが短くなった履歴を +拒否します。ローリングデプロイやロールバックの際も、該当する実行は +4.11.2 以降の Worker で処理してください。 +[4.11.2 タグの互換性に関する注記](https://github.com/durable-workflow/sdk-rust/blob/4.11.2/CHANGELOG.md#4112)を参照してください。 + ## ワークフロー一覧と実行の全履歴 {#workflow-lists-and-history} この API には Rust SDK **4.6.0 以降**が必要です。上の独立したインストール構成は古い crate を選ぶ場合があるため、`Cargo.lock` を確認してください。[通常インストールしたパッケージの受け入れ検証](https://github.com/durable-workflow/sdk-rust/issues/122#issuecomment-6363352910)では、公開 Server 2.11.0 に対して一覧3ページ、履歴6ページ、128 KiB payload、エクスポート/replay、読み取り専用の例を確認しています。オフラインテストの補助 API は4.5.0、ここで扱う一覧/履歴メソッドとイテレーターは4.6.0が必要です。選択済み Server/SDK 構成は変えません。 diff --git a/i18n/ja/source-hashes.json b/i18n/ja/source-hashes.json index 54e620e42fb..db720fa97ca 100644 --- a/i18n/ja/source-hashes.json +++ b/i18n/ja/source-hashes.json @@ -86,7 +86,7 @@ "polyglot/python.md": "9692d88fd2b6144a777a0ffbe95dfa7cbf62329ab279e86472a1c1a0589b6381", "polyglot/runtime-migration.md": "5a78713bb8cb74aea58f6d5d826400d968a405f69c6ff17fdf2f7decb1d14b71", "polyglot/rust-cloud-quickstart.md": "2303434fc9302a81a8381ad4836423ef9952eb3201a4574c432254e3cb68c5f3", - "polyglot/rust.md": "af91b22c93a7fe6833df156371d99bb105740684915bc73af4576f6de2897e10", + "polyglot/rust.md": "a06511434ccd7aab9f6ed317131da9f39a8de0507e69059927cf5abba85f363c", "polyglot/server-api-reference.md": "8bac825f11f7aa3f2a335cf3d1dcdc951219f11d6702e9fe3502d3803fd1e2a5", "polyglot/server-config-reference.md": "6c28075a3245c30d54e4d7578f63519e9ad1e407bd72bf47121e0d055e0f60fc", "polyglot/server-role-topology.md": "3d048f0c6b5f179399622508f51e67fff8aa5a6d5b2492533fc720eeec2c27f2", diff --git a/i18n/pt-BR/docusaurus-plugin-content-docs/current/polyglot/rust.md b/i18n/pt-BR/docusaurus-plugin-content-docs/current/polyglot/rust.md index 4fee3822b15..6e986c7b37d 100644 --- a/i18n/pt-BR/docusaurus-plugin-content-docs/current/polyglot/rust.md +++ b/i18n/pt-BR/docusaurus-plugin-content-docs/current/polyglot/rust.md @@ -117,6 +117,20 @@ major diferente ou uma minor de worker mais nova que a minor anunciada pelo servidor é rejeitada. Versões de release do SDK e Server são controladas independentemente. Seus manifestos de protocolo em runtime determinam a compatibilidade. +## Prazos de espera de condições e atualização de workers {#condition-wait-deadlines} + +O SDK Rust 4.11.2 mede o timeout de um `wait_condition` fora de um grupo +desde sua primeira abertura. Quando um despertar encontra o predicado ainda +falso, a espera é reaberta com o tempo restante, de modo que sinais sem +relação com a condição não prolongam seu prazo. Esperas em grupos `parallel` +ou `select` continuam sendo reabertas com o timeout definido no código para +manter a compatibilidade com PHP Server 2.11.8. + +Workers na versão 4.11.1 ou anterior recusam históricos que registram um +timeout menor na reabertura. Mantenha essas execuções em workers com a versão +4.11.2 ou posterior durante implantações graduais e reversões. Veja as +[notas de compatibilidade da tag 4.11.2](https://github.com/durable-workflow/sdk-rust/blob/4.11.2/CHANGELOG.md#4112). + ## Listas de workflows e histórico completo de uma execução {#workflow-lists-and-history} Estas APIs exigem Rust SDK **4.6.0 ou posterior**; confira `Cargo.lock`, pois a combinação de instalação acima pode selecionar um crate mais antigo. A [aceitação do pacote instalado normalmente](https://github.com/durable-workflow/sdk-rust/issues/122#issuecomment-6363352910) verifica três páginas de lista, seis de histórico, payload de 128 KiB, exportação/replay e o exemplo somente leitura com Server 2.11.0 publicado. Testes sem servidor exigem 4.5.0; estes métodos e iteradores de lista/histórico exigem 4.6.0. A combinação selecionada Server/SDK não muda. diff --git a/i18n/pt-BR/source-hashes.json b/i18n/pt-BR/source-hashes.json index 54e620e42fb..db720fa97ca 100644 --- a/i18n/pt-BR/source-hashes.json +++ b/i18n/pt-BR/source-hashes.json @@ -86,7 +86,7 @@ "polyglot/python.md": "9692d88fd2b6144a777a0ffbe95dfa7cbf62329ab279e86472a1c1a0589b6381", "polyglot/runtime-migration.md": "5a78713bb8cb74aea58f6d5d826400d968a405f69c6ff17fdf2f7decb1d14b71", "polyglot/rust-cloud-quickstart.md": "2303434fc9302a81a8381ad4836423ef9952eb3201a4574c432254e3cb68c5f3", - "polyglot/rust.md": "af91b22c93a7fe6833df156371d99bb105740684915bc73af4576f6de2897e10", + "polyglot/rust.md": "a06511434ccd7aab9f6ed317131da9f39a8de0507e69059927cf5abba85f363c", "polyglot/server-api-reference.md": "8bac825f11f7aa3f2a335cf3d1dcdc951219f11d6702e9fe3502d3803fd1e2a5", "polyglot/server-config-reference.md": "6c28075a3245c30d54e4d7578f63519e9ad1e407bd72bf47121e0d055e0f60fc", "polyglot/server-role-topology.md": "3d048f0c6b5f179399622508f51e67fff8aa5a6d5b2492533fc720eeec2c27f2", diff --git a/i18n/uk/docusaurus-plugin-content-docs/current/polyglot/rust.md b/i18n/uk/docusaurus-plugin-content-docs/current/polyglot/rust.md index 4e9998311c4..630e0130275 100644 --- a/i18n/uk/docusaurus-plugin-content-docs/current/polyglot/rust.md +++ b/i18n/uk/docusaurus-plugin-content-docs/current/polyglot/rust.md @@ -118,6 +118,20 @@ Rust SDK 3.5.0 за замовчуванням надсилає Версії випусків SDK та Server відстежуються незалежно. Їхня сумісність визначається protocol manifests runtime. +## Строки очікування умови та оновлення worker {#condition-wait-deadlines} + +Rust SDK 4.11.2 відлічує тайм-аут для `wait_condition` поза групою від першого +відкриття очікування. Якщо після пробудження предикат залишається хибним, +очікування відкривається повторно з часом, що залишився, тому сторонні signal +не подовжують строк очікування. Очікування в групах `parallel` або `select` +і далі відкриваються повторно з тайм-аутом, заданим у коді, для сумісності з +PHP Server 2.11.8. + +Worker із версією 4.11.1 або старішою відхиляють історії, у яких записано +коротший тайм-аут повторного відкриття. Під час поступового розгортання та +відкочування залишайте такі запуски на worker із версією 4.11.2 або новішою. +Див. [примітки щодо сумісності для тегу 4.11.2](https://github.com/durable-workflow/sdk-rust/blob/4.11.2/CHANGELOG.md#4112). + ## Списки workflow та повна історія запуску {#workflow-lists-and-history} Ці API потребують Rust SDK **4.6.0 або новішого**. Перевіряйте `Cargo.lock`: окрема комбінація встановлення вище може вибрати старіший crate. [Перевірка звичайного встановлення](https://github.com/durable-workflow/sdk-rust/issues/122#issuecomment-6363352910) підтверджує три сторінки списку, шість сторінок історії, payload 128 KiB, експорт/replay і приклад лише для читання з опублікованим Server 2.11.0. Офлайн-тести потребують 4.5.0; ці методи та ітератори списку/історії — 4.6.0. Вибрана комбінація Server/SDK не змінюється. diff --git a/i18n/uk/source-hashes.json b/i18n/uk/source-hashes.json index 54e620e42fb..db720fa97ca 100644 --- a/i18n/uk/source-hashes.json +++ b/i18n/uk/source-hashes.json @@ -86,7 +86,7 @@ "polyglot/python.md": "9692d88fd2b6144a777a0ffbe95dfa7cbf62329ab279e86472a1c1a0589b6381", "polyglot/runtime-migration.md": "5a78713bb8cb74aea58f6d5d826400d968a405f69c6ff17fdf2f7decb1d14b71", "polyglot/rust-cloud-quickstart.md": "2303434fc9302a81a8381ad4836423ef9952eb3201a4574c432254e3cb68c5f3", - "polyglot/rust.md": "af91b22c93a7fe6833df156371d99bb105740684915bc73af4576f6de2897e10", + "polyglot/rust.md": "a06511434ccd7aab9f6ed317131da9f39a8de0507e69059927cf5abba85f363c", "polyglot/server-api-reference.md": "8bac825f11f7aa3f2a335cf3d1dcdc951219f11d6702e9fe3502d3803fd1e2a5", "polyglot/server-config-reference.md": "6c28075a3245c30d54e4d7578f63519e9ad1e407bd72bf47121e0d055e0f60fc", "polyglot/server-role-topology.md": "3d048f0c6b5f179399622508f51e67fff8aa5a6d5b2492533fc720eeec2c27f2", diff --git a/i18n/zh-Hans/docusaurus-plugin-content-docs/current/polyglot/rust.md b/i18n/zh-Hans/docusaurus-plugin-content-docs/current/polyglot/rust.md index dd88da5c79c..24276fd3df0 100644 --- a/i18n/zh-Hans/docusaurus-plugin-content-docs/current/polyglot/rust.md +++ b/i18n/zh-Hans/docusaurus-plugin-content-docs/current/polyglot/rust.md @@ -65,6 +65,17 @@ Server 在主版本 `1` 内协商 Worker 协议头:公布 `1.N` 的 Server 仅 协商默认拒绝不合规请求。缺失或格式错误的头、不同主版本,或高于 Server 公布次版本的 Worker 次版本都会被拒绝。SDK 和 Server 发布版本独立跟踪,由运行时协议清单决定兼容性。 +## 条件等待期限与 Worker 升级 {#condition-wait-deadlines} + +Rust SDK 4.11.2 从未分组的 `wait_condition` 首次打开时开始计算超时。 +如果唤醒时谓词仍为假,等待会以剩余时间重新打开,因此无关信号不会延长 +等待期限。为兼容 PHP Server 2.11.8,`parallel` 或 `select` 组中的等待 +仍使用代码中原先指定的超时重新打开。 + +使用 4.11.1 或更早版本的 Worker 会拒绝重开超时缩短的历史。在滚动部署 +和回滚期间,请继续使用 4.11.2 或更高版本的 Worker 处理这些运行。参阅 +[4.11.2 标签中的兼容性说明](https://github.com/durable-workflow/sdk-rust/blob/4.11.2/CHANGELOG.md#4112)。 + ## 工作流列表与完整运行历史 {#workflow-lists-and-history} 这些 API 要求 Rust SDK **4.6.0 或更新版本**;请检查 `Cargo.lock`,因为上面的独立安装组合可能选择更旧的 crate。[普通安装包验收](https://github.com/durable-workflow/sdk-rust/issues/122#issuecomment-6363352910)已用发布的 Server 2.11.0 验证三页列表、六页历史、128 KiB payload、导出/replay 和只读示例。离线测试辅助 API 要求 4.5.0;这里的列表/历史方法和迭代器要求 4.6.0。这不改变所选 Server/SDK 组合。 diff --git a/i18n/zh-Hans/source-hashes.json b/i18n/zh-Hans/source-hashes.json index 54e620e42fb..db720fa97ca 100644 --- a/i18n/zh-Hans/source-hashes.json +++ b/i18n/zh-Hans/source-hashes.json @@ -86,7 +86,7 @@ "polyglot/python.md": "9692d88fd2b6144a777a0ffbe95dfa7cbf62329ab279e86472a1c1a0589b6381", "polyglot/runtime-migration.md": "5a78713bb8cb74aea58f6d5d826400d968a405f69c6ff17fdf2f7decb1d14b71", "polyglot/rust-cloud-quickstart.md": "2303434fc9302a81a8381ad4836423ef9952eb3201a4574c432254e3cb68c5f3", - "polyglot/rust.md": "af91b22c93a7fe6833df156371d99bb105740684915bc73af4576f6de2897e10", + "polyglot/rust.md": "a06511434ccd7aab9f6ed317131da9f39a8de0507e69059927cf5abba85f363c", "polyglot/server-api-reference.md": "8bac825f11f7aa3f2a335cf3d1dcdc951219f11d6702e9fe3502d3803fd1e2a5", "polyglot/server-config-reference.md": "6c28075a3245c30d54e4d7578f63519e9ad1e407bd72bf47121e0d055e0f60fc", "polyglot/server-role-topology.md": "3d048f0c6b5f179399622508f51e67fff8aa5a6d5b2492533fc720eeec2c27f2", diff --git a/static/stable-releases.json b/static/stable-releases.json index 5977d1cd4c5..4b9224942e6 100644 --- a/static/stable-releases.json +++ b/static/stable-releases.json @@ -7,7 +7,7 @@ "helm-chart": "1.0.3", "sdk-php": "3.9.4", "sdk-python": "2.14.0", - "sdk-rust": "4.11.0", + "sdk-rust": "4.11.2", "server": "3.0.5", "waterline": "2.14.0", "workflow": "2.20.2"