MongoDB复制崩溃,无法再次启动 [英] MongoDB replication crashes and wouldn't start up again

查看:608
本文介绍了MongoDB复制崩溃,无法再次启动的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在运行于Windows Server 2008 R2的MongoDB 2.2.3碎片上进行插入操作期间,该碎片中的复制之一因日志文件而崩溃,如下所示.

During insert operations to a MongoDB 2.2.3 shard, running on Windows Server 2008 R2, one of the replications in the shard crashed down with the log files as seen below.

由于该问题似乎是由于缺少页面文件引起的,所以我尝试将其大小从8gb增加到15gb,但这并没有改变我无法启动复制的能力.

Since the issue seemed to originate from lack of the page-file, I tried doubling its size from 8gb to 15gb but that didn't change my inability to start the replication.

这是一个已知的错误吗?有解决办法吗?

Is it a known bug? Is there a solution?

如果需要任何其他信息,请发表评论.

Please comment if any additional information is required.

崩溃时登录

Wed Feb 27 09:02:03 [initandlisten] connection accepted from 192.168.159.29:53112 #16840 (14 connections now open)
Wed Feb 27 09:02:21 [conn16839] end connection 192.168.159.26:63150 (13 connections now open)
Wed Feb 27 09:02:21 [initandlisten] connection accepted from 192.168.159.26:63153 #16841 (14 connections now open)
Wed Feb 27 09:02:28 [repl writer worker 1] VirtualProtect for E:/MongoDB/data/api.62 chunk 8245 failed with errno:1455 The paging file is too small for this operation to complete. (chunk size is 67108864, address is 80d4000000) in mongo::makeChunkWritable, terminating
Wed Feb 27 09:02:28 [repl writer worker 1]  api.commhistory Fatal Assertion 16362
Wed Feb 27 09:02:33 [conn16840] end connection 192.168.159.29:53112 (13 connections now open)
Wed Feb 27 09:02:33 [initandlisten] connection accepted from 192.168.159.29:62053 #16842 (14 connections now open)

我尝试再次启动它,但是,大约20秒后,它再次崩溃并显示以下日志

