[lldb-dev] lldb segfault when debugging mysql in certain functions

Jeff Davis via lldb-dev lldb-dev at lists.llvm.org
Fri Jun 17 11:10:38 PDT 2016


LLDB/clang 3.8.0.

I compiled mysql 5.6 from source (
https://github.com/mysql/mysql-server.git
6594835303da437105bb3841df976620b716e088 ), using:

cmake . -DWITH_DEBUG=1 -DCMAKE_C_COMPILER=clang
-DCMAKE_CXX_COMPILER=clang++ -DCMAKE_INSTALL_PREFIX=/some/path
-DCMAKE_VERBOSE_MAKEFILE=1

I run mysqld, attach to it, and do:

...
Architecture set to: x86_64--linux.
(lldb) p 1
(int) $0 = 1
(lldb) break set -n JOIN::optimize
Breakpoint 1: where = mysqld`JOIN::optimize() + 42 at
sql_optimizer.cc:120, address = 0x0000000000a6b96a
(lldb) c
Process 20415 resuming

[ in mysql client, issue "select 1" ]

Process 20415 stopped
* thread #22: tid = 20477, 0x0000000000a6b96a
mysqld`JOIN::optimize(this=0x00007f07740052b0) + 42 at
sql_optimizer.cc:120, name = 'mysqld', stop reason = breakpoint 1.1
    frame #0: 0x0000000000a6b96a
mysqld`JOIN::optimize(this=0x00007f07740052b0) + 42 at
sql_optimizer.cc:120
   117  JOIN::optimize()
   118  {
   119    ulonglong select_opts_for_readinfo;
-> 120    uint no_jbuf_after= UINT_MAX;
   121
   122    DBUG_ENTER("JOIN::optimize");
   123    DBUG_ASSERT(!tables || thd->lex->is_query_tables_locked());
(lldb) p 1
zsh: segmentation fault  lldb -p 20415

I reproduced this based on someone else's more complicated report (and
I don't have the full details there) but if there are more details I
can provide about this simple case, please let me know.

Regards,
     Jeff Davis


More information about the lldb-dev mailing list