Uploaded image for project: 'Go Driver'
  1. Go Driver
  2. GODRIVER-1799

Avoiding connection storms

    • Type: Icon: Epic Epic
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 1.9.0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Done
    • Avoiding connection storms
    • 8
    • 9
    • 10
    • 100
    • Hide

      Engineer(s): Matt

      2022-03-07: Updated target end date to 2022-03-18

      Status update:

      • Completed connection pool pausing.
      • Updates to resync maxConnecting related tests in review.
      • Consider server load during server selection is scheduled.

      Rationale for delays:

      • Connection pool pausing was more complex than expected.
      • Go driver connection pool behavior differs from most other drivers. The Go driver establishes all connections in a background goroutines (part of GODRIVER-2038). This resulted in three CMAP tests not being able to work with the Go driver. Drivers tickets were filed.

      Risks:

      • No risks.

      2022-02-21: Updating target date to 2022-03-01.

      Status update:

      • Connection pool pausing in review.
        • Met to discuss PR. 1 of 3 reviewers have approved.
        • Resolved an intermittent test failure.

      Rationale for delays:

      • Reviews have been slower. Team busy on hiring and responding to questions in #go-driver.
      • Discovered an intermittent test failure during PR.

      Risks:

      • No risks.

      2022-02-07: Updated target end date to 2022-02-18

      Status update:

      • Connection pool pausing in review.

      Rationale for delays:

      • Connection pool pausing implementation was unexpectedly challenging. Required refactor of operation layer to permit retry of connection pool checkout.

      Risks:

      • No risks.

      2022-01-25: No change to target date

      Status update:

      • Focus is on implementing pausable state for pool, which will unblock many spec tests.

      Rationale for delays:

      • No delays.

      Risks:

      • No risks.

      2022-01-11: No change to target date

      Status update:

      • PR for prose-style tests for the maxConnecting CMAP spec approved. Fixing test failures.
      • Configurable maxConnecting released in 1.8.2.

      Rationale for delays:

      • No delays.

      Risks:

      • No risks.

      ---- 

      2021-12-27: No change to target date.

      Status update:

      • PR for prose-style tests for the maxConnecting CMAP spec.
      • Spec tests were not possible to run in Go driver since it relied on private API unavailable to integration test runner.

      Rationale for delays:

      • No delays.

      Risks:

      • No risks.

      2021-12-13:

      Status update:

      • Working on maxConnecting and rate limiting.

      Rationale for delays:

      • No delays.

      Risks:

      • No risks.

      Show
      Engineer(s): Matt 2022-03-07: Updated target end date to 2022-03-18 Status update: Completed connection pool pausing. Updates to resync maxConnecting related tests in review. Consider server load during server selection is scheduled. Rationale for delays: Connection pool pausing was more complex than expected. Go driver connection pool behavior differs from most other drivers. The Go driver establishes all connections in a background goroutines (part of GODRIVER-2038 ). This resulted in three CMAP tests not being able to work with the Go driver. Drivers tickets were filed. Risks: No risks. 2022-02-21: Updating target date to 2022-03-01. Status update: Connection pool pausing in review. Met to discuss PR. 1 of 3 reviewers have approved. Resolved an intermittent test failure. Rationale for delays: Reviews have been slower. Team busy on hiring and responding to questions in #go-driver. Discovered an intermittent test failure during PR. Risks: No risks. 2022-02-07: Updated target end date to 2022-02-18 Status update: Connection pool pausing in review. Rationale for delays: Connection pool pausing implementation was unexpectedly challenging. Required refactor of operation layer to permit retry of connection pool checkout. Risks: No risks. 2022-01-25: No change to target date Status update: Focus is on implementing pausable state for pool, which will unblock many spec tests. Rationale for delays: No delays. Risks: No risks. 2022-01-11: No change to target date Status update: PR for prose-style tests for the maxConnecting CMAP spec approved. Fixing test failures. Configurable maxConnecting released in 1.8.2. Rationale for delays: No delays. Risks: No risks. ----  2021-12-27: No change to target date. Status update: PR for prose-style tests for the maxConnecting CMAP spec. Spec tests were not possible to run in Go driver since it relied on private API unavailable to integration test runner. Rationale for delays: No delays. Risks: No risks. 2021-12-13: Status update: Working on maxConnecting and rate limiting. Rationale for delays: No delays. Risks: No risks.

      See DRIVERS-781 for updated details.

            Assignee:
            matt.dale@mongodb.com Matt Dale
            Reporter:
            backlog-server-pm Backlog - Core Eng Program Management Team
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved:
              15 weeks