Make "pool.clear()" behavior match CMAP specification

XMLWordPrintableJSON

    • Type: Improvement
    • Resolution: Duplicate
    • Priority: Unknown
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      The Clearing a Connection Pool section of the CMAP specification describes that:

      As part of clearing the pool, the WaitQueue MUST also be cleared, meaning all requests in the WaitQueue MUST fail with errors indicating that the pool was cleared while the checkOut was being performed.

      Currently the Go driver pool.clear() function does not empty the WaitQueue and only increments the latest generation number. Update it to also clear the WaitQueue.

      Definition of done:

      • pool.clear() clears the WaitQueue and returns retryable error code to all waiting checkOut() callers.

            Assignee:
            Unassigned
            Reporter:
            Matt Dale
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: