[SERVER-19438] honor timeouts passed to startCommand in NetworkInterfaceASIO Created: 16/Jul/15  Updated: 07/Oct/15  Resolved: 17/Sep/15

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 3.1.9

Type: Task Priority: Critical - P2
Reporter: Adam Midvidy Assignee: Samantha Ritter (Inactive)
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
related to SERVER-20190 ASIO cancel() should preempt any outs... Closed
Backwards Compatibility: Fully Compatible
Sprint: Platform 8 08/28/15, Platform 9 (09/18/15)
Participants:

 Description   

asio provides high_resolution_timer, steady_timer, and system_timer that each use the corresponding std::chrono clock. We should pick one (probably steady_clock) and then add timeouts to all asynchronous operations.



 Comments   
Comment by Githook User [ 18/Sep/15 ]

Author:

{u'username': u'amidvidy', u'name': u'Adam Midvidy', u'email': u'amidvidy@gmail.com'}

Message: SERVER-19438 make ASIO timeouts less chatty
Branch: master
https://github.com/mongodb/mongo/commit/18c68fd40f26a8a411e12187b38563832ed37735

Comment by Githook User [ 17/Sep/15 ]

Author:

{u'username': u'amidvidy', u'name': u'Adam Midvidy', u'email': u'amidvidy@gmail.com'}

Message: SERVER-19438 fix lint (std->stdx)
Branch: master
https://github.com/mongodb/mongo/commit/46e120855cc02c6db99ab42fe4e9b6d2e1ac9198

Comment by Githook User [ 17/Sep/15 ]

Author:

{u'username': u'samantharitter', u'name': u'Samantha Ritter', u'email': u'samantha.ritter@10gen.com'}

Message: SERVER-19438 Honor operation timeouts in NetworkInterfaceASIO
Branch: master
https://github.com/mongodb/mongo/commit/1d5e8da4ece2bdd803dadb4fb271cea3a372b0e8

Comment by Githook User [ 17/Sep/15 ]

Author:

{u'username': u'samantharitter', u'name': u'Samantha Ritter', u'email': u'samantha.ritter@10gen.com'}

Message: SERVER-19438 Add the ability to mock timers underneath NetworkInterfaceASIO
Branch: master
https://github.com/mongodb/mongo/commit/32cdd0dc1d50dfc31d8007c7787be7486af7565e

Comment by Andy Schwerin [ 16/Jul/15 ]

RemoteCommandRequest has deadline information in it, already.

Comment by Adam Midvidy [ 16/Jul/15 ]

kaloian.manassiev and schwerin, I think we are going to want to change the signature of startCommand to take a deadline instead of specifying a global timeout for the connection pool as is currently done.

We can also delay this work until NetworkInterfaceASIO is the default so we don't have to implement it in ThreadPoolTaskExecutor as well

Comment by Charlie Page [ 16/Jul/15 ]

If we are going to do this we need it to be a setting. Otherwise, we are assuming all networks are like ours. That usually isn't true in practice.

Generated at Thu Feb 08 03:50:58 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.