| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
possible
Also ensure no quadratic insert behavior into the KeyStringSet
|
| |
|
| |
|
|
|
|
|
|
| |
- Remove several legacy logger/ files
- Convert all MONGO_LOG_DEFAULT_COMPONENT to the LOGV2 version.
- Globally replace logger::{LogSeverity,LogComponent} => logv2::
|
| |
|
|
|
|
|
|
|
| |
o converting some log lines that were missed
o fixing some missing includes
create mode 100644 src/mongo/transport/ismaster_metrics.cpp
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
- fix dangling else
- all ASSERT* yield a stream expression for appending detail
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Rename utils/mongoutils/str.h => utils/str.h
Rename namespace mongoutils::str => str
Rename mongo::strcasecmp => str::caseInsensitiveCompare.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
produced by:
hits="$(git grep -n MONGO_DISALLOW_COPYING | cut -d: -f1 )"
for f in "$hits"; do
sed -i.orig '
s/^\( *\)MONGO_DISALLOW_COPYING(\(.*\));/\1\2(const \2\&) = delete;\n\1\2\& operator=(const \2\&) = delete;/;
' $f
done
|
|
|
|
|
|
| |
Remove leading comments that are just stating the filename.
Move any file-level comments below the copyright banner.
Remove leading blank lines.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Polygon geometries
|
|
|
|
|
|
| |
and Polygon geometries"
This reverts commit f24f7830d01193db30102b8381eeaf4c011d0ea9.
|
|
|
|
|
|
|
|
| |
Polygon geometries
Closes #1184
Signed-off-by: Tess Avitabile <tess.avitabile@mongodb.com>
|
|
|
|
| |
All users were converted to just use AssertionException.
|
| |
|
|
|
|
| |
This reverts commit 8204c7dacf17851057dda165e6d1638cbff70cbf.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There are numerous places in the codebase where `mongo::Status` or
`mongo::StatusWith< T >` objects are returned and never checked.
Many of these are innocuous, but many of them are potentially
severe bugs. This change introduces facilities to permit
compile-time warning of unchecked `Status` and `StatusWith` usage
on clang compilers. It introduces an `ignore` function which is
useful to state that a specific "ignored status" case was
intentional. It not presently an error, in clang builds, to
forget to check a `Status` -- this will come in a later commit.
This also introduces a `transitional_ignore` function, which allows
for easy continual auditing of the codebase for current "whitelisted"
unchecked-status instances. All present "ignored status" cases
have been marked `transitional_ignore`.
|
|
|
|
|
| |
This removes many of the remaining uses of the deprecated
`OwnedPointerVector` type.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
This reverts commit c7794350b056cdea85e1c6185a7dda4579936179.
|
|
|
|
| |
Signed-off-by: Kyle Suarez <kyle.suarez@mongodb.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The ability to specify a dotted path (e.g. "a.b") to traverse through
embedded objects and array elements isn't defined in the BSON
specification and so it doesn't belong in our BSON library.
The following functions have been defined within a 'dotted_path_support'
namespace and accept an additional BSONObj as their first argument to
replace the associated method on the BSONObj class.
- extractElementAtPath() is functionally equivalent to
BSONObj::getFieldDotted().
- extractElementAtPathOrArrayAlongPath() is functionally equivalent to
BSONObj::getFieldDottedOrArray().
- extractAllElementsAlongPath() is functionally equivalent to
BSONObj::getFieldsDotted().
- extractElementsBasedOnTemplate() is functionally equivalent to
BSONObj::extractFields().
- compareObjectsAccordingToSort() is functionally equivalent to
BSONObj::woSortOrder().
|
| |
|
|
|
|
| |
return NamespaceString
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|