Commit Graph

116 Commits

Author SHA1 Message Date
Steven Silvester
5578999a90
PYTHON-1834 Use a code formatter (#852) 2022-02-09 06:44:28 -06:00
Steven Silvester
f4cef37328
PYTHON-3064 Add typings to test package (#844) 2022-02-07 19:33:41 -06:00
Shane Harvey
ff3a8b44dc
PYTHON-1864 PYTHON-2931 Spec complaint $readPreference (#809)
Stop sending $readPreference to standalone servers.
Stop sending $readPreference primary because it's the server default.
Remove outdated secondary_ok flag.
2021-12-13 15:47:34 -08:00
Shane Harvey
bf992c20a6
PYTHON-2554 Support aggregate $merge and $out executing on secondaries (#774) 2021-12-07 16:26:01 -08:00
Shane Harvey
b342990934
PYTHON-2164 Add MongoClient.options, remove redundant properties (#772) 2021-11-03 11:21:33 -07:00
Shane Harvey
11752ed594
PYTHON-2899 Remove code for MongoDB <= 3.4 (#729)
Remove unneeded memoryview to bytes conversion.
2021-09-16 16:53:50 -07:00
Bernie Hackett
146179db53 PYTHON-2803 Eliminate the use of 'slave' 2021-09-13 12:47:24 -07:00
Shane Harvey
65aa7c86d5
PYTHON-2850 Remove map_reduce/inline_map_reduce (#703) 2021-08-12 09:44:52 -07:00
Shane Harvey
e1b068d37a
PYTHON-2525 Remove Collection.count and Cursor.count (#700) 2021-08-10 13:52:29 -07:00
Shane Harvey
3513ab72b0 PYTHON-2528 Remove Database.current_op 2021-08-04 11:14:50 -07:00
Prashant Mital
f07da34f97
PYTHON-2545 Test Atlas Serverless (#664) 2021-07-27 16:35:09 -07:00
Shane Harvey
b4b7a07b81
PYTHON-2762 Avoid duplicating unified test files for LB testing (#649)
Create new client for each cursor/session __del__ test.
Always close cursors in spec tests.
2021-06-25 16:20:21 -07:00
Shane Harvey
4c77d7c855
PYTHON-2677 Better wait queue timeout errors for load balanced clusters (#639)
Remove checkout argument in favor of SocketInfo.pin_txn/pin_cursor()
2021-06-21 18:29:36 -07:00
Shane Harvey
c8f32a7a37 PYTHON-2673 Connection pinning behavior for load balanced clusters (#630)
Tweak spec test because pymongo unpins cursors eagerly after errors.
Tweak spec test for PoolClearedEvent ordering when MongoDB handshake fails (see DRIVERS-1785).
Only skip killCursors for some error codes.
Rely on SDAM error handling to close the connection after a state change error.
Add service_id to various events.
Retain reference to pinned sockets to prevent premptive closure by CPython's cyclic GC.
2021-06-15 14:14:56 -07:00
Shane Harvey
95974617bd
PYTHON-1314 Remove Database.authenticate and Database.logout (#568) 2021-02-17 14:16:07 -08:00
Shane Harvey
ac4bacb66c
PYTHON-1323 Removed Collection.group (#559) 2021-01-25 17:07:48 -08:00
Bernie Hackett
a72e8b8823 PYTHON-2133 Remove py2 support from test
Also delete bson/py3compat.py
2021-01-20 09:40:36 -08:00
Shane Harvey
56925fd97f
PYTHON-1321 Remove MongoReplicaSetClient (#552) 2021-01-15 17:11:15 -08:00
Shane Harvey
6e8c3708b8
PYTHON-1587 Remove MongoClient.database_names and Database.collection_names (#551) 2021-01-15 16:53:42 -08:00
Shane Harvey
5b49557c59 PYTHON-2268 Close clients in test suite 2020-06-03 17:05:59 -07:00
Shane Harvey
6e39ae04c3 PYTHON-2170 Add support for 4.4 hedged reads 2020-05-07 17:26:00 -07:00
Bernie Hackett
7425153639 PYTHON-1665 Agg with $out always goes to primary 2019-07-16 14:20:50 -07:00
Shane Harvey
a15266083b PYTHON-1674 Support retryable reads
Add retryReads URI option that defaults to True.
Supported read operations will be retried once after transient
network, election, and shutdown errors on MongoDB 3.6+.
Supported operations are:
listCollections, listIndexes, and listDatabases
distinct
count, estimated_document_count, count_documents
aggregate (not including $out)
find (only for the initial find command, getMore commands are not
retried).
ChangeStreams: watch (initial aggregate command).
GridFS read APIs.

Test changes:
Add retryable reads spec test runner.
Disable retryable reads in network error tests.
2019-04-25 14:28:12 -07:00
Shane Harvey
6bab444bd7 PYTHON-1673 Mongos pinning for sharded transactions
In a sharded transaction, a session is pinned to the mongos server
selected for the initial command. All subsequent commands in the same
transaction are routed to the pinned mongos server.
2019-02-27 15:56:48 -08:00
Bernie Hackett
709b28467f PYTHON-1586 - Deprecate database_names and collection_names 2018-06-18 10:52:11 -07:00
Bernie Hackett
e6b0f3847d PYTHON-1581 - Deprecate Collection/Cursor count 2018-06-18 10:50:26 -07:00
Bernie Hackett
91c3793703 PYTHON-1580 - Implement new count API 2018-06-08 14:27:04 -07:00
Bernie Hackett
8cc2f72e20 PYTHON-1471 - Reenable arbiter tests on 4.0 and latest 2018-06-04 13:54:38 -07:00
Bernie Hackett
54b8058c66 PYTHON-1571 - Skip group tests with MongoDB 4.1+ 2018-06-01 18:29:30 -07:00
Bernie Hackett
335cb97a34 PYTHON-1278, PYTHON-1553 - Support OP_COMPRESSED 2018-05-22 11:44:21 -07:00
Shane Harvey
5a652be993 PYTHON-1508 Add read_preference to TransactionOptions
All read operations use the transaction's read preference.
Add transaction read preference spec tests.
Remove write test in test_read_preferences.
2018-05-08 11:38:28 -07:00
Shane Harvey
a2937aa8eb Revert "Pin transactions to a single server address"
This reverts commit 25bc0858ff566abfabadeca4a3fea177e9c2697c.
2018-04-16 09:57:45 -04:00
Shane Harvey
656aa1e703 Pin transactions to a single server address 2018-04-16 09:57:45 -04:00
Shane Harvey
3c6ffb895e PYTHON-1471 Disable failing arbiter tests on MongoDB latest 2018-02-27 09:45:56 -08:00
Bernie Hackett
507f954ed4 Update copyright dates 2017-12-01 17:23:39 -08:00
Shane Harvey
3e778334e7 PYTHON-1299 Remove test logic for MongoDB <2.6. 2017-09-29 12:09:24 -07:00
Shane Harvey
9468c119a3 PYTHON-1335 Improve __slots__ usage.
__slots__ must be defined in all classes in the hierarchy to avoid __dict__
and __weakref__ overhead.
2017-08-03 14:57:43 -07:00
Bernie Hackett
53bd24bfc3 PYTHON-1260 - Deprecate the group helper 2017-07-18 10:54:33 -07:00
A. Jesse Jiryu Davis
91f2f973af PYTHON-1192 - Minimum maxStalenessSeconds is 90.
Revert code to parse "idleWritePeriodMillis" from ismaster, and revert
changes that allowed maxStalenessSeconds to be a float.
2016-11-22 13:19:34 -05:00
Bernie Hackett
ba6ef88d10 PYTHON-1026 - Single member replica set testing 2016-11-15 15:25:04 -08:00
A. Jesse Jiryu Davis
873dc22f64 PYTHON-1185 - maxStalenessSeconds can be a float.
PyMongo had cast to int before sending to mongos.
2016-11-08 21:52:04 -05:00
A. Jesse Jiryu Davis
f4922da97c PYTHON-1104 - maxStalenessMS -> maxStalenessSeconds. 2016-11-08 21:52:04 -05:00
Shane Harvey
5905a86785 PYTHON-1075 Support running the entire test suite with SSL/TLS
SSL connections are configurable via the environment variables
"CLIENT_PEM", "CA_PEM", and "CERT_REQS".
2016-09-28 16:34:14 -07:00
Bernie Hackett
e89ba4bcd0 PYTHON-1026 - Remove test assumption about primary host 2016-09-21 11:15:43 -07:00
Bernie Hackett
5f16e33a6d PYTHON-1150 - Add maxStalenessMS to $readPreference 2016-09-19 11:09:41 -07:00
A. Jesse Jiryu Davis
5933730588 PYTHON-1104 Implement maxStalenessMS. 2016-07-22 14:12:40 -04:00
Bernie Hackett
0d274781db Fix a test for MongoDB 3.2 change 2015-11-18 16:41:10 -08:00
Bernie Hackett
c7c2567a8d Clean up read preference tests 2015-10-16 17:24:34 -07:00
Bernie Hackett
51cadce6fb PYTHON-915 - More robust tests. 2015-05-08 11:48:29 -07:00
Bernie Hackett
f506d8b69f PYTHON-915 - Accept 0 for localThresholdMS. 2015-05-08 08:34:15 -07:00