Я хотел бы спросить, можем ли мы из приведенного ниже журнала сказать, что сбой Mysql был из-за нашей пользовательской библиотеки для Mysql?
Sep 26 15:24:30 mysqld: /usr/lib/mysql/plugin/my_lib_discounts.so(_ZN13CDiscountCalcD1Ev+0x52)[0x7f5da35439da]
Sep 26 15:24:30 mysqld: /usr/lib/mysql/plugin/my_lib_discounts.so(my_lib_discountsAgg_deinit+0x31)[0x7f5da35431be]
весь журнал:
Sep 26 15:24:30 mysqld: Thread pointer: 0x7f5d980ab690
Sep 26 15:24:30 mysqld: Attempting backtrace. You can use the following information to find out
Sep 26 15:24:30 mysqld: where mysqld died. If you see no messages after this, something went
Sep 26 15:24:30 mysqld: terribly wrong...
Sep 26 15:24:30 mysqld: stack_bottom = 7f5da2d9de88 thread_stack 0x80000
Sep 26 15:24:30 mysqld: /usr/sbin/mysqld(my_print_stacktrace+0x2e)[0x7f5f02247ade]
Sep 26 15:24:30 mysqld: /usr/sbin/mysqld(handle_fatal_signal+0x493)[0x7f5f020fe253]
Sep 26 15:24:30 mysqld: /lib/libpthread.so.0(+0xeff0)[0x7f5f018b3ff0]
Sep 26 15:24:30 mysqld: /lib/libc.so.6(gsignal+0x35)[0x7f5f00164ed5]
Sep 26 15:24:30 mysqld: /lib/libc.so.6(abort+0x180)[0x7f5f00167ce0]
Sep 26 15:24:30 mysqld: /lib/libc.so.6(+0x682db)[0x7f5f0019b2db]
Sep 26 15:24:30 mysqld: /lib/libc.so.6(+0x71b36)[0x7f5f001a4b36]
Sep 26 15:24:30 mysqld: /lib/libc.so.6(cfree+0x6c)[0x7f5f001a98ac]
Sep 26 15:24:30 mysqld: /usr/lib/mysql/plugin/my_lib_discounts.so(_ZN13CDiscountCalcD1Ev+0x52)[0x7f5da35439da]
Sep 26 15:24:30 mysqld: /usr/lib/mysql/plugin/my_lib_discounts.so(my_lib_discountsAgg_deinit+0x31)[0x7f5da35431be]
Sep 26 15:24:30 mysqld: /usr/sbin/mysqld(_ZN11udf_handler7cleanupEv+0x31)[0x7f5f02156bc1]
Sep 26 15:24:30 mysqld: /usr/sbin/mysqld(_ZN12Item_udf_sum7cleanupEv+0x10)[0x7f5f021863c0]
Sep 26 15:24:30 mysqld: /usr/sbin/mysqld(_ZN4JOIN7destroyEv+0x17e)[0x7f5f020183be]
Sep 26 15:24:30 mysqld: /usr/sbin/mysqld(_ZN13st_select_lex7cleanupEv+0x22)[0x7f5f0205feb2]
Sep 26 15:24:30 mysqld: /usr/sbin/mysqld(_Z12mysql_selectP3THDPPP4ItemP10TABLE_LISTjR4ListIS1_ES2_jP8st_orderSB_S2_SB_yP13select_resultP18st_select_lex_unitP13st_select_lex+0x233)[0x7f5f0202af53]
Sep 26 15:24:30 mysqld: /usr/sbin/mysqld(_Z13handle_selectP3THDP3LEXP13select_resultm+0x174)[0x7f5f02030954]
Sep 26 15:24:30 mysqld: /usr/sbin/mysqld(+0x30a287)[0x7f5f01feb287]
Sep 26 15:24:30 mysqld: /usr/sbin/mysqld(_Z21mysql_execute_commandP3THD+0x1be4)[0x7f5f01ff01b4]
Sep 26 15:24:30 mysqld: /usr/sbin/mysqld(_Z11mysql_parseP3THDPcjP12Parser_state+0x246)[0x7f5f01ff2e26]
Sep 26 15:24:30 mysqld: /usr/sbin/mysqld(_Z16dispatch_command19enum_server_commandP3THDPcj+0x1d42)[0x7f5f01ff53d2]
Sep 26 15:24:30mysqld: /usr/sbin/mysqld(_Z24do_handle_one_connectionP3THD+0x10e)[0x7f5f0209724e]
Sep 26 15:24:30 mysqld: /usr/sbin/mysqld(handle_one_connection+0x50)[0x7f5f02097370]
Sep 26 15:24:30 mysqld: /lib/libpthread.so.0(+0x68ca)[0x7f5f018ab8ca]
Sep 26 15:24:30 mysqld: /lib/libc.so.6(clone+0x6d)[0x7f5f002027dd]
Sep 26 15:24:30 mysqld:
Sep 26 15:24:30 mysqld: Trying to get some variables.
Sep 26 15:24:30 mysqld: Some pointers may be invalid and cause the dump to abort.
Sep 26 15:24:30 mysqld: Query (7f5d980cdd90): is an invalid pointer
Sep 26 15:24:30 mysqld: Connection ID (thread ID): 1087
Sep 26 15:24:30 mysqld: Status: NOT_KILLED
ОС: Debian GNU / Linux 6.0
Mysql: версия сервера 5.5.38
Мы не устанавливали никаких новых пакетов.
Проблема возникает время от времени. Иногда трижды в день, тогда у нас нет проблем около пяти дней и так далее. В журнале ошибок мы видим, что есть строка с названием нашего плагина для mysql, но я не знал, является ли это основной причиной или просто информацией о загруженных модулях.
Прежде всего, стоит указать, что на самом деле представляет собой этот вывод в журнале, поскольку вы явно не уверены в этом.
Эта трассировка в журнале показывает стек вызовов, когда произошел сбой, т.е. это список «пути» вызовов функций, которые приводят к сбою.
Хотя это не совсем убедительно, похоже, что ОЧЕНЬ вероятно, что ваш плагин (который, я думаю, можно считать более вероятным, что у него проблемы, не будучи чрезмерно несправедливым) был частью стека вызовов, вызвавшего сбой.
Похоже, у него какая-то проблема с управлением памятью (на основе неудачного вызова cfree).
Сопровождающий этого плагина должен взглянуть на это.