Wed Feb 27 09:22:35 [rsBackgroundSync] replSet syncing to: MASB-MGO-MGO01:27017
Wed Feb 27 09:22:35 [rsSync] replSet still syncing, not yet to minValid optime 512dcba3:c
Wed Feb 27 09:22:36 [rsSyncNotifier] replset setting oplog notifier to MASB-MGO-MGO01:27017
Wed Feb 27 09:22:37 [rsHealthPoll] couldn't connect to MASB-MGO-RPL02:27017: couldn't connect to server MASB-MGO-RPL02:27017
Wed Feb 27 09:22:41 [rsHealthPoll] couldn't connect to MASB-MGO-RPL02:27017: couldn't connect to server MASB-MGO-RPL02:27017
Wed Feb 27 09:22:45 [rsHealthPoll] couldn't connect to MASB-MGO-RPL02:27017: couldn't connect to server MASB-MGO-RPL02:27017
Wed Feb 27 09:22:46 [repl writer worker 1] VirtualProtect for E:/MongoDB/data/api.68 chunk 10164 failed with errno:1455 The paging file is too small for this operation to complete. (chunk size is 67108864, address is 9ed0000000) in mongo::makeChunkWritable, terminating
Wed Feb 27 09:22:46 [repl writer worker 1]  api.commhistory Fatal Assertion 16362
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\mongo\util\stacktrace.cpp(182)                           mongo::printStackTrace+0x3e
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\mongo\util\assert_util.cpp(126)                          mongo::fassertFailed+0x43
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\mongo\util\mmap_win.cpp(264)                             mongo::makeChunkWritable+0x342
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\mongo\util\mmap.h(274)                                   mongo::MemoryMappedFile::makeWritable+0x56
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\mongo\db\dur_commitjob.cpp(93)                           mongo::dur::DurableImpl::declareWriteIntent+0x5f
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\mongo\db\dur.cpp(239)                                    mongo::dur::DurableImpl::writingAtOffset+0x18
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\mongo\db\btree.cpp(406)                                  mongo::BucketBasics<mongo::BtreeData_V1>::basicInsert+0xcd
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\mongo\db\btree.cpp(1309)                                 mongo::BtreeBucket<mongo::BtreeData_V1>::insertHere+0xa0
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\mongo\db\index_insertion_continuation.h(66)              mongo::IndexInsertionContinuationImpl<mongo::BtreeData_V1>::doIndexInsertionWrites+0xda
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\mongo\db\index_update.cpp(146)                           mongo::indexRecordUsingTwoSteps+0x77a
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\mongo\db\pdfile.cpp(1546)                                mongo::DataFileMgr::insert+0x845
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\mongo\db\pdfile.cpp(1273)                                mongo::DataFileMgr::insertWithObjMod+0x48
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\mongo\db\ops\update.cpp(203)                             mongo::_updateObjects+0x4c2
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\mongo\db\oplog.cpp(780)                                  mongo::applyOperation_inlock+0x507
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\mongo\db\repl\rs_sync.cpp(84)                            mongo::replset::SyncTail::syncApply+0x245
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\mongo\db\repl\rs_sync.cpp(121)                           mongo::replset::multiSyncApply+0x65
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\mongo\util\concurrency\thread_pool.cpp(66)               mongo::threadpool::Worker::loop+0x94
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  ...\src\third_party\boost\libs\thread\src\win32\thread.cpp(180)  boost::`anonymous namespace'::thread_start_function+0x21
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  f:\dd\vctools\crt_bld\self_64_amd64\crt\src\threadex.c(314)      _callthreadstartex+0x17
Wed Feb 27 09:22:48 [repl writer worker 1] mongod.exe  f:\dd\vctools\crt_bld\self_64_amd64\crt\src\threadex.c(292)      _threadstartex+0x7f
Wed Feb 27 09:22:48 [repl writer worker 1] 

***aborting after fassert() failure


Wed Feb 27 09:23:44 [initandlisten] connection accepted from 192.168.159.26:64223 #17 (14 connections now open)
Wed Feb 27 09:23:44 [conn3] end connection 192.168.159.24:5105 (13 connections now open)
Wed Feb 27 09:23:44 [conn10] end connection 192.168.159.25:51584 (12 connections now open)
Wed Feb 27 09:23:44 [conn11] end connection 192.168.159.22:50242 (11 connections now open)
Wed Feb 27 09:23:44 [conn15] end connection 192.168.159.26:64205 (10 connections now open)
Wed Feb 27 09:23:44 [initandlisten] connection accepted from 192.168.159.25:51595 #18 (11 connections now open)
Wed Feb 27 09:23:44 [conn5] end connection 192.168.159.23:54657 (9 connections now open)
Wed Feb 27 09:23:44 [initandlisten] connection accepted from 192.168.159.24:5118 #19 (11 connections now open)
Wed Feb 27 09:23:44 [initandlisten] connection accepted from 192.168.159.23:54671 #20 (12 connections now open)
Wed Feb 27 09:23:44 [initandlisten] connection accepted from 192.168.159.22:50255 #21 (13 connections now open)
Wed Feb 27 09:23:44 [initandlisten] connection accepted from 192.168.159.26:64230 #22 (14 connections now open)
Wed Feb 27 09:23:44 [initandlisten] connection accepted from 192.168.159.26:64237 #23 (15 connections now open)
Wed Feb 27 09:23:44 [initandlisten] connection accepted from 192.168.159.25:51602 #24 (16 connections now open)
Wed Feb 27 09:23:44 [rsHealthPoll] couldn't connect to MASB-MGO-RPL02:27017: couldn't connect to server MASB-MGO-RPL02:27017

复制服务器信息

    Operating System
        Microsoft Windows Server 2008 R2 Standard 64-bit SP1
    CPU
        Intel Xeon E5 @ 2.60GHz
        Sandy Bridge-EP/EX 32nm Technology
        Intel Xeon E5 @ 2.60GHz
        Sandy Bridge-EP/EX 32nm Technology
        Intel Xeon E5 @ 2.60GHz
        Sandy Bridge-EP/EX 32nm Technology
        Intel Xeon E5 @ 2.60GHz
        Sandy Bridge-EP/EX 32nm Technology
    RAM
        8.00 GB EDO (3-3-3-?)

推荐答案

事实证明,这确实是由于页面文件太小而发生的.即使将其从8gb增加到15gb也无济于事,但将其增加到30gb仍然可以使MongoDB正常备份.

Turns out, that it indeed happened due to too-small page-file. Even though increasing it from 8gb to 15gb didn't help, increasing it even more, to 30gb made MongoDB come backup normally.

在我看来,MongoDB不会接受将虚拟内存大小加倍的事实.

The fact that MongoDB wouldn't accept DOUBLING the virtual memory size, is still very strange in my eyes.

所以...如果您遇到这种错误,请尝试不断增加虚拟内存,这应该会有所帮助.

So... If you have this kind of error, just try to keep increasing your virtual memory and this should help.

这篇关于MongoDB复制崩溃,无法再次启动的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