command_cursor
– Tools for iterating over MongoDB command results¶
CommandCursor class to iterate over command results.
- class pymongo.command_cursor.CommandCursor(collection, cursor_info, address, retrieved=0, batch_size=0, max_await_time_ms=None, session=None, explicit_session=False)¶
Create a new command cursor.
The parameter ‘retrieved’ is unused.
- property address¶
The (host, port) of the server used, or None.
New in version 3.0.
- property alive¶
Does this cursor have the potential to return more data?
Even if
alive
isTrue
,next()
can raiseStopIteration
. Best to use a for loop:for doc in collection.aggregate(pipeline): print(doc)
- batch_size(batch_size)¶
Limits the number of documents returned in one batch. Each batch requires a round trip to the server. It can be adjusted to optimize performance and limit data transfer.
Note
batch_size can not override MongoDB’s internal limits on the amount of data it will return to the client in a single batch (i.e if you set batch size to 1,000,000,000, MongoDB will currently only return 4-16MB of results per batch).
Raises
TypeError
if batch_size is not an integer. RaisesValueError
if batch_size is less than0
.- Parameters
batch_size: The size of each batch of results requested.
- close()¶
Explicitly close / kill this cursor.
- property cursor_id¶
Returns the id of the cursor.
- next()¶
Advance the cursor.
- property session¶
The cursor’s
ClientSession
, or None.New in version 3.6.
- class pymongo.command_cursor.RawBatchCommandCursor(collection, cursor_info, address, retrieved=0, batch_size=0, max_await_time_ms=None, session=None, explicit_session=False)¶
Create a new cursor / iterator over raw batches of BSON data.
Should not be called directly by application developers - see
aggregate_raw_batches()
instead.See also
The MongoDB documentation on cursors.