libmysqlclient_r

Автор mihail_1, 30 мая 2013, 16:38:13

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

mihail_1

valgrind поймал ошибки произошедшие в libmysqlclient_r
В чем может быть проблема и как ее устранить?
==15109== Thread 51:
==15109== Invalid read of size 4
==15109==    at 0x50E4036: vio_close (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E3A2D: vio_delete (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFC3E: end_server (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFEAE: cli_safe_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E0588: cli_read_query_result (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DEB8D: mysql_real_query (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x402424: :4442)
==15109==    by 0x405610: :2742)
==15109==    by 0x409A6E: :1502)
==15109==    by 0x5306FC6: start_thread (in /lib/libpthread-2.7.so)
==15109==    by 0x583D5AC: clone (in /lib/libc-2.7.so)
==15109==  Address 0x6710ae8 is 0 bytes inside a block of size 232 free'd
==15109==    at 0x4C2130F: free (vg_replace_malloc.c:323)
==15109==    by 0x50DFC3E: end_server (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFEAE: cli_safe_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E0448: cli_read_rows (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E06B4: cli_read_query_result (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DEB8D: mysql_real_query (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x402424: :4442)
==15109==    by 0x403B80: :3361)
==15109==    by 0x40532E: :2673)
==15109==    by 0x409A6E: :1502)
==15109==    by 0x5306FC6: start_thread (in /lib/libpthread-2.7.so)
==15109==    by 0x583D5AC: clone (in /lib/libc-2.7.so)
==15109== Warning: invalid file descriptor -1 in syscall close()
==15109==    at 0x530D847: (within /lib/libpthread-2.7.so)
==15109==    by 0x50E4043: vio_close (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E3A2D: vio_delete (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFC3E: end_server (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFEAE: cli_safe_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E0588: cli_read_query_result (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DEB8D: mysql_real_query (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x402424: :4442)
==15109==    by 0x405610: :2742)
==15109==    by 0x409A6E: :1502)
==15109==    by 0x5306FC6: start_thread (in /lib/libpthread-2.7.so)
==15109==    by 0x583D5AC: clone (in /lib/libc-2.7.so)
==15109==
==15109== Invalid write of size 4
==15109==    at 0x50E404E: vio_close (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E3A2D: vio_delete (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFC3E: end_server (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFEAE: cli_safe_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E0588: cli_read_query_result (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DEB8D: mysql_real_query (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x402424: :4442)
==15109==    by 0x405610: :2742)
==15109==    by 0x409A6E: :1502)
==15109==    by 0x5306FC6: start_thread (in /lib/libpthread-2.7.so)
==15109==    by 0x583D5AC: clone (in /lib/libc-2.7.so)
==15109==  Address 0x6710b20 is 56 bytes inside a block of size 232 free'd
==15109==    at 0x4C2130F: free (vg_replace_malloc.c:323)
==15109==    by 0x50DFC3E: end_server (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFEAE: cli_safe_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E0448: cli_read_rows (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E06B4: cli_read_query_result (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DEB8D: mysql_real_query (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x402424: :4442)
==15109==    by 0x403B80: :3361)
==15109==    by 0x40532E: :2673)
==15109==    by 0x409A6E: :1502)
==15109==    by 0x5306FC6: start_thread (in /lib/libpthread-2.7.so)
==15109==    by 0x583D5AC: clone (in /lib/libc-2.7.so)
==15109==
==15109== Invalid write of size 4
==15109==    at 0x50E4055: vio_close (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E3A2D: vio_delete (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFC3E: end_server (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFEAE: cli_safe_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E0588: cli_read_query_result (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DEB8D: mysql_real_query (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x402424: :4442)
==15109==    by 0x405610: :2742)
==15109==    by 0x409A6E: :1502)
==15109==    by 0x5306FC6: start_thread (in /lib/libpthread-2.7.so)
==15109==    by 0x583D5AC: clone (in /lib/libc-2.7.so)
==15109==  Address 0x6710ae8 is 0 bytes inside a block of size 232 free'd
==15109==    at 0x4C2130F: free (vg_replace_malloc.c:323)
==15109==    by 0x50DFC3E: end_server (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFEAE: cli_safe_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E0448: cli_read_rows (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E06B4: cli_read_query_result (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DEB8D: mysql_real_query (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x402424: :4442)
==15109==    by 0x403B80: :3361)
==15109==    by 0x40532E: :2673)
==15109==    by 0x409A6E: :1502)
==15109==    by 0x5306FC6: start_thread (in /lib/libpthread-2.7.so)
==15109==    by 0x583D5AC: clone (in /lib/libc-2.7.so)
==15109==
==15109== Invalid read of size 8
==15109==    at 0x50E3A10: vio_delete (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFC3E: end_server (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFEAE: cli_safe_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E0588: cli_read_query_result (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DEB8D: mysql_real_query (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x402424: :4442)
==15109==    by 0x405610: :2742)
==15109==    by 0x409A6E: :1502)
==15109==    by 0x5306FC6: start_thread (in /lib/libpthread-2.7.so)
==15109==    by 0x583D5AC: clone (in /lib/libc-2.7.so)
==15109==  Address 0x6710b48 is 96 bytes inside a block of size 232 free'd
==15109==    at 0x4C2130F: free (vg_replace_malloc.c:323)
==15109==    by 0x50DFC3E: end_server (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFEAE: cli_safe_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E0448: cli_read_rows (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E06B4: cli_read_query_result (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DEB8D: mysql_real_query (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x402424: :4442)
==15109==    by 0x403B80: :3361)
==15109==    by 0x40532E: :2673)
==15109==    by 0x409A6E: :1502)
==15109==    by 0x5306FC6: start_thread (in /lib/libpthread-2.7.so)
==15109==    by 0x583D5AC: clone (in /lib/libc-2.7.so)
==15109==
==15109== Invalid free() / delete / delete[]
==15109==    at 0x4C2130F: free (vg_replace_malloc.c:323)
==15109==    by 0x50E3A18: vio_delete (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFC3E: end_server (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFEAE: cli_safe_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E0588: cli_read_query_result (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DEB8D: mysql_real_query (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x402424: :4442)
==15109==    by 0x405610: :2742)
==15109==    by 0x409A6E: :1502)
==15109==    by 0x5306FC6: start_thread (in /lib/libpthread-2.7.so)
==15109==    by 0x583D5AC: clone (in /lib/libc-2.7.so)
==15109==  Address 0x6710c00 is 0 bytes inside a block of size 16,384 free'd
==15109==    at 0x4C2130F: free (vg_replace_malloc.c:323)
==15109==    by 0x50E3A18: vio_delete (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFC3E: end_server (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFEAE: cli_safe_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E0448: cli_read_rows (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E06B4: cli_read_query_result (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DEB8D: mysql_real_query (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x402424: :4442)
==15109==    by 0x403B80: :3361)
==15109==    by 0x40532E: :2673)
==15109==    by 0x409A6E: :1502)
==15109==    by 0x5306FC6: start_thread (in /lib/libpthread-2.7.so)
==15109==
==15109== Invalid free() / delete / delete[]
==15109==    at 0x4C2130F: free (vg_replace_malloc.c:323)
==15109==    by 0x50DFC3E: end_server (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFEAE: cli_safe_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E0588: cli_read_query_result (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DEB8D: mysql_real_query (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x402424: :4442)
==15109==    by 0x405610: :2742)
==15109==    by 0x409A6E: :1502)
==15109==    by 0x5306FC6: start_thread (in /lib/libpthread-2.7.so)
==15109==    by 0x583D5AC: clone (in /lib/libc-2.7.so)
==15109==  Address 0x6710ae8 is 0 bytes inside a block of size 232 free'd
==15109==    at 0x4C2130F: free (vg_replace_malloc.c:323)
==15109==    by 0x50DFC3E: end_server (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFEAE: cli_safe_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E0448: cli_read_rows (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E06B4: cli_read_query_result (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DEB8D: mysql_real_query (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x402424: :4442)
==15109==    by 0x403B80: :3361)
==15109==    by 0x40532E: :2673)
==15109==    by 0x409A6E: :1502)
==15109==    by 0x5306FC6: start_thread (in /lib/libpthread-2.7.so)
==15109==    by 0x583D5AC: clone (in /lib/libc-2.7.so)
==15109==
==15109== Thread 57:
==15109== Conditional jump or move depends on uninitialised value(s)
==15109==    at 0x50E4CEE: my_real_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E4F7C: my_net_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFDF4: cli_safe_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E0A6D: mysql_real_connect (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x402480: :4450)
==15109==    by 0x403B80: :3361)
==15109==    by 0x40532E: :2673)
==15109==    by 0x409A6E: :1502)
==15109==    by 0x5306FC6: start_thread (in /lib/libpthread-2.7.so)
==15109==    by 0x583D5AC: clone (in /lib/libc-2.7.so)
==15109==
==15109== Thread 51:
==15109== Invalid read of size 8
==15109==    at 0x50E4BE6: my_real_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E4F7C: my_net_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFDF4: cli_safe_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E0A6D: mysql_real_connect (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x402480: :4450)
==15109==    by 0x405610: :2742)
==15109==    by 0x409A6E: :1502)
==15109==    by 0x5306FC6: start_thread (in /lib/libpthread-2.7.so)
==15109==    by 0x583D5AC: clone (in /lib/libc-2.7.so)
==15109==  Address 0xc8 is not stack'd, malloc'd or (recently) free'd
==15109==
==15109== Process terminating with default action of signal 11 (SIGSEGV)
==15109==  Access not within mapped region at address 0xC8
==15109==    at 0x50E4BE6: my_real_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E4F7C: my_net_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50DFDF4: cli_safe_read (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x50E0A6D: mysql_real_connect (in /usr/local/lib/mysql/libmysqlclient_r.so.15.0.0)
==15109==    by 0x402480: :4450)
==15109==    by 0x405610: :2742)
==15109==    by 0x409A6E: :1502)
==15109==    by 0x5306FC6: start_thread (in /lib/libpthread-2.7.so)
==15109==    by 0x583D5AC: clone (in /lib/libc-2.7.so)
--15109-- Discarding syms at 0x6AC8000-0x6CD4000 in /lib/libnss_files-2.7.so due to munmap()
--15109-- Discarding syms at 0xA522000-0xA727000 in /lib/libnss_dns-2.7.so due to munmap()
--15109-- Discarding syms at 0xA727000-0xA93B000 in /lib/libresolv-2.7.so due to munmap()
==15109==
==15109== ERROR SUMMARY: 8 errors from 8 contexts (suppressed: 29 from 3)

smallNix

Мне кажется, что на этот вопрос тебе сможет ответить... Только ты сам ))) По-моему, на этом форуме главный специалист по valgrind - это ты  ;D Твой вопрос довольно узко направлен, ты не показываешь код приложения. Без этого довольно сложно анализировать. Кроме того серия твоих вопросов напоминает отладку твоей конкретной программы силами сообщества, при этом никто кроме тебя не понимает о чём речь. Очевидно, что у тебя более 50 потоков, при этом возникают некоторые проблемы с памятью, но это всё что можно сказать. В любом случае - это не очень культурно, как мне кажется. Потому что ответ на твой вопрос требует глубокого поиска с погружением в конкретно твою проблему с её спецификой, за твоё "спасибо" в лучшем случае.
Мой совет - если подозреваешь, что проблема в библиотеке - поищи информацию об этом в сети, но это не очень вероятно. Если некий кусок твоего кода беспокоит - выкладывай на обсуждение. Но не проси помогать тебе отлаживать каждую строчку твоей программы ;)
Кроме того, по valgrind, наверняка существуют специализированные форумы (как и по libmysqlclient_r).
Кто-то же должен что-то делать...