From c86d218c92820da50d97849af2c057498d6c7283 Mon Sep 17 00:00:00 2001 From: Jason Rassi Date: Mon, 19 May 2014 16:56:55 -0400 Subject: SERVER-13976 Cloner::go() should check return value of userCreateNS (cherry picked from commit f89e280ef9946edf1904ffb91751461554be78b9) Conflicts: src/mongo/db/cloner.cpp --- src/mongo/db/cloner.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) 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 ) -- cgit v1.2.1