-
Type: Technical Debt
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Not Applicable
-
Storage Engines
-
StorEng - Defined Pipeline
The type WT_SPINLOCK can be configured at build time to be one of 4 variations:
- Custom spinlock implementation (NOT pthread_spin_lock).
- Windows critical section with spinlock count : effectively mixed semantics.
- POSIX thread mutex
- POSIX thread adaptive mutex
By default on systems that support posix mutexes we default to using a plain posix mutex, this includes when built as part of mongodb.
As spinlock identifies a specific type of lock behavior, this name is misleading in the general case.
First step:
Identify if we can (no name collision) and want to use an abstract name such as WT_LOCK, or if we think the lock types should reflect their implementation.