summaryrefslogtreecommitdiff
path: root/src/mongo/platform
Commit message (Collapse)AuthorAgeFilesLines
* SERVER-47505 Fix ifndef typo in platform-independent pauseBen Caimano2020-04-131-1/+1
|
* SERVER-46503 inline namespace mongo::literalsBilly Donahue2020-03-251-0/+4
|
* SERVER-46461 Make static in getDiagnosticListenerState() immortal to fix ↵Henrik Edin2020-02-281-2/+3
| | | | destruction order issues during shutdown
* SERVER-46041 Add DiagnosticListener/WaitListener LSAN suppressionsBen Caimano2020-02-251-2/+2
| | | | | This commit also adds a new opt=off Ubuntu 18.04 builder to better ensure dev environments function correctly.
* SERVER-46197 Make build flag to disable diagnostic latchesBen Caimano2020-02-243-13/+30
|
* SERVER-45567 removing util/log.h where I canGabriel Russell2020-02-216-6/+0
| | | | | | | o converting some log lines that were missed o fixing some missing includes create mode 100644 src/mongo/transport/ismaster_metrics.cpp
* SERVER-45869 more automatically converted structuredGabriel Russell2020-02-201-10/+21
|
* SERVER-45592 Raise Windows runtime minimum to Windows 10/Windows 2016 for ↵Mark Benvenuto2020-02-141-12/+12
| | | | MongoDB 4.4
* SERVER-45869 automatically converted structured loggingGabriel Russell2020-02-135-27/+51
|
* SERVER-45793 Improve mongo::Mutex contractBen Caimano2020-01-311-1/+3
| | | | This additional commit fixes an ASAN failure.
* SERVER-45793 Improve mongo::Mutex contractBen Caimano2020-01-312-83/+101
|
* Revert "SERVER-45793 Improve mongo::Mutex contract"Ben Caimano2020-01-302-101/+83
| | | | This reverts commit 695146e648e032e04d97bb0b4de873272c242f04.
* SERVER-45793 Improve mongo::Mutex contractBen Caimano2020-01-292-83/+101
|
* SERVER-45691 Change Mutex::LockListeners to use a std::vector againBen Caimano2020-01-222-10/+56
|
* SERVER-43945 Expose out of order latch acquisitions in serverStatusBen Caimano2019-12-164-78/+251
| | | | | | | | This review does several related things: - Modifies the Mutex type to have one Identity object per invocation context - Adds a latchAnalysis field to serverStatus - Officially turns on CI-only failure for acq level violations - Changes a few acq level declarations to be more permissive
* SERVER-44546 Remove mobile variants and embedded benchmarksAndrew Morrow2019-12-097-210/+0
|
* SERVER-44746 Fix LatchAnalyzerTestRahul Sundararaman2019-12-022-0/+13
|
* SERVER-42897 Validate base-level latchesRahul Sundararaman2019-11-192-31/+56
|
* SERVER-44059 Make _makeCoefficientLow in decimal128.h staticSpencer Jackson2019-10-241-1/+1
|
* SERVER-42967 SERVER-42895 SERVER-44086 Expand DiagnosticInfo hooks in ↵Ben Caimano2019-10-216-318/+89
| | | | | | | | | | | Interruptible and Mutex This commit: - Adds Listener hooks for Interruptible - Expands Listener hooks for Mutex - Updates the DiagnosticInfo and its tests to use the new hooks - Removes stacktracing pieces from DiagnosticInfo and its tests - Removes mongo::ConditionVariable entirely in favor of Interruptible
* SERVER-42894 Create SourceLocation type and related macrosBen Caimano2019-10-174-0/+385
|
* SERVER-43641 upgrade random.hBilly Donahue2019-10-093-157/+255
| | | | This reverts commit a40b196bd3cecd0b66a6323f57e6f08efe0af392.
* SERVER-43699 $mod should not overflow for large negative valuesBernard Gorman2019-10-062-0/+26
|
* Revert "SERVER-43641 upgrade random.h"James Wahlin2019-10-023-255/+157
| | | | This reverts commit 96da177c6ae7b7ed0f29983ad033d8a59524b0b2.
* SERVER-43175 platform/endian.h refreshBilly Donahue2019-10-025-689/+349
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a very low-level bare metal header, and should ideally #include only std headers. - Remove Decimal128 dependency from endian.h. Decimal128 doesn't need endian conversions, and makes endian.h transitively include several higher-level mongo specifics. Current conversions are underspecified and mathematically incorrect or at least ambiguous. They swap the order within each of the low64 and high64 fields, but don't swap them with each other. This is behavior needed only by one spot in db/pipeline/value.cpp to deserialize NumberDecimal, so we can just inline the behavior there and remove it from endian.h. - Remove MONGO_CONFIG_BYTE_ORDER from config.h. The running compiler holds the ultimate truth on what the target endianness is (available via _BYTE_ORDER_). We should not read it from a config header. The names exported into C++ code for the endian possibilities can be changed to line up with those in C++20's std::endian {big,little,native} enum. This eliminates the Scons<=>C++ bridge protocol of "1234" and "4321" magic numbers. Scons will talk to the compiler, not directly to the code. - Use enum expressions (including if constexpr) rather than #if for branching on endianness. This makes bit-rot of unexecuted paths less likely, and is just cleaner C++. - Remove bswap_slow variants. All supported compilers have builtin bswap operations. Can reduce to a simple MSVC vs GCC branching. All compilers have a builtin, so remove the bswap_slow" implementation. - Don't need all the push_macro / pop_macro stuff, or really any macros at all. Just rely on inline C++ functions. These optimize to the same thing. - Don't need ByteOrderConverter or IntegralTypeMap traits either. Simpler metaprogramming based only on sizeof will work fine. All in all we can remove about 400 lines of old code here and shave some low-level edges off of the dependency graph. - benchmark
* SERVER-43641 upgrade random.hBilly Donahue2019-10-023-157/+255
| | | | | | | | | | | | | | | | | | | | | Respecify PseudoRandom and SecureRandom as template instances of a `mongo::RandomBase<Urbg>` (Urbg is a UniformRandomBitGenerator). They will only vary in which algorithm they use for their source bits, and should otherwise support the same exact operations (e.g. `nextCanonicalDouble`). Fix range and stats errors in the implementations of those RandomBase methods, and specify them in terms of the vetted `<random>` facilities. Test uniformity of nextInt32(max), which uses an inappropriate ( x % max) operation. Verify that refactor fixes this issue. Just keep a shared urandom file descriptor open. SecureRandom add fill, remove create, fix callers Obsoletes SERVER-43643 Re: SecureRandom 8kiB buffering
* SERVER-42165 Replace uses of stdx::mutex with mongo::MutexBen Caimano2019-09-175-33/+73
|
* SERVER-42595 Refactor failpoint in curop to fix jstestBen Caimano2019-09-172-14/+4
|
* SERVER-42893 fix testBenety Goh2019-09-141-1/+1
|
* SERVER-42893 Create MONGO_MAKE_LATCH macro for latch initializationBen Caimano2019-09-132-3/+42
|
* SERVER-43032 cast differently to fix Windows build of unit testBilly Donahue2019-09-041-1/+1
|
* SERVER-43032 Revise platform/overflow_arithmetic_test.cppBilly Donahue2019-09-041-123/+128
|
* SERVER-43032 simplify overflow_arithmetic.hBilly Donahue2019-08-282-118/+45
|
* SERVER-29474 Fix ODR violations from anonymous namespace in headers.ADAM David Alan Martin2019-08-232-3396/+3365
| | | | | | A few headers are special; they aren't really multiply included headers. Those headers still hold their anonymous namespace blocks.
* SERVER-42952 Do not use inline static unique_ptrMark Benvenuto2019-08-212-1/+3
|
* SERVER-42492 Fix lintGregory Wlodarek2019-08-211-1/+1
|
* SERVER-42492 Attach DiagnosticInfo on long mongo::ConditionVariable::wait()Rahul Sundararaman2019-08-202-35/+105
|
* SERVER-41961 Remove the `NOINLINE_DECL` and replace with ↵ADAM David Alan Martin2019-08-153-0/+11
| | | | | | `MONGO_COMPILER_NOINLINE` Also removed the `PACKED_DECL`, since it isn't used.
* SERVER-42363 Add test for backtrace on $currentOpRahul Sundararaman2019-07-312-0/+6
|
* SERVER-40160 Remove `if_constexpr.h` header.ADAM David Alan Martin2019-07-271-4/+2
| | | | | | | This header circumvented bad formatting which `clang-format-3.8` imparted to `if constexpr`. Now `clang-format-7.0.1` imparts a reasonable format to `if constexpr` so this header is not needed anymore.
* SERVER-41772 Apply clang-format 7.0.1 to the codebaseclang-format-7.0.12019-07-279-15/+14
|
* SERVER-41358 Created condition_variable polyfillShaileja Jain2019-07-244-0/+209
|
* SERVER-41362 Attach diagnostic captures to OperationContextsRahul Sundararaman2019-07-234-9/+30
|
* SERVER-36242 Optionally use libunwind for backtracesA. Jesse Jiryu Davis2019-07-172-0/+2
|
* SERVER-41357 fix lintBenety Goh2019-07-103-3/+3
|
* SERVER-41357 Add mongo::mutex polyfillRahul Sundararaman2019-07-104-3/+156
|
* SERVER-41425 operator"" _dec128 for Decimal128 literalsBilly Donahue2019-06-282-39/+72
| | | | Also add unary operator+, operator-.
* SERVER-24374 Make Decimal128 integer ctors constexprBilly Donahue2019-06-273-122/+150
| | | | | | | - avoid signed overflow and integer promotion - no std::signbit, avoid cast warnings in abs - restore libbase->intelfp dependency back to public LIDEP - volatile test
* SERVER-7143 replace standard library number parsing with custom NumberParserNathan Brown2019-06-272-19/+33
|
* SERVER-41691 add USDT language-level abstractionAlya Berciu2019-06-201-0/+68
|