According to http://msdn.microsoft.com/en-us/library/windows/desktop/aa365247%28v=vs.85%29.aspx Windows does not support ASCII control characters. This manifests when creating a database, with any storage engine and using directoryperdb, which contains an ASCII control character in its name.
On mmapv1, this results in:
2015-01-14T18:47:59.658+0000 I NETWORK [initandlisten] connection accepted from 127.0.0.1:49624 #2 (1 connection now open)
2015-01-14T18:47:59.662+0000 I - [conn2] Assertion: 14043:create dir for db caught exception exception: boost::filesystem::create_directory: The filename, directory name, or volume label syntax is incorrect: "db1\"
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\util\stacktrace_win.cpp(175) mongo::printStackTrace+0x43
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\util\log.cpp(135) mongo::logContext+0xd7
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\util\assert_util.cpp(214) mongo::msgasserted+0x114
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\util\assert_util.cpp(206) mongo::msgasserted+0x1a
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\storage\mmap_v1\catalog\namespace_index.cpp(150) `mongo::NamespaceIndex::maybeMkdir'::`1'::catch$0+0xef
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe f:\dd\vctools\crt\crtw32\eh\amd64\handlers.asm(51) _CallSettingFrame+0x20
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe f:\dd\vctools\crt\crtw32\eh\frame.cpp(1281) __CxxCallCatchBlock+0x162
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] ntdll.dll RtlRestoreContext+0x2e2
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\storage\mmap_v1\catalog\namespace_index.cpp(150) mongo::NamespaceIndex::maybeMkdir+0xe5
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\storage\mmap_v1\catalog\namespace_index.cpp(187) mongo::NamespaceIndex::init+0x2cf
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\storage\mmap_v1\mmap_v1_database_catalog_entry.cpp(178) mongo::MMAPV1DatabaseCatalogEntry::MMAPV1DatabaseCatalogEntry+0x1b5
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\storage\mmap_v1\mmap_v1_engine.cpp(266) mongo::MMAPV1Engine::getDatabaseCatalogEntry+0x522
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\catalog\database_holder.cpp(117) mongo::DatabaseHolder::openDb+0x229
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\client.cpp(313) mongo::Client::Context::_finishInit+0x185
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\client.cpp(203) mongo::Client::Context::Context+0x74
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\commands\write_commands\batch_executor.cpp(998) mongo::WriteBatchExecutor::ExecInsertsState::_lockAndCheckImpl+0x390
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\commands\write_commands\batch_executor.cpp(1058) mongo::insertOne+0xec
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\commands\write_commands\batch_executor.cpp(1092) mongo::WriteBatchExecutor::execOneInsert+0x120
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\commands\write_commands\batch_executor.cpp(879) mongo::WriteBatchExecutor::execInserts+0x175
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\commands\write_commands\batch_executor.cpp(760) mongo::WriteBatchExecutor::bulkExecute+0x52
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\commands\write_commands\batch_executor.cpp(275) mongo::WriteBatchExecutor::executeBatch+0x426
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\commands\write_commands\write_commands.cpp(146) mongo::WriteCmd::run+0x178
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\dbcommands.cpp(1252) mongo::_execCommand+0x72
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\dbcommands.cpp(1470) mongo::Command::execCommand+0xf01
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\dbcommands.cpp(1545) mongo::_runCommands+0x413
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\query\find.cpp(135) mongo::runCommands+0x43
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\query\find.cpp(569) mongo::runQuery+0x405
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\instance.cpp(212) mongo::receivedQuery+0x2df
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\instance.cpp(395) mongo::assembleResponse+0x36c
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\db\db.cpp(197) mongo::MyMessageHandler::process+0xb6
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\mongo\util\net\message_server_port.cpp(227) mongo::PortMessageServer::handleIncomingMsg+0x670
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe ...\src\third_party\boost\libs\thread\src\win32\thread.cpp(185) boost::`anonymous namespace'::thread_start_function+0x21
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe f:\dd\vctools\crt\crtw32\startup\threadex.c(376) _callthreadstartex+0x25
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] mongod.exe f:\dd\vctools\crt\crtw32\startup\threadex.c(359) _threadstartex+0xe7
2015-01-14T18:48:00.174+0000 I CONTROL [conn2] kernel32.dll BaseThreadInitThunk+0xd
2015-01-14T18:48:00.174+0000 I CONTROL [conn2]
2015-01-14T18:48:00.175+0000 W STORAGE [conn2] database db1 could not be opened due to DBException 14043: create dir for db caught exception exception: boost::filesystem::create_directory: The filename, directory name, or volume label syntax is incorrect: "db1\"
2015-01-14T18:48:00.175+0000 I WRITE [conn2] insert .col query: { _id: ObjectId('54b6b9dfccf71b60db56bfc9'), data: true } ninserted:0 keyUpdates:0 writeConflicts:0 exception: create dir for db caught exception exception: boost::filesystem::create_directory: The filename, directory name, or volume label syntax is incorrect: "db1\" code:14043 numYields:0 513ms
2015-01-14T18:48:00.175+0000 I COMMAND [conn2] command .$cmd command: insert { insert: "col", documents: [ { _id: ObjectId('54b6b9dfccf71b60db56bfc9'), data: true } ], ordered: true, writeConcern: {} } keyUpdates:0 writeConflicts:0 numYields:0 reslen:258 513ms
2015-01-14T18:48:02.213+0000 I NETWORK [conn2] end connection 127.0.0.1:49624 (0 connections now open)
On WiredTiger:
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\util\stacktrace_win.cpp(175) mongo::printStackTrace+0x43
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\util\log.cpp(135) mongo::logContext+0xd7
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\util\assert_util.cpp(214) mongo::msgasserted+0x114
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\util\assert_util.cpp(206) mongo::msgasserted+0x1a
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\db\catalog\database.cpp(69) mongo::massertNamespaceNotIndex+0x1cb
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\db\catalog\database.cpp(486) mongo::Database::createCollection+0x8f
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\db\commands\write_commands\batch_executor.cpp(1012) mongo::WriteBatchExecutor::ExecInsertsState::_lockAndCheckImpl+0x4b4
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\db\commands\write_commands\batch_executor.cpp(1058) mongo::insertOne+0xec
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\db\commands\write_commands\batch_executor.cpp(1092) mongo::WriteBatchExecutor::execOneInsert+0x120
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\db\commands\write_commands\batch_executor.cpp(879) mongo::WriteBatchExecutor::execInserts+0x175
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\db\commands\write_commands\batch_executor.cpp(760) mongo::WriteBatchExecutor::bulkExecute+0x52
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\db\commands\write_commands\batch_executor.cpp(275) mongo::WriteBatchExecutor::executeBatch+0x426
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\db\commands\write_commands\write_commands.cpp(146) mongo::WriteCmd::run+0x178
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\db\dbcommands.cpp(1252) mongo::_execCommand+0x72
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\db\dbcommands.cpp(1470) mongo::Command::execCommand+0xf01
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\db\dbcommands.cpp(1545) mongo::_runCommands+0x413
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\db\query\find.cpp(135) mongo::runCommands+0x43
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\db\query\find.cpp(569) mongo::runQuery+0x405
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\db\instance.cpp(212) mongo::receivedQuery+0x2df
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\db\instance.cpp(395) mongo::assembleResponse+0x36c
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\db\db.cpp(197) mongo::MyMessageHandler::process+0xb6
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\mongo\util\net\message_server_port.cpp(227) mongo::PortMessageServer::handleIncomingMsg+0x670
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe ...\src\third_party\boost\libs\thread\src\win32\thread.cpp(185) boost::`anonymous namespace'::thread_start_function+0x21
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe f:\dd\vctools\crt\crtw32\startup\threadex.c(376) _callthreadstartex+0x25
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] mongod.exe f:\dd\vctools\crt\crtw32\startup\threadex.c(359) _threadstartex+0xe7
2015-01-14T19:43:59.338+0000 I CONTROL [conn1] kernel32.dll BaseThreadInitThunk+0xd
2015-01-14T19:43:59.338+0000 I CONTROL [conn1]
2015-01-14T19:43:59.339+0000 I WRITE [conn1] insert $.col query: { _id: ObjectId('54b6c6fe63749edfcc25544b') } ninserted:0 keyUpdates:0 writeConflicts:0 exception: cannot do createCollection on namespace with a $ in it: $.col code:17320 numYields:0 499ms
2015-01-14T19:43:59.339+0000 I COMMAND [conn1] command $.$cmd command: insert { insert: "col", documents: [ { _id: ObjectId('54b6c6fe63749edfcc25544b') } ], ordered: true } keyUpdates:0 writeConflicts:0 numYields:0 reslen:161 499ms
2015-01-14T19:46:19.093+0000 I NETWORK [initandlisten] connection accepted from 127.0.0.1:49693 #2 (2 connections now open)
2015-01-14T19:46:19.099+0000 E STORAGE [conn2] error creating path db1\ boost::filesystem::create_directory: The filename, directory name, or volume label syntax is incorrect: "db1\"
2015-01-14T19:46:19.099+0000 E NETWORK [conn2] Uncaught std::exception: boost::filesystem::create_directory: The filename, directory name, or volume label syntax is incorrect: "db1\", terminating
2015-01-14T19:46:19.099+0000 I CONTROL [conn2] dbexit: rc: 100
To create these databases, use the attached unprintable_windows.cpp with the hex code of an unprintable ASCII control character.
- duplicates
-
SERVER-5002 Change prohibited character sets in database names
-
- Closed
-