ISSUE SUMMARY
On Windows 7 and 8, mongoexport crashes when documents to be exported contain a timestamp greater than 3001-01-01T07:59:59.999Z.
USER IMPACT
Documents containing these high timestamps can't be exported using mongoexport.
WORKAROUNDS
Use mongodump to dump collections with documents containing these large timestamps.
AFFECTED VERSIONS
MongoDB production releases 2.6.0 and 2.6.1 are affected by this issue.
FIX VERSION
The fix is included in the 2.6.2 production release.
RESOLUTION DETAILS
Do not attempt to convert these high timestamps to an ISO String, but export them as {"$numberLong": "<milliseconds>"} instead.
Original description
If a document contains a timestamp greater than 3001-01-01T07:59:59.999Z then mongoexport will crash attempting to export it when run on Windows. Known to occur on Windows 7 & 8.
The crash dump produced by running a debug build (and following the steps to reproduce) is as follows:
>mongoexport.exe -d test -c test connected to: 127.0.0.1 2014-04-28T17:01:01.367+1000 *** C runtime error: f:\dd\vctools\crt_bld\self_64_amd64\crt\src\wcsftime.c(589) : Assertion failed: ( ( timeptr->tm_mon >=0 ) && ( timeptr->tm_mon <= 11 ) ), terminating 2014-04-28T17:01:01.394+1000 Fatal Assertion 17006 2014-04-28T17:01:01.851+1000 mongoexport.exe ...\src\mongo\util\stacktrace.cpp(172) mongo::printStackTrace+0x5b 2014-04-28T17:01:01.860+1000 mongoexport.exe ...\src\mongo\util\log.cpp(127) mongo::logContext+0xd8 2014-04-28T17:01:01.873+1000 mongoexport.exe ...\src\mongo\util\assert_util.cpp(139) mongo::fassertFailed+0x94 2014-04-28T17:01:01.885+1000 mongoexport.exe ...\src\mongo\util\stacktrace.cpp(288) mongo::crtDebugCallback+0x107 2014-04-28T17:01:01.898+1000 mongoexport.exe f:\dd\vctools\crt_bld\self_64_amd64\crt\src\dbgrptt.c(609) _VCrtDbgReportW+0x7c1 2014-04-28T17:01:01.914+1000 mongoexport.exe f:\dd\vctools\crt_bld\self_64_amd64\crt\src\dbgrpt.c(263) _CrtDbgReportWV+0x50 2014-04-28T17:01:01.930+1000 mongoexport.exe f:\dd\vctools\crt_bld\self_64_amd64\crt\src\dbgrpt.c(279) _CrtDbgReportW+0x60 2014-04-28T17:01:01.947+1000 mongoexport.exe f:\dd\vctools\crt_bld\self_64_amd64\crt\src\wcsftime.c(589) _W_expandtime+0xaa9 2014-04-28T17:01:01.968+1000 mongoexport.exe f:\dd\vctools\crt_bld\self_64_amd64\crt\src\wcsftime.c(323) _Wcsftime_l+0x48b 2014-04-28T17:01:01.992+1000 mongoexport.exe f:\dd\vctools\crt_bld\self_64_amd64\crt\src\strftime.c(285) _Strftime_l+0x4be 2014-04-28T17:01:02.013+1000 mongoexport.exe f:\dd\vctools\crt_bld\self_64_amd64\crt\src\strftime.c(190) strftime+0x43 2014-04-28T17:01:02.033+1000 mongoexport.exe ...\src\mongo\util\time_support.cpp(125) mongo::`anonymous namespace'::_dateToISOString+0x82 2014-04-28T17:01:02.059+1000 mongoexport.exe ...\src\mongo\util\time_support.cpp(191) mongo::dateToISOStringLocal+0x5a 2014-04-28T17:01:02.085+1000 mongoexport.exe ...\src\mongo\db\jsobj.cpp(218) mongo::BSONElement::jsonString+0x12ed 2014-04-28T17:01:02.105+1000 mongoexport.exe ...\src\mongo\db\jsobj.cpp(479) mongo::BSONObj::jsonString+0x16e 2014-04-28T17:01:02.126+1000 mongoexport.exe ...\src\mongo\tools\export.cpp(224) Export::run+0xbb7 2014-04-28T17:01:02.148+1000 mongoexport.exe ...\src\mongo\tools\tool.cpp(143) mongo::Tool::main+0x4a7 2014-04-28T17:01:02.170+1000 mongoexport.exe ...\src\mongo\tools\tool.cpp(387) wmain+0xec 2014-04-28T17:01:02.188+1000 mongoexport.exe f:\dd\vctools\crt_bld\self_64_amd64\crt\src\crt0.c(241) __tmainCRTStartup+0xec 2014-04-28T17:01:02.211+1000 mongoexport.exe f:\dd\vctools\crt_bld\self_64_amd64\crt\src\crt0.c(164) wmainCRTStartup+0xe 2014-04-28T17:01:02.232+1000 2014-04-28T17:01:02.239+1000 *** unhandled exception 0x80000003 at 0x000007FC4712478A, terminating 2014-04-28T17:01:02.259+1000 *** stack trace for unhandled exception: 2014-04-28T17:01:02.709+1000 KERNELBASE.dll DebugBreak+0x2 2014-04-28T17:01:02.722+1000 mongoexport.exe ...\src\mongo\util\debug_util.cpp(48) mongo::mongo_breakpoint+0x22 2014-04-28T17:01:02.738+1000 mongoexport.exe ...\src\mongo\util\debug_util.h(65) mongo::breakpoint+0x25 2014-04-28T17:01:02.756+1000 mongoexport.exe ...\src\mongo\util\assert_util.cpp(140) mongo::fassertFailed+0x99 2014-04-28T17:01:02.775+1000 mongoexport.exe ...\src\mongo\util\stacktrace.cpp(288) mongo::crtDebugCallback+0x107 2014-04-28T17:01:02.797+1000 mongoexport.exe f:\dd\vctools\crt_bld\self_64_amd64\crt\src\dbgrptt.c(609) _VCrtDbgReportW+0x7c1 2014-04-28T17:01:02.815+1000 mongoexport.exe f:\dd\vctools\crt_bld\self_64_amd64\crt\src\dbgrpt.c(263) _CrtDbgReportWV+0x50 2014-04-28T17:01:02.835+1000 mongoexport.exe f:\dd\vctools\crt_bld\self_64_amd64\crt\src\dbgrpt.c(279) _CrtDbgReportW+0x60 2014-04-28T17:01:02.857+1000 mongoexport.exe f:\dd\vctools\crt_bld\self_64_amd64\crt\src\wcsftime.c(589) _W_expandtime+0xaa9 2014-04-28T17:01:02.879+1000 mongoexport.exe f:\dd\vctools\crt_bld\self_64_amd64\crt\src\wcsftime.c(323) _Wcsftime_l+0x48b 2014-04-28T17:01:02.901+1000 mongoexport.exe f:\dd\vctools\crt_bld\self_64_amd64\crt\src\strftime.c(285) _Strftime_l+0x4be 2014-04-28T17:01:02.921+1000 mongoexport.exe f:\dd\vctools\crt_bld\self_64_amd64\crt\src\strftime.c(190) strftime+0x43 2014-04-28T17:01:02.941+1000 mongoexport.exe ...\src\mongo\util\time_support.cpp(125) mongo::`anonymous namespace'::_dateToISOString+0x82 2014-04-28T17:01:02.958+1000 mongoexport.exe ...\src\mongo\util\time_support.cpp(191) mongo::dateToISOStringLocal+0x5a 2014-04-28T17:01:02.971+1000 mongoexport.exe ...\src\mongo\db\jsobj.cpp(218) mongo::BSONElement::jsonString+0x12ed 2014-04-28T17:01:02.986+1000 mongoexport.exe ...\src\mongo\db\jsobj.cpp(479) mongo::BSONObj::jsonString+0x16e 2014-04-28T17:01:03.002+1000 mongoexport.exe ...\src\mongo\tools\export.cpp(224) Export::run+0xbb7 2014-04-28T17:01:03.016+1000 mongoexport.exe ...\src\mongo\tools\tool.cpp(143) mongo::Tool::main+0x4a7 2014-04-28T17:01:03.029+1000 mongoexport.exe ...\src\mongo\tools\tool.cpp(387) wmain+0xec 2014-04-28T17:01:03.044+1000 mongoexport.exe f:\dd\vctools\crt_bld\self_64_amd64\crt\src\crt0.c(241) __tmainCRTStartup+0xec 2014-04-28T17:01:03.068+1000 2014-04-28T17:01:03.074+1000 writing minidump diagnostic file C:\Users\Xarium\Documents\GitHub\mongo\mongoexport.2014-04-28T07-01-03.mdmp 2014-04-28T17:01:03.194+1000 *** immediate exit due to unhandled exception