Вернуться   Russian Mangos DC > Баг Репорты > Mangos > Краши, Зависания сервера
Добро пожаловать, CruncH.
Ваш последний визит: 24.07.2009 в 15:12
Личные сообщения: Новых 0, всего 7.

Ответ
 
Опции темы Поиск в этой теме Оценить тему Опции просмотра
Старый 18.04.2007, 14:02   #11
RMDC Guest
 
Регистрация: 11.01.2007
Сообщений: 5
Сказали спасибо: 0 раз
Ant32 пока не определено
По умолчанию

Цитата:
Сообщение от Craker Посмотреть сообщение
поправить рестартер? Например я сделал так:

Код:
datec=`/bin/date +%m.%d.%H.%M.%S`
gdb ${sbin}/mangos-worldd -c ${sbin}/*.core --n --batch  --command=${coredump}/bt >> ${coredump}/${datec}_dump
sbin - директория где лежат бинарники
coredump - куда положить обработанный файл дампа
В папке coredump лежит файлик bt с командами для выполнения, у меня там только bt full, но кому надо больше могут изменить...


Кстати, иногда (довольно часто даже наверное) полявляются дампы с примерно таким содержанием
Код:
Core was generated by `mangos-worldd'.
Program terminated with signal 11, Segmentation fault.
#0  0x283d7537 in pthread_testcancel () from /lib/libpthread.so.2
[New Thread 0x88df800 (runnable)]
[New Thread 0x88df000 (sleeping)]
[New Thread 0x8b1ee00 (sleeping)]
[New Thread 0x8b1ec00 (sleeping)]
[New Thread 0x8b1ea00 (sleeping)]
[New Thread 0x8b1e800 (sleeping)]
[New Thread 0x8b1e600 (sleeping)]
[New Thread 0x8b1e400 (LWP 100094)]
[New Thread 0x83d4000 (runnable)]
[New LWP 100043]
#0  0x283d7537 in pthread_testcancel () from /lib/libpthread.so.2
No symbol table info available.
#1  0x283cfec8 in pthread_mutexattr_init () from /lib/libpthread.so.2
No symbol table info available.
#2  0x282ad450 in ?? ()
No symbol table info available.
из-за чего это может быть?
Пропиши в своем файле bt комманду thread 1 перед bt full
Ant32 вне форума Добавить отзыв для Ant32 Пожаловаться на это сообщение   Ответить с цитированием Мультицитирование этого сообщения Быстрый ответ на это сообщение Вы сказали Спасибо
Старый 15.05.2007, 13:03   #12
RMDC Civilian
 
Регистрация: 12.11.2006
Сообщений: 78
Сказали спасибо: 8 раз
mentat на пути к лучшему
По умолчанию

Так. А как получить .core файл ?
Код:
gdb ${sbin}/mangos-worldd -c ${sbin}/*.core --n --batch  --command=${coredump}/bt >> ${coredump}/${datec}_dump
я так понимаю - запускает отладку с дампа ?

PS. Погуглил - сейчас попробую
Код:
ulimits -c unlimited
или в файле
/etc/security/limits.conf

Код:
* soft core 0
mentat вне форума Добавить отзыв для mentat Пожаловаться на это сообщение   Ответить с цитированием Мультицитирование этого сообщения Быстрый ответ на это сообщение Вы сказали Спасибо
Старый 15.05.2007, 13:38   #13
gather
Guest
 
Сообщений: n/a
По умолчанию

Цитата:
Сообщение от mentat Посмотреть сообщение
Так. А как получить .core файл ?
Код:
gdb ${sbin}/mangos-worldd -c ${sbin}/*.core --n --batch  --command=${coredump}/bt >> ${coredump}/${datec}_dump
я так понимаю - запускает отладку с дампа ?

PS. Погуглил - сейчас попробую
Код:
ulimits -c unlimited
или в файле
/etc/security/limits.conf

Код:
* soft core 0
Для FreeBSD:
1) опция в ядре:
Код:
makeoptions     DEBUG=-g                # Build kernel with gdb(1) debug symbols
2) в файле /etc/sysctl.conf добавляем следующие строки:
Код:
kern.coredump=1
kern.corefile=/home/cores/%U.%N.core
Чтобы изменения применились сразу выполняем следующие команды:
Код:
sysctl -w kern.coredump=1
sysctl -w kern.corefile=/home/cores/%U.%N.core
При этом - директория /home/cores/ должна существовать. В нее будут складываться корки в виде:
Код:
-rw-------  1 mangos  wheel  1277284352 May 15 01:08 1002.mangos-worldd.core
Пожаловаться на это сообщение   Ответить с цитированием Мультицитирование этого сообщения Быстрый ответ на это сообщение Вы сказали Спасибо
Старый 15.05.2007, 13:39   #14
RMDC Civilian
 
Регистрация: 12.11.2006
Сообщений: 78
Сказали спасибо: 8 раз
mentat на пути к лучшему
По умолчанию

Во ! Дампы заработали ! ( Ubuntu 7.04 )
mentat вне форума Добавить отзыв для mentat Пожаловаться на это сообщение   Ответить с цитированием Мультицитирование этого сообщения Быстрый ответ на это сообщение Вы сказали Спасибо
Старый 15.05.2007, 13:41   #15
gather
Guest
 
Сообщений: n/a
По умолчанию

Вот кстати свежая корка Mangos rev: 3635:
Код:
GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "amd64-marcel-freebsd"...
Core was generated by `mangos-worldd'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /usr/lib/libssl.so.4...done.
Loaded symbols for /usr/lib/libssl.so.4
Reading symbols from /wow/lib/libmangosscript.so.0...done.
Loaded symbols for /wow/lib/libmangosscript.so.0
Reading symbols from /usr/local/lib/mysql/libmysqlclient_r.so.15...done.
Loaded symbols for /usr/local/lib/mysql/libmysqlclient_r.so.15
Reading symbols from /lib/libz.so.3...done.
Loaded symbols for /lib/libz.so.3
Reading symbols from /lib/libcrypt.so.3...done.
Loaded symbols for /lib/libcrypt.so.3
Reading symbols from /wow/lib/libZThread.so.2...done.
Loaded symbols for /wow/lib/libZThread.so.2
Reading symbols from /lib/libpthread.so.2...done.
Loaded symbols for /lib/libpthread.so.2
Reading symbols from /usr/lib/libstdc++.so.5...done.
Loaded symbols for /usr/lib/libstdc++.so.5
Reading symbols from /lib/libm.so.4...done.
Loaded symbols for /lib/libm.so.4
Reading symbols from /lib/libc.so.6...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib/libcrypto.so.4...done.
Loaded symbols for /lib/libcrypto.so.4
Reading symbols from /libexec/ld-elf.so.1...done.
Loaded symbols for /libexec/ld-elf.so.1
#0  0x000000080120989c in pthread_testcancel () from /lib/libpthread.so.2
[New Thread 0x1545800 (runnable)]
[New Thread 0x1545400 (runnable)]
[New Thread 0x1545000 (sleeping)]
[New Thread 0x1544c00 (sleeping)]
[New Thread 0x1544800 (sleeping)]
[New Thread 0x1544400 (sleeping)]
[New Thread 0x1544000 (sleeping)]
[New Thread 0x1d8ec00 (sleeping)]
[New Thread 0x1d8e800 (LWP 100254)]
[New Thread 0xae3000 (runnable)]
[New LWP 100199]
(gdb) bt full
#0  0x000000080120989c in pthread_testcancel () from /lib/libpthread.so.2
No symbol table info available.
#1  0x00000008011f8100 in sigaction () from /lib/libpthread.so.2
No symbol table info available.
#2  0x000000080120209a in pthread_mutexattr_init () from /lib/libpthread.so.2
No symbol table info available.
#3  0x0000000000000000 in ?? ()
No symbol table info available.
Cannot access memory at address 0x7fffffbff000
(gdb) thread 1
[Switching to thread 1 (Thread 0x1545800 (runnable))]#0  0x000000080120215f in pthread_mutexattr_init () from /lib/libpthread.so.2
(gdb) bt full
#0  0x000000080120215f in pthread_mutexattr_init () from /lib/libpthread.so.2
No symbol table info available.
#1  0x00000008012002c2 in pthread_mutex_lock () from /lib/libpthread.so.2
No symbol table info available.
#2  0x00000008010bb7eb in ZThread::Monitor::notify (this=0xf0d7f0) at Monitor.cxx:250
        wasNotifyable = true
#3  0x00000008010d126e in ZThread::ThreadImpl::dispatch (parent=0xae0400, impl=0xf2de00, task=
        {<ZThread::CountedPtr<ZThread::Runnable,ZThread::AtomicCount>> = {_count = 0xf0d800, _instance = 0xf0d7f0}, <No data fields>})
    at ThreadImpl.cxx:407
No locals.
#4  0x00000008010d3197 in ZThread::(anonymous namespace)::Launcher::run (this=0x7fffffffe280) at ThreadImpl.cxx:49
No locals.
#5  0x00000008010d74de in _dispatch (arg=0x7fffffffe280) at ThreadOps.cxx:137
        task = (class ZThread::Runnable *) 0x7fffffffe280
        __func__ = "_dispatch"
#6  0x00000008011faa99 in pthread_create () from /lib/libpthread.so.2
No symbol table info available.
#7  0x000000080166acd4 in makecontext () from /lib/libc.so.6
No symbol table info available.
#8  0x0000000000000000 in ?? ()
No symbol table info available.
#9  0x0000000001545800 in ?? ()
No symbol table info available.
#10 0x00000008010d7490 in ZThread::ThreadOps::spawn () at ThreadOps.cxx:127
        ZThread::ThreadOps::INVALID = {_tid = 0x0, static INVALID = {_tid = 0x0,
    static INVALID = <same as static member of an already seen type>}}
Пожаловаться на это сообщение   Ответить с цитированием Мультицитирование этого сообщения Быстрый ответ на это сообщение Вы сказали Спасибо
Старый 15.05.2007, 14:34   #16
RMDC Civilian
 
Регистрация: 12.11.2006
Сообщений: 78
Сказали спасибо: 8 раз
mentat на пути к лучшему
По умолчанию

Первый пост обновлен - сделаем FAQ по отладке под линуксом )
mentat вне форума Добавить отзыв для mentat Пожаловаться на это сообщение   Ответить с цитированием Мультицитирование этого сообщения Быстрый ответ на это сообщение Вы сказали Спасибо
Старый 21.05.2007, 06:43   #17
RMDC People
 
Регистрация: 02.12.2006
Сообщений: 234
Сказали спасибо: 16 раз
JIaMo4Ka на пути к лучшему
По умолчанию

Люди помогите разобратся
Сделал всё как написано в первом посте, дальше что ? откуда появятся корки ? Тоесть если я запускаю мангос таким образом ./mangos-worldd -с ../etc/mangos-worldd.conf ещё что-то прописывать нужно или нет ?
JIaMo4Ka вне форума Добавить отзыв для JIaMo4Ka Пожаловаться на это сообщение   Ответить с цитированием Мультицитирование этого сообщения Быстрый ответ на это сообщение Вы сказали Спасибо
Старый 21.05.2007, 12:20   #18
RMDC Civilian
 
Регистрация: 12.11.2006
Сообщений: 78
Сказали спасибо: 8 раз
mentat на пути к лучшему
По умолчанию

Прочти первый пункт. После редактирования /etc/security/limits.conf и ребута, будут коры в папке с мангосом. У меня имена core.<pid>
mentat вне форума Добавить отзыв для mentat Пожаловаться на это сообщение   Ответить с цитированием Мультицитирование этого сообщения Быстрый ответ на это сообщение Вы сказали Спасибо
Старый 21.05.2007, 16:43   #19
RMDC People
 
Регистрация: 02.12.2006
Сообщений: 234
Сказали спасибо: 16 раз
JIaMo4Ka на пути к лучшему
По умолчанию

странно, краши вроде были, а вот коры не появляются...

вот мой limits.conf, сделал ребут после изменений
Код:
# /etc/security/limits.conf
#
#Each line describes a limit for a user in the form:
#
#<domain>        <type>  <item>  <value>
#
#Where:
#<domain> can be:
#        - an user name
#        - a group name, with @group syntax
#        - the wildcard *, for default entry
#        - the wildcard %, can be also used with %group syntax,
#                 for maxlogin limit
#
#<type> can have the two values:
#        - "soft" for enforcing the soft limits
#        - "hard" for enforcing hard limits
#
#<item> can be one of the following:
#        - core - limits the core file size (KB)
#        - data - max data size (KB)
#        - fsize - maximum filesize (KB)
#        - memlock - max locked-in-memory address space (KB)
#        - nofile - max number of open files
#        - rss - max resident set size (KB)
#        - stack - max stack size (KB)
#        - cpu - max CPU time (MIN)
#        - nproc - max number of processes
#        - as - address space limit
#        - maxlogins - max number of logins for this user
#        - maxsyslogins - max number of logins on the system
#        - priority - the priority to run user process with
#        - locks - max number of file locks the user can hold
#        - sigpending - max number of pending signals
#        - msgqueue - max memory used by POSIX message queues (bytes)
#        - nice - max nice priority allowed to raise to
#        - rtprio - max realtime priority
#
#<domain>      <type>  <item>         <value>
#

*               soft    core            0
#*               hard    rss             10000
#@student        hard    nproc           20
#@faculty        soft    nproc           20
#@faculty        hard    nproc           50
#ftp             hard    nproc           0
#@student        -       maxlogins       4

# End of file
JIaMo4Ka вне форума Добавить отзыв для JIaMo4Ka Пожаловаться на это сообщение   Ответить с цитированием Мультицитирование этого сообщения Быстрый ответ на это сообщение Вы сказали Спасибо
Старый 22.05.2007, 12:03   #20
RMDC Civilian
 
Регистрация: 12.11.2006
Сообщений: 78
Сказали спасибо: 8 раз
mentat на пути к лучшему
По умолчанию

у тебя линукс ?
1) поищи по всему компу *core* формат имени может быть разный
2) попробуй в скрипте запуска перед вызовом мангоса добавить
Код:
ulimits -c unlimited
mentat вне форума Добавить отзыв для mentat Пожаловаться на это сообщение   Ответить с цитированием Мультицитирование этого сообщения Быстрый ответ на это сообщение Вы сказали Спасибо
Ответ

Быстрый ответ
Сообщение:
Убрать форматирование текста
Полужирный
Курсив
Подчёркнутый

Вставить изображение
Вставить BB код цитаты [QUOTE] вокруг выделенного текста
 
Уменьшить размер
Увеличить размер
Переключить режим редактора
Опции


Здесь присутствуют: 1 (пользователей: 1 , гостей: 0)
CruncH

Ваши права в разделе
Вы можете создавать новые темы
Вы можете отвечать в темах
Вы можете прикреплять вложения
Вы можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Anti-Crash waza123 Ядро 21 20.02.2009 18:04
Crash nhtrfgb Корзина форума 2 08.12.2008 20:40
Crash 6061-67 [Win] Andreyko Корзина форума 5 11.07.2008 13:59
[crash] 5785+SD2 385 (linux) -={ CaT MaX }=- Корзина форума 3 20.05.2008 03:47
Crash boss_midnight cyberkill Корзина форума 1 27.01.2008 19:23

Часовой пояс GMT +8, время: 00:37.
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd. Перевод: zCarot

Главная цель проекта MaNGOS - обучающая, поэтому разрешается использовать исходный код и собранную программу только для образовательных целей. Вы не можете использовать MaNGOS в коммерческих целях, также не разрешается устанавливать публичные серверы на базе MaNGOS. Любое копирование материалов, информации в любом виде - без указания источника GetMangos.ru - будет считаться нарушением авторских прав, а так же нарушением Уголовного Кодекса РФ, ст. 146 ст. 147.