[CXX-2393] Drivers should retry operations if connection handshake fails Created: 19/Oct/21  Updated: 28/Oct/23  Resolved: 31/Mar/23

Status: Closed
Project: C++ Driver
Component/s: None
Affects Version/s: None
Fix Version/s: 3.8.0

Type: Improvement Priority: Major - P3
Reporter: PM Bot Assignee: Ezra Chung
Resolution: Fixed Votes: 0
Labels: size-xsmall
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Issue split
split from DRIVERS-746 Drivers should retry operations if co... Implementing
Related
related to CXX-2610 Improve test coverage for retryable h... Closed
Quarter: FY24Q1
Upstream Changes Summary:

DRIVERS-746:


 Description   

This ticket was split from DRIVERS-746, please see that ticket for a detailed description.



 Comments   
Comment by Githook User [ 15/Aug/23 ]

Author:

{'name': 'Ezra Chung', 'email': '88335979+eramongodb@users.noreply.github.com', 'username': 'eramongodb'}

Message: CXX-1848 Add sharded cluster test coverage to EVG config (#1007)

  • Move legacy transaction spec tests into subdirectory
  • Sync legacy transaction spec tests with 56454749 (CXX-2406)
  • Sync legacy transactions convenient API spec tests with e9280056 (CXX-1976)
  • Remove references to obsolete "sharded-replicaset" topology
  • Fix inconsistent behavior of index_view::create_*() on sharded clusters
  • The failCommand operation on mongos requires 4.1+
  • Multi-document transactions require 4.2+
  • Fix legacy test runner outcome checks missing readPreference=primary
  • Fix flaky tailable await cursors tests due to extreme maxAwaitTimeMS
  • Remove unused configureFailPoint operation in legacy test runner
  • Ensure configureFailPoint events are ignored
  • Improve apm_checker::print_all() output and const-correctness
  • Capture APM events in result assertion failures
  • Use Catch2 substring matcher instead of index comparison
  • Fix operation name match for assertSessionUnpinned
  • Update session pin assertion operations
  • Do not assume session object name when not session0
  • Add transactions mongos pinning prose tests
  • Improve failure messages for APM event checks in legacy test runner
  • Add Catch2 sections separating legacy transactions and convenient API tests
  • Handle client errors reported as logic_error in legacy test runner
  • Skip legacy transactions test requiring explicit readPreference with runCommand
  • Update legacy transactions test runner to conform to latest spec
  • Implement assertSessionTransactionState in legacy test runner
  • Implement targetedFailPoint in legacy test runner
  • Fix unified test runner outcome checks missing readPreference=primary and readConcern=local
  • Add transactions spec tests to unified test runner
  • Fix test client URI hostname specification in unified test runner
  • Implement targetedFailPoint in unified test runner
  • Implement session pin assertions in unified test runner
  • Add sharded cluster tasks to EVG config
  • Use scope guards to disable fail points in unified test runner
  • Remove obsolete version checks in examples (CXX-1547)
  • Fix server version comparisons
  • Workaround possibly unexpected multi and upsert fields
  • Fix match actions when comparing APM events in legacy test runner
Comment by Githook User [ 31/Mar/23 ]

Author:

{'name': 'Ezra Chung', 'email': '88335979+eramongodb@users.noreply.github.com', 'username': 'eramongodb'}

Message: CXX-2393 Sync retryable handshake error unified spec tests (#946)

  • Move existing retryable-reads tests into legacy subdirectory
  • Remove update spec test scripts
  • CXX-2393 sync retryable-reads unified spec tests with 08230607
  • CXX-2393 sync retryable-writes unified spec tests with 08230607
  • CXX-2610 sync retryable-reads unified spec tests with 35b17b70
  • CXX-2610 sync retryable-writes unified spec tests with 35b17b70
  • Ensure APM events are printed properly on APM event comparison failure
  • Ensure the configureFailPoint command is excluded from observed events
  • Add support for skipping individual test cases in unified test runner
  • Add unified test runner support for listCollectionNames
  • Add unified test runner support for listDatabaseNames
  • Capture unsupported command monitoring events in test output on failure
  • Add client::list_databases overload accepting session and opts
Generated at Wed Feb 07 22:05:47 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.