[SERVER-36359] Improve usability of Futures with Executors Created: 30/Jul/18  Updated: 29/Oct/23  Resolved: 18/Apr/19

Status: Closed
Project: Core Server
Component/s: Internal Code
Affects Version/s: None
Fix Version/s: 4.1.11

Type: Task Priority: Major - P3
Reporter: Mathias Stearn Assignee: Mathias Stearn
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-38346 [blocked on platforms] Update transac... Closed
Duplicate
duplicates SERVER-35678 Provide a SemiFuture<T> type Closed
Backwards Compatibility: Fully Compatible
Sprint: Platforms 2018-08-13, Service Arch 2019-01-28, Service Arch 2019-03-11, Service Arch 2019-03-25, Service Arch 2019-04-08, Service Arch 2019-04-22
Participants:

 Description   

Right now it is hard to know where your continuations will run and it is easy to introduce race conditions where they will very rarely run inline if the Executor completes its tasks quickly enough.



 Comments   
Comment by Githook User [ 18/Apr/19 ]

Author:

{'name': 'Mathias Stearn', 'username': 'RedBeard0531', 'email': 'mathias@10gen.com'}

Message: SERVER-36359 Non-ready Futures don't actually complete SharedPromises
Branch: master
https://github.com/mongodb/mongo/commit/b53170282d1e314549350d7124830a2457bad5d6

Comment by Githook User [ 18/Apr/19 ]

Author:

{'name': 'Mathias Stearn', 'username': 'RedBeard0531', 'email': 'mathias@10gen.com'}

Message: SERVER-36359 Reduce compile times for future_test by using type-erasure
Branch: master
https://github.com/mongodb/mongo/commit/6569889b76f44f8c5bf39c2743b77c6716fb30bf

Comment by Githook User [ 18/Apr/19 ]

Author:

{'name': 'Mathias Stearn', 'username': 'RedBeard0531', 'email': 'mathias@10gen.com'}

Message: SERVER-36359 Add SharedSemiFuture::thenRunOn(exec) and make SSFs chainable
Branch: master
https://github.com/mongodb/mongo/commit/efc5b94e2756915e9b197f0832e40e92baa8e55a

Comment by Githook User [ 11/Apr/19 ]

Author:

{'email': 'mathias@10gen.com', 'name': 'Mathias Stearn', 'username': 'RedBeard0531'}

Message: SERVER-36359 Introduce SemiFuture<T> and ExecutorFuture<T>
Branch: master
https://github.com/mongodb/mongo/commit/f0f894395d2676c5b93fc99a978970f0ffce8127

Generated at Thu Feb 08 04:42:52 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.