Last active
August 29, 2015 14:06
-
-
Save maliubiao/1865332384ac7700f721 to your computer and use it in GitHub Desktop.
mysql thread backtrace
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import gdb | |
import os | |
log = "/tmp/gdb.out" | |
pid = int(open("/tmp/gdb.in", "r").read()) | |
gdb.execute("attach %d" % pid) | |
logfile = open(log, "w+", buffering=0) | |
p = gdb.selected_inferior() | |
of = "{:<5}{:<10}{:<5}\n" | |
logfile.write(of.format("NUM", "NAME", "TID")) | |
for t in p.threads(): | |
logfile.write(of.format(t.num, t.name, t.ptid[1])) | |
t.switch() | |
logfile.write(gdb.execute("backtrace", to_string=True)) | |
gdb.execute("detach") | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#! /bin/sh | |
echo $1 > /tmp/gdb.in | |
gdb --batch-silent --python mysql_backtrace.py | |
cat /tmp/gdb.out | |
rm /tmp/gdb.in |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
./mysql_backtrace.sh pid | |
NUM NAME TID | |
21 mysqld 1404 | |
#0 0x00007f3a925f66a4 in ?? () from /lib64/libaio.so.1 | |
#1 0x0000000000938605 in ?? () | |
#2 0x00000000008ea4cf in ?? () | |
#3 0x000000000085be08 in ?? () | |
#4 0x00007f3a91d8b0db in start_thread (arg=0x7f3a90b60700) at pthread_create.c:309 | |
#5 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
20 mysqld 1405 | |
#0 0x00007f3a925f66a4 in ?? () from /lib64/libaio.so.1 | |
#1 0x0000000000938605 in ?? () | |
#2 0x00000000008ea4cf in ?? () | |
#3 0x000000000085be08 in ?? () | |
#4 0x00007f3a91d8b0db in start_thread (arg=0x7f3a7e9dc700) at pthread_create.c:309 | |
#5 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
19 mysqld 1406 | |
#0 0x00007f3a925f66a4 in ?? () from /lib64/libaio.so.1 | |
#1 0x0000000000938605 in ?? () | |
#2 0x00000000008ea4cf in ?? () | |
#3 0x000000000085be08 in ?? () | |
#4 0x00007f3a91d8b0db in start_thread (arg=0x7f3a7e1db700) at pthread_create.c:309 | |
#5 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
18 mysqld 1407 | |
#0 0x00007f3a925f66a4 in ?? () from /lib64/libaio.so.1 | |
#1 0x0000000000938605 in ?? () | |
#2 0x00000000008ea4cf in ?? () | |
#3 0x000000000085be08 in ?? () | |
#4 0x00007f3a91d8b0db in start_thread (arg=0x7f3a7d9da700) at pthread_create.c:309 | |
#5 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
17 mysqld 1408 | |
#0 0x00007f3a925f66a4 in ?? () from /lib64/libaio.so.1 | |
#1 0x0000000000938605 in ?? () | |
#2 0x00000000008ea4cf in ?? () | |
#3 0x000000000085be08 in ?? () | |
#4 0x00007f3a91d8b0db in start_thread (arg=0x7f3a7d1d9700) at pthread_create.c:309 | |
#5 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
16 mysqld 1409 | |
#0 0x00007f3a925f66a4 in ?? () from /lib64/libaio.so.1 | |
#1 0x0000000000938605 in ?? () | |
#2 0x00000000008ea4cf in ?? () | |
#3 0x000000000085be08 in ?? () | |
#4 0x00007f3a91d8b0db in start_thread (arg=0x7f3a7c9d8700) at pthread_create.c:309 | |
#5 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
15 mysqld 1410 | |
#0 0x00007f3a925f66a4 in ?? () from /lib64/libaio.so.1 | |
#1 0x0000000000938605 in ?? () | |
#2 0x00000000008ea4cf in ?? () | |
#3 0x000000000085be08 in ?? () | |
#4 0x00007f3a91d8b0db in start_thread (arg=0x7f3a7c1d7700) at pthread_create.c:309 | |
#5 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
14 mysqld 1411 | |
#0 0x00007f3a925f66a4 in ?? () from /lib64/libaio.so.1 | |
#1 0x0000000000938605 in ?? () | |
#2 0x00000000008ea4cf in ?? () | |
#3 0x000000000085be08 in ?? () | |
#4 0x00007f3a91d8b0db in start_thread (arg=0x7f3a7b9d6700) at pthread_create.c:309 | |
#5 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
13 mysqld 1412 | |
#0 0x00007f3a925f66a4 in ?? () from /lib64/libaio.so.1 | |
#1 0x0000000000938605 in ?? () | |
#2 0x00000000008ea4cf in ?? () | |
#3 0x000000000085be08 in ?? () | |
#4 0x00007f3a91d8b0db in start_thread (arg=0x7f3a7b1d5700) at pthread_create.c:309 | |
#5 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
12 mysqld 1413 | |
#0 0x00007f3a925f66a4 in ?? () from /lib64/libaio.so.1 | |
#1 0x0000000000938605 in ?? () | |
#2 0x00000000008ea4cf in ?? () | |
#3 0x000000000085be08 in ?? () | |
#4 0x00007f3a91d8b0db in start_thread (arg=0x7f3a7a9d4700) at pthread_create.c:309 | |
#5 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
11 mysqld 1415 | |
#0 pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:238 | |
#1 0x000000000093a283 in ?? () | |
#2 0x0000000000858910 in ?? () | |
#3 0x00007f3a91d8b0db in start_thread (arg=0x7f3a79c36700) at pthread_create.c:309 | |
#4 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
10 mysqld 1416 | |
#0 pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:238 | |
#1 0x000000000093a283 in ?? () | |
#2 0x0000000000858ea1 in ?? () | |
#3 0x00007f3a91d8b0db in start_thread (arg=0x7f3a79435700) at pthread_create.c:309 | |
#4 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
9 mysqld 1417 | |
#0 pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:238 | |
#1 0x000000000093a283 in ?? () | |
#2 0x00000000008585eb in ?? () | |
#3 0x00007f3a91d8b0db in start_thread (arg=0x7f3a78c34700) at pthread_create.c:309 | |
#4 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
8 mysqld 1418 | |
#0 pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:238 | |
#1 0x000000000093a283 in ?? () | |
#2 0x00000000008591b3 in ?? () | |
#3 0x00007f3a91d8b0db in start_thread (arg=0x7f3a78433700) at pthread_create.c:309 | |
#4 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
7 mysqld 1419 | |
#0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 | |
#1 0x000000000093a179 in ?? () | |
#2 0x0000000000859ca3 in ?? () | |
#3 0x00007f3a91d8b0db in start_thread (arg=0x7f3a77c32700) at pthread_create.c:309 | |
#4 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
6 mysqld 1420 | |
#0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 | |
#1 0x000000000093a179 in ?? () | |
#2 0x000000000085ba71 in ?? () | |
#3 0x00007f3a91d8b0db in start_thread (arg=0x7f3a77431700) at pthread_create.c:309 | |
#4 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
5 mysqld 1424 | |
#0 pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:238 | |
#1 0x0000000000997606 in ?? () | |
#2 0x000000000098edb1 in ?? () | |
#3 0x00007f3a91d8b0db in start_thread (arg=0x7f3a6ec2f700) at pthread_create.c:309 | |
#4 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
4 mysqld 1425 | |
#0 do_sigwait (set=<optimized out>, sig=0x7f3a7a1d2de0) at ../sysdeps/unix/sysv/linux/sigwait.c:63 | |
#1 0x00007f3a91d927b3 in __sigwait (set=0x7f3a7a1d2e40, sig=0x0) at ../sysdeps/unix/sysv/linux/sigwait.c:97 | |
#2 0x0000000000542603 in signal_hand () | |
#3 0x00007f3a91d8b0db in start_thread (arg=0x7f3a7a1d3700) at pthread_create.c:309 | |
#4 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
3 mysqld 1426 | |
#0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 | |
#1 0x00000000005436af in one_thread_per_connection_end(THD*, bool) () | |
#2 0x000000000066e490 in do_handle_one_connection(THD*) () | |
#3 0x000000000066e5b1 in handle_one_connection () | |
#4 0x00007f3a91d8b0db in start_thread (arg=0x7f3a7a18a700) at pthread_create.c:309 | |
#5 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
2 mysqld 1429 | |
#0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 | |
#1 0x00000000005436af in one_thread_per_connection_end(THD*, bool) () | |
#2 0x000000000066e490 in do_handle_one_connection(THD*) () | |
#3 0x000000000066e5b1 in handle_one_connection () | |
#4 0x00007f3a91d8b0db in start_thread (arg=0x7f3a7a141700) at pthread_create.c:309 | |
#5 0x00007f3a90e5f58d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 | |
1 mysqld 1401 | |
#0 0x00007f3a90e567bd in poll () at ../sysdeps/unix/syscall-template.S:81 | |
#1 0x0000000000543e0b in handle_connections_sockets() () | |
#2 0x0000000000548fbf in mysqld_main(int, char**) () | |
#3 0x00007f3a90d99be5 in __libc_start_main (main=0x52ec10 <main>, argc=4, argv=0x7fff85e6ea98, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fff85e6ea88) at libc-start.c:269 | |
#4 0x000000000053f929 in _start () |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment