summaryrefslogtreecommitdiff
path: root/src/mongo/db/storage/mmap_v1/record_store_v1_simple.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/storage/mmap_v1/record_store_v1_simple.h')
-rw-r--r--src/mongo/db/storage/mmap_v1/record_store_v1_simple.h127
1 files changed, 66 insertions, 61 deletions
diff --git a/src/mongo/db/storage/mmap_v1/record_store_v1_simple.h b/src/mongo/db/storage/mmap_v1/record_store_v1_simple.h
index a108305492a..9ab6ba86f78 100644
--- a/src/mongo/db/storage/mmap_v1/record_store_v1_simple.h
+++ b/src/mongo/db/storage/mmap_v1/record_store_v1_simple.h
@@ -36,65 +36,70 @@
namespace mongo {
- class SimpleRecordStoreV1Cursor;
-
- // used by index and original collections
- class SimpleRecordStoreV1 : public RecordStoreV1Base {
- public:
- SimpleRecordStoreV1( OperationContext* txn,
- StringData ns,
- RecordStoreV1MetaData* details,
- ExtentManager* em,
- bool isSystemIndexes );
-
- virtual ~SimpleRecordStoreV1();
-
- const char* name() const { return "SimpleRecordStoreV1"; }
-
- std::unique_ptr<RecordCursor> getCursor(OperationContext* txn, bool forward) const final;
-
- std::vector<std::unique_ptr<RecordCursor>> getManyCursors(
- OperationContext* txn) const final;
-
- virtual Status truncate(OperationContext* txn);
-
- virtual void temp_cappedTruncateAfter(OperationContext* txn, RecordId end, bool inclusive) {
- invariant(!"cappedTruncateAfter not supported");
- }
-
- virtual bool compactSupported() const { return true; }
- virtual bool compactsInPlace() const { return false; }
- virtual Status compact( OperationContext* txn,
- RecordStoreCompactAdaptor* adaptor,
- const CompactOptions* options,
- CompactStats* stats );
-
- protected:
- virtual bool isCapped() const { return false; }
- virtual bool shouldPadInserts() const {
- return !_details->isUserFlagSet(CollectionOptions::Flag_NoPadding);
- }
-
- virtual StatusWith<DiskLoc> allocRecord( OperationContext* txn,
- int lengthWithHeaders,
- bool enforceQuota );
-
- virtual void addDeletedRec(OperationContext* txn,
- const DiskLoc& dloc);
- private:
- DiskLoc _allocFromExistingExtents( OperationContext* txn,
- int lengthWithHeaders );
-
- void _compactExtent(OperationContext* txn,
- const DiskLoc diskloc,
- int extentNumber,
- RecordStoreCompactAdaptor* adaptor,
- const CompactOptions* compactOptions,
- CompactStats* stats );
-
- bool _normalCollection;
-
- friend class SimpleRecordStoreV1Iterator;
- };
-
+class SimpleRecordStoreV1Cursor;
+
+// used by index and original collections
+class SimpleRecordStoreV1 : public RecordStoreV1Base {
+public:
+ SimpleRecordStoreV1(OperationContext* txn,
+ StringData ns,
+ RecordStoreV1MetaData* details,
+ ExtentManager* em,
+ bool isSystemIndexes);
+
+ virtual ~SimpleRecordStoreV1();
+
+ const char* name() const {
+ return "SimpleRecordStoreV1";
+ }
+
+ std::unique_ptr<RecordCursor> getCursor(OperationContext* txn, bool forward) const final;
+
+ std::vector<std::unique_ptr<RecordCursor>> getManyCursors(OperationContext* txn) const final;
+
+ virtual Status truncate(OperationContext* txn);
+
+ virtual void temp_cappedTruncateAfter(OperationContext* txn, RecordId end, bool inclusive) {
+ invariant(!"cappedTruncateAfter not supported");
+ }
+
+ virtual bool compactSupported() const {
+ return true;
+ }
+ virtual bool compactsInPlace() const {
+ return false;
+ }
+ virtual Status compact(OperationContext* txn,
+ RecordStoreCompactAdaptor* adaptor,
+ const CompactOptions* options,
+ CompactStats* stats);
+
+protected:
+ virtual bool isCapped() const {
+ return false;
+ }
+ virtual bool shouldPadInserts() const {
+ return !_details->isUserFlagSet(CollectionOptions::Flag_NoPadding);
+ }
+
+ virtual StatusWith<DiskLoc> allocRecord(OperationContext* txn,
+ int lengthWithHeaders,
+ bool enforceQuota);
+
+ virtual void addDeletedRec(OperationContext* txn, const DiskLoc& dloc);
+
+private:
+ DiskLoc _allocFromExistingExtents(OperationContext* txn, int lengthWithHeaders);
+
+ void _compactExtent(OperationContext* txn,
+ const DiskLoc diskloc,
+ int extentNumber,
+ RecordStoreCompactAdaptor* adaptor,
+ const CompactOptions* compactOptions,
+ CompactStats* stats);
+
+ bool _normalCollection;
+
+ friend class SimpleRecordStoreV1Iterator;
+};
}