summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/database_cloner.h
diff options
context:
space:
mode:
authorScott Hernandez <scotthernandez@gmail.com>2016-07-07 12:22:59 -0400
committerScott Hernandez <scotthernandez@gmail.com>2016-07-08 07:31:15 -0400
commit2addaf9a63c60e2311e266c11ad1bcdb12210d0b (patch)
tree810d2e82fb9267ead47a48402664bf9d9fe81ba5 /src/mongo/db/repl/database_cloner.h
parentf02e6220149ed88394758bd4d53f8c615961ede0 (diff)
downloadmongo-2addaf9a63c60e2311e266c11ad1bcdb12210d0b.tar.gz
SERVER-9115: cloner stats and reporting
Diffstat (limited to 'src/mongo/db/repl/database_cloner.h')
-rw-r--r--src/mongo/db/repl/database_cloner.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/mongo/db/repl/database_cloner.h b/src/mongo/db/repl/database_cloner.h
index 82d7d7a6523..98c8bfe4568 100644
--- a/src/mongo/db/repl/database_cloner.h
+++ b/src/mongo/db/repl/database_cloner.h
@@ -58,6 +58,16 @@ class DatabaseCloner : public BaseCloner {
MONGO_DISALLOW_COPYING(DatabaseCloner);
public:
+ struct Stats {
+ Date_t start;
+ Date_t end;
+ size_t collections{0};
+ size_t clonedCollections{0};
+
+ std::string toString() const;
+ BSONObj toBSON() const;
+ };
+
/**
* Predicate used on the collection info objects returned by listCollections.
* Each collection info is represented by a document in the following format:
@@ -122,6 +132,8 @@ public:
void wait() override;
+ DatabaseCloner::Stats getStats() const;
+
//
// Testing only functions below.
//
@@ -204,6 +216,7 @@ private:
CollectionCloner::ScheduleDbWorkFn
_scheduleDbWorkFn; // (RT) Function for scheduling database work using the executor.
StartCollectionClonerFn _startCollectionCloner; // (RT)
+ Stats _stats; // (M) Stats about what this instance did.
};
} // namespace repl