diff --git a/db/jsobj.cpp b/db/jsobj.cpp index b7175f82edd..03461c5d917 100644 --- a/db/jsobj.cpp +++ b/db/jsobj.cpp @@ -1566,5 +1566,18 @@ namespace mongo { } } + const string BSONObjBuilder::numStrs[] = { + "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", + "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", + "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", + "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", + "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", + "50", "51", "52", "53", "54", "55", "56", "57", "58", "59", + "60", "61", "62", "63", "64", "65", "66", "67", "68", "69", + "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", + "80", "81", "82", "83", "84", "85", "86", "87", "88", "89", + "90", "91", "92", "93", "94", "95", "96", "97", "98", "99", + }; + } // namespace mongo diff --git a/db/jsobj.h b/db/jsobj.h index 951137adbc5..f09310d001b 100644 --- a/db/jsobj.h +++ b/db/jsobj.h @@ -1426,7 +1426,14 @@ namespace mongo { b.decouple(); // post done() call version. be sure jsobj frees... } + + private: + static const string numStrs[100]; // cache of 0 to 99 inclusive + public: static string numStr( int i ) { + if (i>=0 && i<100) + return numStrs[i]; + stringstream o; o << i; return o.str();