J
на слейве? дропнуть всё что в каталоге?
Alex
да. не трогайте мастера
J
а папки типа ролл бек темпжурнал тоже удалять?
Alex
только слейв (секондари) - он "болен", его лечим
Alex
да, например, /data/db у вас долежен стать пустим
Alex
пустым
J
понял
J
монгу останавливать? или наживую делать?
J
там же лок файл
J
?
J
ладно я пойду домой, из дома продолжу
J
спасибо вам за конультацию
Alex
лучше остановите, да, перед удалением. Хуже не будет точно.
Alex
Удачи в восстановлении, пишите как что!
J
"stateStr" : "STARTUP2",
J
удалил и запусил
J
мне?
J
вы о беседе выше?
J
мастер 3 0 10 слейв 3 0 1
J
итак файлы появляются очень активно
Alex
Я думал, Serge скажет, что не последняя и говорить не о чем =))
J
коллеги отпишусь через часик
J
спасибо за участие
Alex
James, надеемся, у вас всё восстановится. Потом напишите, а вы когда rsync-ом базу скопировали — с какого сервера на какой ?
Bruno
а можно глупый вопрос - есть гайдлайны почитать какие именно задачи стоит поручить монге и какие не стоит?..
J
коллеги сегодня после 3х часов репликации скопировалось 600 гб дайнных и мастер умер
J
2016-05-04T21:14:49.539+0300 I STORAGE [conn991364] _getOpenFile() invalid file index requested 10 2016-05-04T21:14:49.539+0300 I - [conn991364] Invariant failure false src/mongo/db/storage/mmap_v1/mmap_v1_extent_manager.cpp 201
J
вот ещё выхлоп из лога
J
16-05-04T22:02:09.721+0300 I JOURNAL [initandlisten] preallocateIsFaster=true 29.42 2016-05-04T22:02:09.721+0300 I JOURNAL [initandlisten] preallocateIsFaster check took 8.027 secs 2016-05-04T22:02:09.721+0300 I JOURNAL [initandlisten] preallocating a journal file /mnt/applications/mongodb/journal/prealloc.0 2016-05-04T22:02:15.660+0300 I JOURNAL [initandlisten] preallocating a journal file /mnt/applications/mongodb/journal/prealloc.1 2016-05-04T22:02:21.538+0300 I JOURNAL [initandlisten] preallocating a journal file /mnt/applications/mongodb/journal/prealloc.2 2016-05-04T22:02:27.785+0300 I JOURNAL [durability] Durability thread started 2016-05-04T22:02:27.785+0300 I JOURNAL [journal writer] Journal writer thread started 2016-05-04T22:02:27.887+0300 I STORAGE [initandlisten] _getOpenFile() invalid file index requested 4 2016-05-04T22:02:27.887+0300 I - [initandlisten] Invariant failure false src/mongo/db/storage/mmap_v1/mmap_v1_extent_manager.cpp 201 2016-05-04T22:02:27.890+0300 I CONTROL [initandlisten] 0x1173a01 0x1103d95 0x10e3a08 0xed7eae 0xed7f32 0xee2947 0xef86b5 0xecf0b4 0xed08b8 0xed3356 0x91d063 0x7b8c39 0x783dcd 0x7ff767abc7b0 0x7b5cb9 ----- BEGIN BACKTRACE ----- {"backtrace":[{"b":"400000","o":"D73A01","s":"_ZN5mongo15printStackTraceERSo"},{"b":"400000","o":"D03D95","s":"_ZN5mongo10logContextEPKc"},{"b":"400000","o":"CE3A08","s":"_ZN5mongo15invariantFailedEPKcS1_j"},{"b":"400000","o":"AD7EAE","s": "_ZNK5mongo19MmapV1ExtentManager12_getOpenFileEi"},{"b":"400000","o":"AD7F32","s":"_ZNK5mongo19MmapV1ExtentManager9getExtentERKNS_7DiskLocEb"},{"b":"400000","o":"AE2947","s":"_ZNK5mongo17RecordStoreV1Base13getNextRecordEPNS_16OperationCont extERKNS_7DiskLocE"},{"b":"400000","o":"AF86B5","s":"_ZN5mongo27SimpleRecordStoreV1Iterator7getNextEv"},{"b":"400000","o":"ACF0B4","s":"_ZN5mongo26MMAPV1DatabaseCatalogEntry5_initEPNS_16OperationContextE"},{"b":"400000","o":"AD08B8","s":"_ ZN5mongo26MMAPV1DatabaseCatalogEntryC2EPNS_16OperationContextERKNS_10StringDataES5_bb"},{"b":"400000","o":"AD3356","s":"_ZN5mongo12MMAPV1Engine23getDatabaseCatalogEntryEPNS_16OperationContextERKNS_10StringDataE"},{"b":"400000","o":"51D063" ,"s":"_ZN5mongo14DatabaseHolder6openDbEPNS_16OperationContextERKNS_10StringDataEPb"},{"b":"400000","o":"3B8C39","s":"_ZN5mongo13initAndListenEi"},{"b":"400000","o":"383DCD","s":"main"},{"b":"7FF767A9C000","o":"207B0","s":"__libc_start_main "},{"b":"400000","o":"3B5CB9","s":"_start"}],"processInfo":{ "mongodbVersion" : "3.0.10", "gitVersion" : "1e0512f8453d103987f5fbfb87b71e9a131c2a60", "uname" : { "sysname" : "Linux", "release" : "4.1.15-gentoo-r1", "version" : "#2 SMP Thu A pr 14 08:55:21 MSK 2016", "machine" : "x86_64" }, "somap" : [ { "elfType" : 2, "b" : "400000" }, { "b" : "7FFF91762000", "path" : "linux-vdso.so.1", "elfType" : 3, "buildId" : "321F25692D09F6DA7BD42AFCF526B4DF05D6295C" }, { "b" : "7FF76A27 C000", "path" : "/usr/lib64/libsnappy.so.1", "elfType" : 3 }, { "b" : "7FF76A028000", "path" : "/usr/lib64/libstemmer.so.0d", "elfType" : 3 }, { "b" : "7FF769DAE000", "path" : "/usr/lib64/libboost_program_options.so.1.58.0", "elfType" : 3 }, { "b" : "7FF769B95000", "path" : "/usr/lib64/libboost_filesystem.so.1.58.0", "elfType" : 3 }, { "b" : "7FF769971000", "path" : "/usr/lib64/libboost_thread.so.1.58.0", "elfType" : 3 }, { "b" : "7FF76976D000", "path" : "/usr/lib64/libboos t_system.so.1.58.0", "elfType" : 3 }, { "b" : "7FF769563000", "path" : "/usr/lib64/libpcrecpp.so.0", "elfType" : 3 }, { "b" : "7FF7692E3000", "path" : "/usr/lib64/libyaml-cpp.so.0.5", "elfType" : 3 }, { "b" : "7FF7690C7000", "path" : "/lib 64/libpthread.so.0", "elfType" : 3 }, { "b" : "7FF768E57000", "path" : "/usr/lib64/libssl.so.1.0.0", "elfType" : 3 }, { "b" : "7FF768A6C000", "path" : "/usr/lib64/libcrypto.so.1.0.0", "elfType" : 3 }, { "b" : "7FF768864000", "path" : "/lib 64/librt.so.1", "elfType" : 3 }, { "b" : "7FF768660000", "path" : "/lib64/libdl.so.2", "elfType" : 3 }, { "b" : "7FF768351000", "path" : "/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/libstdc++.so.6", "elfType" : 3 }, { "b" : "7FF76804E000", "pat h" : "/
J
lib64/libm.so.6", "elfType" : 3 }, { "b" : "7FF767E37000", "path" : "/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/libgcc_s.so.1", "elfType" : 3 }, { "b" : "7FF767A9C000", "path" : "/lib64/libc.so.6", "elfType" : 3 }, { "b" : "7FF76A483000 ", "path" : "/lib64/ld-linux-x86-64.so.2", "elfType" : 3 }, { "b" : "7FF76782D000", "path" : "/lib64/libpcre.so.1", "elfType" : 3 }, { "b" : "7FF767617000", "path" : "/lib64/libz.so.1", "elfType" : 3 } ] }} mongod(_ZN5mongo15printStackTraceERSo+0x41) [0x1173a01] mongod(_ZN5mongo10logContextEPKc+0xF5) [0x1103d95] mongod(_ZN5mongo15invariantFailedEPKcS1_j+0xC8) [0x10e3a08] mongod(_ZNK5mongo19MmapV1ExtentManager12_getOpenFileEi+0x9E) [0xed7eae] mongod(_ZNK5mongo19MmapV1ExtentManager9getExtentERKNS_7DiskLocEb+0x22) [0xed7f32] mongod(_ZNK5mongo17RecordStoreV1Base13getNextRecordEPNS_16OperationContextERKNS_7DiskLocE+0x87) [0xee2947] mongod(_ZN5mongo27SimpleRecordStoreV1Iterator7getNextEv+0xD5) [0xef86b5] mongod(_ZN5mongo26MMAPV1DatabaseCatalogEntry5_initEPNS_16OperationContextE+0x734) [0xecf0b4] mongod(_ZN5mongo26MMAPV1DatabaseCatalogEntryC2EPNS_16OperationContextERKNS_10StringDataES5_bb+0x1A8) [0xed08b8] mongod(_ZN5mongo12MMAPV1Engine23getDatabaseCatalogEntryEPNS_16OperationContextERKNS_10StringDataE+0x246) [0xed3356] mongod(_ZN5mongo14DatabaseHolder6openDbEPNS_16OperationContextERKNS_10StringDataEPb+0x163) [0x91d063] mongod(_ZN5mongo13initAndListenEi+0xDB9) [0x7b8c39] mongod(main+0x17D) [0x783dcd] libc.so.6(__libc_start_main+0xF0) [0x7ff767abc7b0] mongod(_start+0x29) [0x7b5cb9] ----- END BACKTRACE ----- 2016-05-04T22:02:27.891+0300 I - [initandlisten]
J
всё норм
J
с файло
J
пока переключил на резервную монгу
J
хотелось бы понять с чем связано и как чинить
J
рестарт и тд не помогает
J
на пасте бин выложить?
J
ок ща выложу
J
http://pastebin.com/1JuY7G6J
J
идеи есть7
Bruno
ёпрст
Bruno
больше четырёх строчек - на паста-сервисы же.
Bruno
а, уже сказали
Bruno
в одном из старых чатов в ирке было
J
предположу что это этикет
Bruno
кажется, python-чат как раз на freenode
Bruno
в motd
J
ребят ну есть идеи то?
Bruno
да, прости
Bruno
серж, спаси джентльмена V_V
Bruno
на тебя вся надежда
Alex
http://pastebin.com/1JuY7G6J
Alex
sorry, случайно скопипастил
Alex
какая ФС под базой? в логах dmesg/syslog ничего страшного не вывалилось?
Alex
вообще самочувствие сервера впорядке - дисковая (рейд), температуры - всё в норме?
Dan
вот мне тоже показалось что надо бы в лог глянуть что произошло, просто так не должно было упасть.
Roman
У человека gentoo.
Alex
в генте нет логов?
Roman
http://stackoverflow.com/questions/31273977/mongo-db-invariant-failure
Roman
в генте нет логов?
Есть. Там беда в том что человек может накрутить всяких флагов компилятора и оный начудит так, что софт будет падать
Roman
Но больше похоже на битый файл
Alex
Вряд ли эта информация ему поможет =)
Alex
Однако не питай иллюзий, монга великолепно крашится и на брэндовых дистрибах
Roman
Угу. У меня тоже крашилась когда я просто добавлял индекс
Alex
https://jira.mongodb.org/browse/SERVER-22377
Alex
В качестве средства уровня "электрошока" я бы запустил mongod через strace -e open и поискал бы что там за дескриптор 4 - открывался ли он, была ли попытка открыть. Если удастся выцепить путь к файлу... посмотреть что за файл. Как безумный вариант - удалить и попробовать запустить снова. Но это всё реанимация - может поможет, может добьет =(
Alex
судя по ответу монговцев - типа, ошибка открытия файла, файла нет, мынеприделах =\
Alex
Я подозреваю, что вот те ваши махинации с rsync не прошли даром. Как минимум в монге2 был кривоватый инитскрипт, у нас нагруженная до конца база не останавливалась по stop и в результате создавался (кривой) бэкап по ненормально остановленному серверу. Если ваши рсинки были сделаны подобным образом, вполне можно было получить битую структуру данных, на которую вот и нарвались при репликации всей БД.
Alex
Еще один вариант - запуститься с repair , но на дисках должно быть место под копию БД и... 700гб. Я не готов сказать сколько займет времени.
J
восстановил
J
нужно понять почему упала
Roman
Как восстановил?
J
через репейр
J
I STORAGE [initandlisten] WARNING: the collection 'cars_logs_new_files_20160418.fs.chunks' lacks a unique index on _id. This index is needed for replication to function properly 2016-05-05T10:47:58.304+0300 I STORAGE [initandlisten] To fix this, you need to create a unique index on _id. See http://dochub.mongodb.org/core/build-replica-set-indexes
J
чейчас на слейве при старте выдает
Aleksey
У меня было
Aleksey
Если индекс есть то поможет рестарт
J
я смотрю сейчас синк идет
Aleksey
Перестанет так ругаться
J
потому что данные просто чудовещные идут
J
походу вчерашни 200гб докачивает