Shane Harvey
b16533951c
PYTHON-3345 CSOT use connection handshake RTT for load balanced mode ( #998 )
2022-07-07 16:55:16 -07:00
Shane Harvey
890cd26e1a
PYTHON-3288 Implement client side operation timeout ( #954 )
...
Add timeoutMS URI option and MongoClient keyword argument.
Add provisional/beta pymongo.timeout() api to set a deadline for a block of operations.
2022-06-06 15:36:52 -04:00
Shane Harvey
78476d0217
PYTHON-3187 Avoid tight poll() loop on pyopenssl connections ( #953 )
2022-05-26 15:14:59 -07:00
Shane Harvey
a1c33e0b84
PYTHON-3257 Fix "connection pool paused" errors in child after fork ( #944 )
2022-05-09 15:37:48 -07:00
Shane Harvey
75685c006c
PYTHON-3235 Drop support for Python 3.6 ( #939 )
2022-05-05 16:13:41 -07:00
Steven Silvester
b3604a81d3
PYTHON-3171 Add usage of NoReturn annotation ( #901 )
2022-03-16 15:26:10 -05:00
Julius Park
2141621194
PYTHON-3088 Test rapid releases with load balancers ( #885 )
...
PYTHON-3088 [v3.13] Update load balancer tests to support dedicated load balancer port (#870 )
(cherry picked from commit 341d489 )
2022-02-22 14:45:56 -08:00
Julius Park
f5eec45250
PYTHON-3111 Rename "Versioned API" to "Stable API" in documentation ( #867 )
2022-02-17 16:23:23 -08:00
Steven Silvester
a0fe7c03af
PYTHON-3120 Set up flake8 linting ( #868 )
2022-02-17 06:44:08 -06:00
Julius Park
341d489f38
PYTHON-3088 Update load balancer tests to support dedicated load balancer port ( #866 )
2022-02-14 11:26:14 -08:00
Steven Silvester
5578999a90
PYTHON-1834 Use a code formatter ( #852 )
2022-02-09 06:44:28 -06:00
Steven Silvester
dd6c140d43
PYTHON-3060 Add typings to pymongo package ( #831 )
2022-02-02 21:12:36 -06:00
Steven Silvester
abfa0d35bc
PYTHON-3075 bulk_write does not apply CodecOptions to upserted_ids result ( #840 )
2022-02-02 13:53:58 -06:00
Julius Park
4eeb685c57
PYTHON-3069 Require hello command + OP_MSG when 'loadBalanced=True' ( #837 )
2022-01-26 11:57:36 -08: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
797197e73b
PYTHON-2763 Remove outdated check_keys and $clusterTime logic ( #817 )
2021-12-10 10:22:49 -08:00
Shane Harvey
c94a3ad1df
PYTHON-2585 Remove legacy multi-auth code ( #816 )
2021-12-09 18:00:41 -08:00
Shane Harvey
e154642968
Removed references to outdated server versions ( #812 )
2021-12-07 15:47:28 -08:00
Shane Harvey
b342990934
PYTHON-2164 Add MongoClient.options, remove redundant properties ( #772 )
2021-11-03 11:21:33 -07:00
Julius Park
d77cb674b6
PYTHON-2717 Treat maxPoolSize=0 the same as maxPoolSize=None
2021-10-21 15:48:58 -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
ad4315134c
PYTHON-2803 Get rid of most uses of 'master'
...
This change also resolves PYTHON-2848 for MongoDB 4.0.
2021-09-13 12:50:49 -07:00
Bernie Hackett
146179db53
PYTHON-2803 Eliminate the use of 'slave'
2021-09-13 12:47:24 -07:00
Shane Harvey
2eb0df812c
PYTHON-2879 Fix get_ssl_context for CSFLE and ocsptest.py ( #713 )
2021-08-24 13:36:37 -04:00
Prashant Mital
b3118e034e
PYTHON-2162 Remove support for ssl* URI options ( #706 )
2021-08-19 14:58:31 -07:00
Shane Harvey
71a1656be0
PYTHON-2038 Remove pymongo.errors.CertificateError ( #705 )
2021-08-12 09:29:30 -07:00
Shane Harvey
10002fad1c
PYTHON-2857 Remove the socketKeepAlive option ( #702 )
2021-08-10 14:00:41 -07:00
Shane Harvey
e3a61b9ff7
PYTHON-1840 Remove waitQueueMultiple and ExceededMaxWaiters ( #699 )
2021-08-09 10:53:28 -07:00
Prashant Mital
3f8c104157
PYTHON-2288 Remove IsMaster ( #690 )
2021-07-29 10:32:51 -07:00
Shane Harvey
775bf923c9
PYTHON-2699 Emit PoolReadyEvent before resuming the background thread ( #683 )
2021-07-28 11:31:07 -07:00
Shane Harvey
b823b95de1
PYTHON-2791 Ignore erroneous serviceId field for non-LB connections ( #663 )
2021-06-30 18:31:00 -07:00
Prashant Mital
b991185fd7
PYTHON-2715 Use hello command for monitoring when supported ( #654 )
2021-06-30 13:21:44 -07:00
Shane Harvey
4152600ae6
PYTHON-2777 Raise client side error for snapshot reads on <5.0 ( #659 )
2021-06-29 14:40:48 -07:00
Shane Harvey
07146ceba7
PYTHON-2761 Don't return a pinned connection to the pool multiple times ( #645 )
2021-06-22 15:31:33 -07:00
Prashant Mital
ff6ca53328
PYTHON-2572 Introduce NotPrimaryError and deprecate NotMasterError ( #646 )
2021-06-22 13:24:07 -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
bf78a9b2ef
PYTHON-2744 Run LB tests against non-LB clusters ( #638 )
...
Fix serviceId fallback to make spec test pass.
Fix socket leak when SocketInfo connection handshake fails.
2021-06-15 14:30:01 -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
112ee69de8
PYTHON-2674 Pool.reset only clears connections to the given serviceId ( #628 )
2021-06-15 09:52:30 -07:00
Tyler Willey
9c1ff6ad9d
PYTHON-2743 Fix compatibility with gevent.Timeout ( #633 )
...
gevent.Timeout extends BaseException, not Exception.
2021-06-15 09:33:09 -07:00
Shane Harvey
93ac5e0277
PYTHON-2676 Add load balancer tests in EVG ( #625 )
...
Add load balancer spec tests
Ensure LB supports retryable reads/writes
Add assertNumberConnectionsCheckedOut, createFindCursor, ignoreResultAndError
Add PoolClearedEvent.service_id and fix isClientError unified test assertion
2021-05-27 15:05:26 -07:00
Shane Harvey
5bf15c8e18
PYTHON-2672 SDAM, CMAP, and server selection changes for load balancers ( #621 )
...
Disable SRV Polling, SDAM compatibility check, logicalSessionTimeoutMinutes check.
server session pool pruning, server selection, and server monitoring.
A ServerType of LoadBalancer MUST be considered a data-bearing server.
"drivers MUST emit the following series of SDAM events" section.
Send loadBalanced:True with handshakes, validate serviceId.
Add topologyVersion fallback when serviceId is missing.
Don't mark load balancers unknown.
2021-05-18 14:12:49 -07:00
Shane Harvey
e221b49dfc
PYTHON-2684 Send Versioned API options with getMore+txn commands ( #618 )
2021-05-17 15:26:50 -07:00
Shane Harvey
f64b563d9e
PYTHON-2629 Use hello command when API Version is declared ( #610 )
...
PYTHON-2697 Update CMAP runner to ignore extra events
2021-05-10 14:33:51 -07:00
Shane Harvey
80adc13195
PYTHON-2615 Reinstate TLS network timeout workaround due to eventlet ( #581 )
...
PYTHON-2616 Fix test_network_error_message when TLS is enabled.
2021-03-19 21:47:53 -07:00
Shane Harvey
4364b7c43a
PYTHON-2596 Include host in error message when connection is closed ( #575 )
...
Use raise from syntax when re-raising exceptions in the pool.
2021-03-03 16:33:42 -08:00
Shane Harvey
95974617bd
PYTHON-1314 Remove Database.authenticate and Database.logout ( #568 )
2021-02-17 14:16:07 -08:00
Bernie Hackett
1cf8eb31b5
PYTHON-2505 Use match_hostname from the ssl module
2021-01-26 12:36:45 -08:00
Bernie Hackett
cf877e95c7
PYTHON-2503 Always use time.monotonic
...
For monotonic time needs.
2021-01-25 12:48:31 -08:00
Bernie Hackett
1f1670cc35
PYTHON-1974 Drop support for Python 3.4
2021-01-22 15:54:26 -08:00