Skip to content

Feat add exp 429 retry - #46

Open
sonic16x wants to merge 1 commit into
masterfrom
add-exp-429-retry
Open

Feat add exp 429 retry#46
sonic16x wants to merge 1 commit into
masterfrom
add-exp-429-retry

Conversation

@sonic16x

@sonic16x sonic16x commented Aug 10, 2026

Copy link
Copy Markdown

Added exponential backoff retry logic for HTTP 429 (Too Many Requests) responses when establishing a WebDriver session. Previously, session creation retries happened
almost immediately (within ~100ms), which could amplify load on a busy grid server.

New option: exp429RetryBaseDelay

Controls the base delay (in ms) for exponential backoff on 429 responses during session creation. The delay formula is:

delay = exp429RetryBaseDelay × 2^attempt + jitter(0..100ms)

With the default value of 3000ms, retry delays are approximately 3s → 6s → 12s.

The number of retries is controlled by the existing connectionRetryCount option (default: 3).

Example:

remote({
// ...  
 exp429RetryBaseDelay: 3000,  // default, can be omitted
connectionRetryCount: 3,      // default  
 })

If exp429RetryBaseDelay is not provided, it defaults to 3000. The backoff only applies to 429 responses during session creation — all other requests and error codes are
unaffected.

Screenshot 2026-08-10 at 17 38 09

@pkg-pr-new

pkg-pr-new Bot commented Aug 10, 2026

Copy link
Copy Markdown

Open in StackBlitz

@testplane/devtools

npm i https://pkg.pr.new/gemini-testing/webdriverio/@testplane/devtools@46

eslint-plugin-wdio

npm i https://pkg.pr.new/gemini-testing/webdriverio/eslint-plugin-wdio@46

@wdio/allure-reporter

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/allure-reporter@46

@wdio/appium-service

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/appium-service@46

@wdio/browser-runner

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/browser-runner@46

@wdio/browserstack-service

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/browserstack-service@46

@wdio/cli

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/cli@46

@wdio/concise-reporter

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/concise-reporter@46

@testplane/wdio-config

npm i https://pkg.pr.new/gemini-testing/webdriverio/@testplane/wdio-config@46

@wdio/cucumber-framework

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/cucumber-framework@46

@wdio/dot-reporter

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/dot-reporter@46

@wdio/firefox-profile-service

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/firefox-profile-service@46

@wdio/globals

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/globals@46

@wdio/jasmine-framework

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/jasmine-framework@46

@wdio/json-reporter

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/json-reporter@46

@wdio/junit-reporter

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/junit-reporter@46

@wdio/lighthouse-service

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/lighthouse-service@46

@wdio/local-runner

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/local-runner@46

@testplane/wdio-logger

npm i https://pkg.pr.new/gemini-testing/webdriverio/@testplane/wdio-logger@46

@wdio/mocha-framework

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/mocha-framework@46

@testplane/wdio-protocols

npm i https://pkg.pr.new/gemini-testing/webdriverio/@testplane/wdio-protocols@46

@testplane/wdio-repl

npm i https://pkg.pr.new/gemini-testing/webdriverio/@testplane/wdio-repl@46

@wdio/reporter

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/reporter@46

@wdio/runner

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/runner@46

@wdio/sauce-service

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/sauce-service@46

@wdio/shared-store-service

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/shared-store-service@46

@wdio/smoke-test-cjs-service

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/smoke-test-cjs-service@46

@wdio/smoke-test-reporter

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/smoke-test-reporter@46

@wdio/smoke-test-service

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/smoke-test-service@46

@wdio/spec-reporter

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/spec-reporter@46

@wdio/static-server-service

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/static-server-service@46

@wdio/sumologic-reporter

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/sumologic-reporter@46

@wdio/testingbot-service

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/testingbot-service@46

@testplane/wdio-types

npm i https://pkg.pr.new/gemini-testing/webdriverio/@testplane/wdio-types@46

@testplane/wdio-utils

npm i https://pkg.pr.new/gemini-testing/webdriverio/@testplane/wdio-utils@46

@wdio/webdriver-mock-service

npm i https://pkg.pr.new/gemini-testing/webdriverio/@wdio/webdriver-mock-service@46

@testplane/webdriver

npm i https://pkg.pr.new/gemini-testing/webdriverio/@testplane/webdriver@46

@testplane/webdriverio

npm i https://pkg.pr.new/gemini-testing/webdriverio/@testplane/webdriverio@46

commit: b7cad1d

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