Definition
cloneCollectionAsCappedThe
cloneCollectionAsCappedcommand creates a new capped collection from an existing, non-capped collection within the same database. The operation does not affect the original non-capped collection.The command has the following syntax:
{ cloneCollectionAsCapped: <existing collection>, toCollection: <capped collection>, size: <capped size>, writeConcern: <document>, comment: <any> } The command takes the following fields:
FieldDescriptioncloneCollectionAsCapped
The name of the existing collection to copy.
toCollection
The name of the new capped collection to create.
The name of the new capped collection must be distinct and cannot be the same as that of the original existing collection.
size
The maximum size,in bytes, for the capped collection.
writeConcern
Optional. A document expressing the write concern of the
dropcommand. Omit to use the default write concern.commentOptional. A user-provided comment to attach to this command. Once set, this comment appears alongside records of this command in the following locations:
mongod log messages, in the
attr.command.cursor.commentfield.Database profiler output, in the
command.commentfield.currentOpoutput, in thecommand.commentfield.
A comment can be any valid BSON type (string, integer, object, array, etc).
New in version 4.4.
The command copies an
existing collectionand creates a newcapped collectionwith a maximum size specified by thecapped sizein bytes.To replace the original non-capped collection with a capped collection, use the
convertToCappedcommand.
Behavior
If the capped size is less than the size of the source collection,
then not all documents in the source collection will exist in the destination
capped collection.
This holds a database exclusive lock for the duration of the operation. Other operations which lock the same database will be blocked until the operation completes. See What locks are taken by some common client operations? for operations that lock the database.