Skip to content

Fail migrations whose source or destination stops answering #14331

Description

@ChiragAgg5k

Tracks PR #14330.

Plan

Goal: Migrations whose source or destination accepts a connection but never answers should fail with a recorded error instead of sitting in processing forever (the cause of the intermittent Migrations E2E timeouts in CI).

What changes:

  • src/Appwrite/Platform/Workers/Migrations.php: the scope-probe Client in authenticateSource() gets Target::CONNECT_TIMEOUT and Target::REQUEST_TIMEOUT.
  • composer.json / composer.lock: utopia-php/migration points at branch fix/request-timeouts aliased as 2.0.9 (the library change is fix: time out stalled source and destination requests utopia-php/migration#232: 10s connect timeout, 30s no-bytes limit).
  • tests/e2e/Services/Migrations/MigrationsBase.php: new testAppwriteMigrationFailsWhenSourceNeverAnswers, using a listening socket that never replies.

Remaining steps:

  1. Merge and release fix: time out stalled source and destination requests utopia-php/migration#232.
  2. Switch composer.json from the dev branch alias to the released tag and refresh composer.lock.

Done when:

Activity

  1. self-assigned this
    on Oct 10, 2026
  2. added
    product / authFixes and upgrades for the Appwrite Auth / Users / Teams services.
    product / migrationsFixes and upgrades for the Appwrite Migrations.
    on Oct 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

product / authFixes and upgrades for the Appwrite Auth / Users / Teams services.product / migrationsFixes and upgrades for the Appwrite Migrations.

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions