Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions docs/deployment.md
Original file line number Diff line number Diff line change
Expand Up @@ -308,6 +308,8 @@ Check the installed SDK's arithmetic rather than copying a timeout from another

PHP SDK **3.2.0** ordinary control-plane `Client` calls do not supply a default total HTTP deadline; see the [verified timeout gap in PHP #203](https://github.com/durable-workflow/sdk-php/issues/203). Configure a bounded HTTP client for those calls and preserve the original caller deadline. A Worker poll timeout is not a general bound on every SDK request.

PHP SDK **3.4.0 or newer** adds a **60-second default total deadline** for SDK-owned ordinary control HTTP requests; configure a finite `requestTimeoutSeconds` value of at least `0.001` seconds. These SDK-owned timeouts carry `reason=request_timeout` and `status=0`. The SDK makes one attempt: a timed-out mutation may already have been accepted, so inspect its original identity/outcome before resubmitting. Injected clients/transports keep their own timeout policy and cannot be combined with this option. This per-request bound does not replace worker long-poll, payload-transfer or workflow/caller deadlines. Check `composer.lock`; this feature minimum does not update the selected installation tuple. See [HTTP client setup](https://php.durable-workflow.com/getting-started/client-setup/) and the [normal installed 3.4.0 receipt](https://github.com/durable-workflow/sdk-php/issues/203#issuecomment-6363909756).

### Verified short-poll example {#verified-poll-timeout-example}

An isolated test used published Python SDK **2.9.0**, PHP Server **2.11.0** and Nginx **1.30.5**, with an empty task queue. Both cells kept the SDK poll duration at **3 seconds**, HTTPX connect/read/write/pool timeouts at **8 seconds**, and an outer caller bound of **10 seconds**. Only Nginx's upstream read timeout changed:
Expand Down
2 changes: 2 additions & 0 deletions i18n/de/docusaurus-plugin-content-docs/current/deployment.md
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,8 @@ Prüfen Sie die Berechnung des installierten SDKs. Die unten verifizierte Python

Normale Control-Plane-Aufrufe mit `Client` im PHP SDK **3.2.0** geben keine standardmäßige HTTP-Gesamtfrist vor; siehe die [verifizierte Timeout-Lücke PHP #203](https://github.com/durable-workflow/sdk-php/issues/203). Konfigurieren Sie dafür einen begrenzten HTTP-Client und erhalten Sie die ursprüngliche Aufruferfrist. Ein Worker-Poll-Timeout begrenzt nicht jede SDK-Anfrage.

PHP SDK **3.4.0 oder neuer** ergänzt für gewöhnliche Control-HTTP-Anfragen des SDK-eigenen Transports ein **standardmäßiges Gesamtzeitlimit von 60 Sekunden**; setzen Sie `requestTimeoutSeconds` auf einen endlichen Wert von mindestens `0.001` Sekunden. Diese SDK-eigenen Zeitüberschreitungen tragen `reason=request_timeout` und `status=0`. Das SDK versucht einmal: Eine Änderung mit Timeout kann bereits angenommen sein; prüfen Sie ursprüngliche Identität/Ergebnis vor erneutem Senden. Injizierte Clients/Transporte behalten ihre Timeout-Policy und lassen sich nicht mit dieser Option kombinieren. Die Anfragegrenze ersetzt keine Worker-Long-Poll-, Payload-Transfer- oder Workflow/Aufrufer-Fristen. Prüfen Sie `composer.lock`: Diese Mindestversion ändert nicht die gewählte Installationskombination. Siehe [HTTP-Einrichtung](https://php.durable-workflow.com/getting-started/client-setup/) und [normale Installationsabnahme 3.4.0](https://github.com/durable-workflow/sdk-php/issues/203#issuecomment-6363909756).

### Verifiziertes Beispiel mit kurzem Poll {#verified-poll-timeout-example}

Ein isolierter Test nutzte veröffentlichte Python SDK **2.9.0**, PHP Server **2.11.0** und Nginx **1.30.5** mit leerer Warteschlange. Beide Zellen behielten **3 Sekunden** Poll-Dauer, **8 Sekunden** HTTPX connect/read/write/pool und **10 Sekunden** äußere Aufruferfrist. Nur Nginx’ Upstream-Lese-Timeout änderte sich:
Expand Down
2 changes: 1 addition & 1 deletion i18n/de/source-hashes.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"defining-workflows/workflow-id.md": "91b94211e2f8f405895ad82cfe2ef9baadb7a2cbd06e9c1e7aa6362231e0d424",
"defining-workflows/workflow-status.md": "8e8cb27ff44c890d489d89bf166375acfdfaecabd990a2235e106fab1592d529",
"defining-workflows/workflows.md": "f467bc73de32aa5d722c61ce085065460382ae7dd44cea4625847d9fcdc4c97c",
"deployment.md": "2f272a9c37aade0a8bd7ab5ab388a9aaef9b9d4a9ae387ca303bf67e6c860d97",
"deployment.md": "aa76a132fd78a27428dd9b8d9ab6f81aa8661b3f302eb799877688b77f508596",
"failures-and-recovery.md": "318f0cc183d26539c7d5b6bdf791429bb874b793b81cff4c6094ef1d11a796b2",
"features/activity-execution-model.md": "e8c37520ae46a7efb30438f4fc06bf893c1df430cb1f92c48963697adaf09082",
"features/cancel-and-terminate.md": "c678fc7a0c9b11f0e1bee295aff259de9803219c0aa6769fb801622799e7deb1",
Expand Down
2 changes: 2 additions & 0 deletions i18n/es/docusaurus-plugin-content-docs/current/deployment.md
Original file line number Diff line number Diff line change
Expand Up @@ -284,6 +284,8 @@ Compruebe el cálculo del SDK instalado. En la versión de Python verificada aba

Las llamadas ordinarias de control con `Client` en PHP SDK **3.2.0** no proporcionan un plazo HTTP total predeterminado; véase el [defecto verificado PHP #203](https://github.com/durable-workflow/sdk-php/issues/203). Configure un cliente HTTP acotado para esas llamadas y conserve el plazo original del llamador. El timeout de polling del Worker no limita todas las peticiones del SDK.

PHP SDK **3.4.0 o posterior** añade un **plazo total predeterminado de 60 segundos** a las peticiones HTTP de control normales del transporte propio del SDK; configure un `requestTimeoutSeconds` finito de al menos `0.001` segundos. Estos timeouts del transporte propio del SDK llevan `reason=request_timeout` y `status=0`. El SDK realiza un intento: una mutación agotada puede haber sido aceptada; inspeccione su identidad/resultado original antes de reenviarla. Clientes/transportes inyectados conservan su política y no pueden combinarse con esta opción. El límite por petición no sustituye plazos de long-poll del worker, transferencias de payload ni workflow/llamador. Revise `composer.lock`: este mínimo no cambia la combinación seleccionada. Véanse la [configuración HTTP](https://php.durable-workflow.com/getting-started/client-setup/) y la [aceptación instalada 3.4.0](https://github.com/durable-workflow/sdk-php/issues/203#issuecomment-6363909756).

### Ejemplo verificado de poll corto {#verified-poll-timeout-example}

Una prueba aislada usó Python SDK **2.9.0**, PHP Server **2.11.0** y Nginx **1.30.5** publicados, con una cola vacía. Ambas celdas conservaron el poll de **3 segundos**, los timeouts connect/read/write/pool de HTTPX de **8 segundos** y el límite exterior del llamador de **10 segundos**. Solo cambió el timeout de lectura upstream de Nginx:
Expand Down
2 changes: 1 addition & 1 deletion i18n/es/source-hashes.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"defining-workflows/workflow-id.md": "91b94211e2f8f405895ad82cfe2ef9baadb7a2cbd06e9c1e7aa6362231e0d424",
"defining-workflows/workflow-status.md": "8e8cb27ff44c890d489d89bf166375acfdfaecabd990a2235e106fab1592d529",
"defining-workflows/workflows.md": "f467bc73de32aa5d722c61ce085065460382ae7dd44cea4625847d9fcdc4c97c",
"deployment.md": "2f272a9c37aade0a8bd7ab5ab388a9aaef9b9d4a9ae387ca303bf67e6c860d97",
"deployment.md": "aa76a132fd78a27428dd9b8d9ab6f81aa8661b3f302eb799877688b77f508596",
"failures-and-recovery.md": "318f0cc183d26539c7d5b6bdf791429bb874b793b81cff4c6094ef1d11a796b2",
"features/activity-execution-model.md": "e8c37520ae46a7efb30438f4fc06bf893c1df430cb1f92c48963697adaf09082",
"features/cancel-and-terminate.md": "c678fc7a0c9b11f0e1bee295aff259de9803219c0aa6769fb801622799e7deb1",
Expand Down
2 changes: 2 additions & 0 deletions i18n/fr/docusaurus-plugin-content-docs/current/deployment.md
Original file line number Diff line number Diff line change
Expand Up @@ -290,6 +290,8 @@ Vérifiez le calcul du SDK installé. Dans la version Python vérifiée ci-desso

Les appels ordinaires du plan de contrôle via `Client` dans PHP SDK **3.2.0** ne fournissent pas d’échéance HTTP totale par défaut ; voir le [défaut vérifié PHP #203](https://github.com/durable-workflow/sdk-php/issues/203). Configurez un client HTTP borné pour ces appels et conservez l’échéance initiale de l’appelant. Le timeout de polling du Worker ne borne pas toutes les requêtes du SDK.

PHP SDK **3.4.0 ou ultérieur** ajoute un **délai total par défaut de 60 secondes** aux requêtes HTTP de contrôle ordinaires du transport propre au SDK ; configurez une valeur finie `requestTimeoutSeconds` d’au moins `0.001` seconde. Ces timeouts du transport propre au SDK portent `reason=request_timeout` et `status=0`. Le SDK fait un seul essai : une mutation expirée peut déjà être acceptée ; inspectez son identité/résultat initial avant de la renvoyer. Les clients/transports injectés gardent leur politique et ne peuvent être combinés à cette option. Cette limite par requête ne remplace pas les délais long-poll du worker, de transfert de payload ou du workflow/appelant. Vérifiez `composer.lock` : ce minimum ne change pas la combinaison sélectionnée. Voir la [configuration HTTP](https://php.durable-workflow.com/getting-started/client-setup/) et l’[acceptation installée 3.4.0](https://github.com/durable-workflow/sdk-php/issues/203#issuecomment-6363909756).

### Exemple vérifié de poll court {#verified-poll-timeout-example}

Un test isolé a utilisé Python SDK **2.9.0**, PHP Server **2.11.0** et Nginx **1.30.5** publiés avec une file vide. Les deux cellules gardent un poll de **3 secondes**, des timeouts HTTPX connect/read/write/pool de **8 secondes** et une limite extérieure de l’appelant de **10 secondes**. Seul le timeout de lecture upstream de Nginx change :
Expand Down
2 changes: 1 addition & 1 deletion i18n/fr/source-hashes.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"defining-workflows/workflow-id.md": "91b94211e2f8f405895ad82cfe2ef9baadb7a2cbd06e9c1e7aa6362231e0d424",
"defining-workflows/workflow-status.md": "8e8cb27ff44c890d489d89bf166375acfdfaecabd990a2235e106fab1592d529",
"defining-workflows/workflows.md": "f467bc73de32aa5d722c61ce085065460382ae7dd44cea4625847d9fcdc4c97c",
"deployment.md": "2f272a9c37aade0a8bd7ab5ab388a9aaef9b9d4a9ae387ca303bf67e6c860d97",
"deployment.md": "aa76a132fd78a27428dd9b8d9ab6f81aa8661b3f302eb799877688b77f508596",
"failures-and-recovery.md": "318f0cc183d26539c7d5b6bdf791429bb874b793b81cff4c6094ef1d11a796b2",
"features/activity-execution-model.md": "e8c37520ae46a7efb30438f4fc06bf893c1df430cb1f92c48963697adaf09082",
"features/cancel-and-terminate.md": "c678fc7a0c9b11f0e1bee295aff259de9803219c0aa6769fb801622799e7deb1",
Expand Down
2 changes: 2 additions & 0 deletions i18n/ja/docusaurus-plugin-content-docs/current/deployment.md
Original file line number Diff line number Diff line change
Expand Up @@ -188,6 +188,8 @@ VM、網、DB、キャッシュ、バックアップ、LB のモデルが明確

PHP SDK **3.2.0** の通常の制御プレーン `Client` 呼び出しには、既定の HTTP 全体期限がありません。[PHP #203 の検証済みの制限](https://github.com/durable-workflow/sdk-php/issues/203)を参照し、有界の HTTP クライアントを設定して、呼び出し元の元の期限を保ってください。Worker のポーリングタイムアウトは、SDK のすべての要求の期限ではありません。

PHP SDK **3.4.0 以降**は SDK 所有のトランスポートによる通常の制御 HTTP 要求に**既定60秒の全体期限**を設けます。`0.001` 秒以上の有限値を `requestTimeoutSeconds` で設定できます。SDK 所有の要求のタイムアウトは `reason=request_timeout` と `status=0` を持ちます。SDK は1回だけ試行します。応答がタイムアウトしても変更は受理済みの可能性があるため、再送前に元の識別子と結果を確認してください。注入したクライアント/トランスポートは独自の方針を保ち、このオプションと併用できません。要求単位の制限は worker long-poll、payload 転送、workflow/呼び出し元の期限を置き換えません。`composer.lock` を確認してください。この最低バージョンは選択済みインストール構成を更新しません。[HTTP 設定](https://php.durable-workflow.com/getting-started/client-setup/)と[3.4.0 の通常インストール検証](https://github.com/durable-workflow/sdk-php/issues/203#issuecomment-6363909756)を参照してください。

### 検証済みの短いポーリング例 {#verified-poll-timeout-example}

独立した検証で、公開済み Python SDK **2.9.0**、PHP Server **2.11.0**、Nginx **1.30.5** と空のタスクキューを使いました。両ケースとも SDK の待機は **3 秒**、HTTPX の connect/read/write/pool は **8 秒**、呼び出し元の外側の期限は **10 秒**で固定しました。変更したのは Nginx の upstream 読み取りタイムアウトだけです。
Expand Down
2 changes: 1 addition & 1 deletion i18n/ja/source-hashes.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"defining-workflows/workflow-id.md": "91b94211e2f8f405895ad82cfe2ef9baadb7a2cbd06e9c1e7aa6362231e0d424",
"defining-workflows/workflow-status.md": "8e8cb27ff44c890d489d89bf166375acfdfaecabd990a2235e106fab1592d529",
"defining-workflows/workflows.md": "f467bc73de32aa5d722c61ce085065460382ae7dd44cea4625847d9fcdc4c97c",
"deployment.md": "2f272a9c37aade0a8bd7ab5ab388a9aaef9b9d4a9ae387ca303bf67e6c860d97",
"deployment.md": "aa76a132fd78a27428dd9b8d9ab6f81aa8661b3f302eb799877688b77f508596",
"failures-and-recovery.md": "318f0cc183d26539c7d5b6bdf791429bb874b793b81cff4c6094ef1d11a796b2",
"features/activity-execution-model.md": "e8c37520ae46a7efb30438f4fc06bf893c1df430cb1f92c48963697adaf09082",
"features/cancel-and-terminate.md": "c678fc7a0c9b11f0e1bee295aff259de9803219c0aa6769fb801622799e7deb1",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -309,6 +309,8 @@ Confira o cálculo do SDK instalado. Na versão de Python verificada abaixo, um

Chamadas comuns do control plane com `Client` no PHP SDK **3.2.0** não fornecem um prazo HTTP total padrão. Veja a [lacuna verificada em PHP #203](https://github.com/durable-workflow/sdk-php/issues/203). Configure um cliente HTTP com limites para essas chamadas e preserve o prazo original do chamador. O timeout de polling do Worker não limita todas as requisições do SDK.

PHP SDK **3.4.0 ou posterior** adiciona um **prazo total padrão de 60 segundos** às requisições HTTP comuns de controle pelo transporte próprio do SDK; configure `requestTimeoutSeconds` finito de pelo menos `0.001` segundos. Esses timeouts do transporte próprio do SDK trazem `reason=request_timeout` e `status=0`. O SDK faz uma tentativa: uma mutação com timeout já pode ter sido aceita; verifique identidade/resultado original antes de reenviá-la. Clientes/transportes injetados mantêm sua política e não podem ser combinados com essa opção. O limite por requisição não substitui prazos de long-poll do worker, transferência de payload ou workflow/chamador. Confira `composer.lock`: esse mínimo não altera a combinação selecionada. Veja a [configuração HTTP](https://php.durable-workflow.com/getting-started/client-setup/) e a [aceitação instalada 3.4.0](https://github.com/durable-workflow/sdk-php/issues/203#issuecomment-6363909756).

### Exemplo verificado de poll curto {#verified-poll-timeout-example}

Uma verificação isolada usou Python SDK **2.9.0**, PHP Server **2.11.0** e Nginx **1.30.5** publicados, com uma fila vazia. Ambas as células mantiveram o poll em **3 segundos**, os timeouts connect/read/write/pool do HTTPX em **8 segundos** e o limite externo do chamador em **10 segundos**. Só mudou o timeout de leitura upstream do Nginx:
Expand Down
2 changes: 1 addition & 1 deletion i18n/pt-BR/source-hashes.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"defining-workflows/workflow-id.md": "91b94211e2f8f405895ad82cfe2ef9baadb7a2cbd06e9c1e7aa6362231e0d424",
"defining-workflows/workflow-status.md": "8e8cb27ff44c890d489d89bf166375acfdfaecabd990a2235e106fab1592d529",
"defining-workflows/workflows.md": "f467bc73de32aa5d722c61ce085065460382ae7dd44cea4625847d9fcdc4c97c",
"deployment.md": "2f272a9c37aade0a8bd7ab5ab388a9aaef9b9d4a9ae387ca303bf67e6c860d97",
"deployment.md": "aa76a132fd78a27428dd9b8d9ab6f81aa8661b3f302eb799877688b77f508596",
"failures-and-recovery.md": "318f0cc183d26539c7d5b6bdf791429bb874b793b81cff4c6094ef1d11a796b2",
"features/activity-execution-model.md": "e8c37520ae46a7efb30438f4fc06bf893c1df430cb1f92c48963697adaf09082",
"features/cancel-and-terminate.md": "c678fc7a0c9b11f0e1bee295aff259de9803219c0aa6769fb801622799e7deb1",
Expand Down
2 changes: 2 additions & 0 deletions i18n/uk/docusaurus-plugin-content-docs/current/deployment.md
Original file line number Diff line number Diff line change
Expand Up @@ -297,6 +297,8 @@ README Server підтримує актуальні команди Compose в р

Звичайні виклики control plane через `Client` у PHP SDK **3.2.0** не задають типового загального кінцевого строку HTTP. Дивіться [перевірений дефект PHP #203](https://github.com/durable-workflow/sdk-php/issues/203). Налаштуйте обмежений HTTP-клієнт для цих викликів і зберігайте початковий кінцевий строк. Таймаут опитування Worker не обмежує всі запити SDK.

PHP SDK **3.4.0 або новіший** додає **типовий загальний строк 60 секунд** для звичайних control HTTP-запитів через власний транспорт SDK; задайте скінченне `requestTimeoutSeconds` щонайменше `0.001` секунди. Ці таймаути власного транспорту SDK мають `reason=request_timeout` і `status=0`. SDK робить одну спробу: mutation із таймаутом уже могла бути прийнята, тому перед повтором перевірте початкову ідентичність/результат. Вставлені клієнти/транспорти зберігають власну timeout policy й не поєднуються з цим параметром. Межа одного запиту не замінює строки worker long-poll, передавання payload чи workflow/виклику. Перевіряйте `composer.lock`: мінімум функції не змінює вибрану комбінацію встановлення. Див. [налаштування HTTP-клієнта](https://php.durable-workflow.com/getting-started/client-setup/) і [перевірку звичайного встановлення 3.4.0](https://github.com/durable-workflow/sdk-php/issues/203#issuecomment-6363909756).

### Перевірений приклад короткого опитування {#verified-poll-timeout-example}

Ізольована перевірка використовувала опубліковані Python SDK **2.9.0**, PHP Server **2.11.0** і Nginx **1.30.5** з порожньою чергою. В обох випадках опитування SDK тривало **3 секунди**, таймаути connect/read/write/pool HTTPX становили **8 секунд**, а зовнішня межа виклику — **10 секунд**. Змінювався лише таймаут читання upstream у Nginx:
Expand Down
2 changes: 1 addition & 1 deletion i18n/uk/source-hashes.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"defining-workflows/workflow-id.md": "91b94211e2f8f405895ad82cfe2ef9baadb7a2cbd06e9c1e7aa6362231e0d424",
"defining-workflows/workflow-status.md": "8e8cb27ff44c890d489d89bf166375acfdfaecabd990a2235e106fab1592d529",
"defining-workflows/workflows.md": "f467bc73de32aa5d722c61ce085065460382ae7dd44cea4625847d9fcdc4c97c",
"deployment.md": "2f272a9c37aade0a8bd7ab5ab388a9aaef9b9d4a9ae387ca303bf67e6c860d97",
"deployment.md": "aa76a132fd78a27428dd9b8d9ab6f81aa8661b3f302eb799877688b77f508596",
"failures-and-recovery.md": "318f0cc183d26539c7d5b6bdf791429bb874b793b81cff4c6094ef1d11a796b2",
"features/activity-execution-model.md": "e8c37520ae46a7efb30438f4fc06bf893c1df430cb1f92c48963697adaf09082",
"features/cancel-and-terminate.md": "c678fc7a0c9b11f0e1bee295aff259de9803219c0aa6769fb801622799e7deb1",
Expand Down
Loading
Loading