39 class SimpleRecordStoreV1Cursor;
48 bool isSystemIndexes);
53 return "SimpleRecordStoreV1";
56 std::unique_ptr<SeekableRecordCursor>
getCursor(OperationContext* opCtx,
57 bool forward)
const final;
59 std::vector<std::unique_ptr<RecordCursor>>
getManyCursors(OperationContext* opCtx)
const final;
64 invariant(!
"cappedTruncateAfter not supported");
87 int lengthWithHeaders,
Definition: record_store.h:663
AtomicLockStats stats
Definition: lock_state.cpp:92
virtual bool shouldPadInserts() const
Definition: record_store_v1_simple.h:82
Definition: collection_options.h:127
virtual bool isCapped() const
Definition: record_store_v1_simple.h:79
virtual bool compactsInPlace() const
Does compact() leave RecordIds alone or can they change.
Definition: record_store_v1_simple.h:70
Copyright (C) 2014 MongoDB Inc.
Definition: bson_collection_catalog_entry.cpp:38
This class iterates over a non-capped collection identified by 'ns'.
Definition: record_store_v1_simple_iterator.h:44
Definition: record_store_v1_base.h:152
OperationContext Database StringData BSONObj CollectionOptions::ParseKind bool const BSONObj &idIndex Status
Definition: database_impl.cpp:956
Definition: record_store_v1_simple.h:42
virtual Status truncate(OperationContext *opCtx)
removes all Records
Definition: record_store_v1_simple.cpp:196
represents a disk location/offset on disk in a database.
Definition: diskloc.h:53
bool inclusive
Definition: btree_interface.cpp:335
Definition: collection.h:77
std::vector< std::unique_ptr< RecordCursor > > getManyCursors(OperationContext *opCtx) const final
Returns many RecordCursors that partition the RecordStore into many disjoint sets.
Definition: record_store_v1_simple.cpp:244
std::unique_ptr< SeekableRecordCursor > getCursor(OperationContext *opCtx, bool forward) const final
Returns a new cursor over this record store.
Definition: record_store_v1_simple.cpp:239
Definition: index_key_validate.h:40
std::unique_ptr< RecordStoreV1MetaData > _details
Definition: record_store_v1_base.h:314
virtual StatusWith< DiskLoc > allocRecord(OperationContext *opCtx, int lengthWithHeaders, bool enforceQuota)
Definition: record_store_v1_simple.cpp:148
virtual void cappedTruncateAfter(OperationContext *opCtx, RecordId end, bool inclusive)
Truncate documents newer than the document at 'end' from the capped collection.
Definition: record_store_v1_simple.h:63
virtual const std::string & ns() const
Definition: record_store.h:295
DiskLoc _allocFromExistingExtents(OperationContext *opCtx, int lengthWithHeaders)
Definition: record_store_v1_simple.cpp:85
virtual void addDeletedRec(OperationContext *opCtx, const DiskLoc &dloc)
Definition: record_store_v1_simple.cpp:231
const char * name() const
Definition: record_store_v1_simple.h:52
OperationContext Database StringData BSONObj options
Definition: database_impl.cpp:949
virtual bool compactSupported() const
does this RecordStore support the compact operation?
Definition: record_store_v1_simple.h:67
virtual ~SimpleRecordStoreV1()
Definition: record_store_v1_simple.cpp:83
Definition: collection.h:97
const RecordStoreV1MetaData * details() const
Definition: record_store_v1_base.h:231
ExtentManager basics.
Definition: extent_manager.h:64
void _compactExtent(OperationContext *opCtx, const DiskLoc diskloc, int extentNumber, RecordStoreCompactAdaptor *adaptor, const CompactOptions *compactOptions, CompactStats *stats)
Definition: record_store_v1_simple.cpp:287
bool _normalCollection
Definition: record_store_v1_simple.h:102
virtual Status compact(OperationContext *opCtx, RecordStoreCompactAdaptor *adaptor, const CompactOptions *options, CompactStats *stats)
Attempt to reduce the storage space used by this RecordStore.
Definition: record_store_v1_simple.cpp:432
Collection *const OperationContext *const opCtx
Definition: collection_impl.cpp:80
SimpleRecordStoreV1(OperationContext *opCtx, StringData ns, RecordStoreV1MetaData *details, ExtentManager *em, bool isSystemIndexes)
Definition: record_store_v1_simple.cpp:73