diff options
author | Jason Rassi <rassi@10gen.com> | 2014-05-19 16:56:55 -0400 |
---|---|---|
committer | Dan Pasette <dan@mongodb.com> | 2014-05-24 19:37:38 -0400 |
commit | c86d218c92820da50d97849af2c057498d6c7283 (patch) | |
tree | 423fe2bedd1a92ba7f53448f2a7133cdd47cdab5 | |
parent | 81b9d6df4f2476f46a5896bafc1639c5899e3130 (diff) | |
download | mongo-c86d218c92820da50d97849af2c057498d6c7283.tar.gz |
SERVER-13976 Cloner::go() should check return value of userCreateNS
(cherry picked from commit f89e280ef9946edf1904ffb91751461554be78b9)
Conflicts:
src/mongo/db/cloner.cpp
-rw-r--r-- | src/mongo/db/cloner.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/mongo/db/cloner.cpp b/src/mongo/db/cloner.cpp index 6a03ea30906..10f911427d1 100644 --- a/src/mongo/db/cloner.cpp +++ b/src/mongo/db/cloner.cpp @@ -466,8 +466,14 @@ namespace mongo { string err; const char *toname = to_name.c_str(); /* we defer building id index for performance - building it in batch is much faster */ - userCreateNS(toname, options, err, opts.logForRepl, false); + bool createStatus = userCreateNS(toname, options, err, opts.logForRepl, false); + if ( !createStatus ) { + errmsg = str::stream() << "failed to create collection \"" << to_name << "\": " + << err; + return false; + } } + LOG(1) << "\t\t cloning " << from_name << " -> " << to_name << endl; Query q; if( opts.snapshot ) |