| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
| |
Macro ON_BLOCK_EXIT(...) now takes a single callable,
Some renames:
Dismias -> dismiss
MakeGuard => makeGuard
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add support for a generalized interruptibility facility in the server.
This offers a generalized interruptibility facility, trialed in
Future<T> and ProducerConsumerQueue<T>.
It offers 3 major concepts:
Notifyable: A type which can notified off-thread, causing a wake up
from some kind of blocking wait
Waitable: A type which is Notifyable, and also can perform work while in
a ready-to-receive notification state. static methods offer support for
running underneath condition_variable::wait's. The chief implementer is
the transport layer baton type
Interruptible: A type which can wait on condition variables, and offers:
- deadlines. This means the type integrates some sort of clock source
- interruptibility. This means the type offers a way of noticing
that it should no longer run via status or exception
Additionally, Interruptible's offer special scoped guards which
offer
- Exemption from interruption in a region defined by the lifetime
of a guard object
- Subsidiary deadlines which can trigger recursively, offering
specialized timeout and status return support.
The series of virtual types allows us to slice the interface between
opCtx and future such that opctx can use future and future can use
opctx. Additionally, cutting out more functionality allows us to flow a
noop interruptibility type which unifies our waiting behind a common
api.
|
| |
|
| |
|
|
|
|
| |
This reverts commit 2d79aaf6d2b65f0355fcaa5d368ec3c4f493495a.
|
|
|
|
| |
This reverts commit 1fa70da99c004b19b21f182b8e65edf781411c5f.
|
| |
|
| |
|
|
|
|
| |
unauthenticated connections
|
|
|
|
|
| |
Now that OP_COMMAND is dead, all remaining implementations return the same
BSONObj for data and metadata.
|
| |
|
| |
|
|
|
|
| |
Co-authored-by: Anthony Roy <anthony.roy@10gen.com>
|
| |
|
|
|
|
|
|
| |
ReplyBuilderInterface
This is to provide access to DocumentSequence returns.
|
|
|
|
|
|
|
|
|
| |
SERVER-35169 Bump wire protocol version for 4.2.
SERVER-35752 Ensure tests that rely on FCV pass after updating FCV constants.
SERVER-35163 Unblacklist tests that expect FCV version to differ between "last-stable" and "latest."
SERVER-34984 Update major_version_upgrade.js to call setFCV to the latest FCV.
SERVER-35656 Ensure a 4.0 mongos crashes upon attempting to connect to an FCV 4.2 cluster.
SERVER-35404 Re-enable the sharding_last_stable_mongos_and_mixed_shards suite.
|
| |
|
| |
|
| |
|
|
|
|
| |
StaleConfigInfo serializer
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
every unit test.
This patch does several loosely related and surprisingly hard to separate things.
1.) Make the ServiceContext class final
2.) Create a mechanism, called ConstructorActions, for running methods on
ServiceContexts immediately after they're built and immediately before they're
destroyed.
3.) Introduce / improve test fixture base classes for tests, giving them fresh
ServiceContext instances for each test case. There is one fixture for tests that
need a storage engine and another for those that do not.
4.) Make several remaining global variables SC decorations in support of (3)
5.) Replace many MONGO_INITIALIZERS that access getGlobalServiceContext with the
new constructor-actions system, which is needed for (3.)
6.) Fix up tests to use the fixtures from (3) and fix tests that silently used
different service contexts in together in a technically illegal fashion that now
breaks.
7.) Utilize (2) as necessary to simplify initialization of new ServiceContexts,
simplifying the fixtures in (3).
|
|
|
|
| |
embedded when not dragged in by sharding.
|
| |
|
|
|
|
|
|
| |
metaprogramming compactness
mark unused auto pointer
change is_same value use from {} to ::value
|
|
|
|
|
|
|
|
| |
The Authorization framework was intertwined with many subsystems and
needed to be properly abstracted in order to facilitate cutting down
on certain unnecessary dependencies in some libraries. This also
facilitates creating a reduced authorization framework for use
in embedded builds.
|
|
|
|
|
|
|
|
|
|
| |
All remaining callers are transitioned to some form of usassert. This was done
with an elaborate set of vim macros to make this tractable. Therefore it
should not be considered an example of the best way to write new code, just as
an improvement on what was there before. In particular, I couldn't easily
remove Status's that are named then only used once in uassertStatusOK, nor
could I convert the pattern of checking a StatusWith<T>'s getStatus() then
calling getValue() to just call uassertStatusOK(returnsStatusWith()).
|
|
|
|
| |
rpc/protocol
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Remove the static tables floating around at namespace scope.
break CommandHelpers::isGenericArgument into
command_generic_argument library so it doesn't have to be inline.
Some callers depend on it but would have a circularity if they
actually added db/commands to their LIBDEPS.
|
|
|
|
| |
operations
|
|
|
|
|
|
|
|
|
|
|
|
| |
The current Decorable system type-erases the most derived (Decorated)
type when registering Decorations. This is illegal as derived classes
which are no longer standard-layout can have the `Decorable` base
class reordered with respect to the base address of their storage.
This also removes the "with-owner" forms of declaring a decoration,
which caused problems with layout. The decoration handles have
been modified to provide mechanisms to get back to the owner
directly, given a pointer or reference to the decoration.
|
| |
|
|
|
|
| |
IncompatibleServerVersion errors
|
|
|
|
| |
cluster should crash
|
| |
|
| |
|
| |
|
| |
|