[SERVER-26539] Stop linking boost::thread Created: 09/Oct/16  Updated: 24/Jul/18  Resolved: 03/Aug/17

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

Type: Improvement Priority: Major - P3
Reporter: Andrew Morrow (Inactive) Assignee: Andrew Morrow (Inactive)
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
depends on SERVER-18410 Remove RWLock Closed
depends on SERVER-26537 Raise Clang, XCode and MSVC Compiler ... Closed
depends on SERVER-26538 Use C++11 thread_local for all thread... Closed
is depended on by SERVER-26540 Stop linking boost::chrono Closed
Backwards Compatibility: Fully Compatible
Participants:

 Description   

We have only a handful of usages left. The majority are for thread specific data (see SERVER-26537 and SERVER-26538). The few others are:

  • A usage of boost::timed_mutex in the WT storage engine. This will be the hardest, as std::timed_mutex doesn't arrive until C++17. This will require some thought.
  • Some usages in the db perftests, which can be removed.
  • A use of shared_mutex in 'rwlock', however that class should be going away entirely, once SERVER-18410 is fixed.
  • A usage of recursive_mutex in the SSLManager.


 Comments   
Comment by Githook User [ 10/Aug/17 ]

Author:

{'email': 'acm@mongodb.com', 'name': 'Andrew Morrow'}

Message: SERVER-26538 SERVER-26539 Detach from boost::thread

Also, use thread_local everywhere for our thread specific data needs
and remove the legacy support.
Branch: master
https://github.com/mongodb/mongo/commit/a8a1ea3b9367adb6d0b65a7da21fed89598ea093

Comment by Githook User [ 10/Aug/17 ]

Author:

{'email': 'acm@mongodb.com', 'name': 'Andrew Morrow'}

Message: SERVER-26538 SERVER-26539 Detach from boost::thread

Also, use thread_local everywhere for our thread specific data needs
and remove the legacy support.
Branch: master
https://github.com/mongodb/mongo/commit/a8a1ea3b9367adb6d0b65a7da21fed89598ea093

Comment by Andrew Morrow (Inactive) [ 16/Jun/17 ]

Kicking this out of sprint and moving to desired. This depends on SERVER-26538, but that doesn't work on Solaris, so we can't have both this and solaris.

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