There are several Valgrind warnings in the log that may help. See bundles. An example:
==8625== Invalid read of size 8
==8625== at 0x4E363CD: free (in /usr/lib64/libjemalloc.so.1)
==8625== by 0x506E2E9: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so)
==8625== by 0xE198C5: spawn_thread_v1 (pfs.cc:1910)
==8625== by 0x8CD981: inline_mysql_thread_create (mysql_thread.h:1252)
==8625== by 0x8CE736: create_worker(thread_group_t*) (threadpool_unix.cc:881)
==8625== by 0x8CE968: wake_or_create_thread(thread_group_t*) (threadpool_unix.cc:971)
==8625== by 0x8CE24E: check_stall(thread_group_t*) (threadpool_unix.cc:660)
==8625== by 0x8CE0E8: timer_thread(void*) (threadpool_unix.cc:580)
==8625== by 0xE1975F: pfs_spawn_thread (pfs.cc:1860)
==8625== by 0x506DDF2: start_thread (in /usr/lib64/libpthread-2.17.so)
==8625== by 0x63DC3DC: clone (in /usr/lib64/libc-2.17.so)
==8625== Address 0x74047f8 is 3,384 bytes inside a block of size 8,288 free'd
==8625== at 0x4C29991: operator delete(void*) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==8625== by 0x631871: __gnu_cxx::new_allocator<my_option>::deallocate(my_option*, unsigned long) (new_allocator.h:110)
==8625== by 0x6306AD: std::_Vector_base<my_option, std::allocator<my_option> >::_M_deallocate(my_option*, unsigned long) (stl_vector.h:174)
==8625== by 0x62FCF6: std::vector<my_option, std::allocator<my_option> >::_M_insert_aux(__gnu_cxx::__normal_iterator<my_option*, std::vector<my_option, std::allocator<my_option> > >, my_option const&) (vector.tcc:386)
==8625== by 0x62F043: std::vector<my_option, std::allocator<my_option> >::push_back(my_option const&) (stl_vector.h:913)
==8625== by 0x730803: sys_var::register_option(std::vector<my_option, std::allocator<my_option> >*, int) (set_var.h:155)
==8625== by 0x72E9E2: sys_var_add_options(std::vector<my_option, std::allocator<my_option> >*, int) (set_var.cc:86)
==8625== by 0x62BA11: get_options(int*, char***) (mysqld.cc:9077)
==8625== by 0x6235A6: init_common_variables() (mysqld.cc:3950)
==8625== by 0x626822: mysqld_main(int, char**) (mysqld.cc:5515)
==8625== by 0x61BAEF: main (main.cc:25)
==8625==
==8625== Invalid write of size 8
==8625== at 0x4E3652C: free (in /usr/lib64/libjemalloc.so.1)
==8625== by 0x506E2E9: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so)
==8625== by 0xE198C5: spawn_thread_v1 (pfs.cc:1910)
==8625== by 0x8CD981: inline_mysql_thread_create (mysql_thread.h:1252)
==8625== by 0x8CE736: create_worker(thread_group_t*) (threadpool_unix.cc:881)
==8625== by 0x8CE968: wake_or_create_thread(thread_group_t*) (threadpool_unix.cc:971)
==8625== by 0x8CE24E: check_stall(thread_group_t*) (threadpool_unix.cc:660)
==8625== by 0x8CE0E8: timer_thread(void*) (threadpool_unix.cc:580)
==8625== by 0xE1975F: pfs_spawn_thread (pfs.cc:1860)
==8625== by 0x506DDF2: start_thread (in /usr/lib64/libpthread-2.17.so)
==8625== by 0x63DC3DC: clone (in /usr/lib64/libc-2.17.so)
==8625== Address 0x0 is not stack'd, malloc'd or (recently) free'd
There are several Valgrind warnings in the log that may help. See bundles. An example:
==8625== Invalid read of size 8 libjemalloc. so.1) create@ @GLIBC_ 2.2.5 (in /usr/lib64/ libpthread- 2.17.so) mysql_thread_ create (mysql_ thread. h:1252) worker( thread_ group_t* ) (threadpool_ unix.cc: 881) create_ thread( thread_ group_t* ) (threadpool_ unix.cc: 971) thread_ group_t* ) (threadpool_ unix.cc: 660) unix.cc: 580) libpthread- 2.17.so) libc-2. 17.so) valgrind/ vgpreload_ memcheck- amd64-linux. so) :new_allocator< my_option> ::deallocate( my_option* , unsigned long) (new_allocator. h:110) base<my_ option, std::allocator< my_option> >::_M_deallocat e(my_option* , unsigned long) (stl_vector.h:174) my_option, std::allocator< my_option> >::_M_insert_ aux(__gnu_ cxx::__ normal_ iterator< my_option* , std::vector< my_option, std::allocator< my_option> > >, my_option const&) (vector.tcc:386) my_option, std::allocator< my_option> >::push_ back(my_ option const&) (stl_vector.h:913) :register_ option( std::vector< my_option, std::allocator< my_option> >*, int) (set_var.h:155) add_options( std::vector< my_option, std::allocator< my_option> >*, int) (set_var.cc:86) variables( ) (mysqld.cc:3950) libjemalloc. so.1) create@ @GLIBC_ 2.2.5 (in /usr/lib64/ libpthread- 2.17.so) mysql_thread_ create (mysql_ thread. h:1252) worker( thread_ group_t* ) (threadpool_ unix.cc: 881) create_ thread( thread_ group_t* ) (threadpool_ unix.cc: 971) thread_ group_t* ) (threadpool_ unix.cc: 660) unix.cc: 580) libpthread- 2.17.so) libc-2. 17.so)
==8625== at 0x4E363CD: free (in /usr/lib64/
==8625== by 0x506E2E9: pthread_
==8625== by 0xE198C5: spawn_thread_v1 (pfs.cc:1910)
==8625== by 0x8CD981: inline_
==8625== by 0x8CE736: create_
==8625== by 0x8CE968: wake_or_
==8625== by 0x8CE24E: check_stall(
==8625== by 0x8CE0E8: timer_thread(void*) (threadpool_
==8625== by 0xE1975F: pfs_spawn_thread (pfs.cc:1860)
==8625== by 0x506DDF2: start_thread (in /usr/lib64/
==8625== by 0x63DC3DC: clone (in /usr/lib64/
==8625== Address 0x74047f8 is 3,384 bytes inside a block of size 8,288 free'd
==8625== at 0x4C29991: operator delete(void*) (in /usr/lib64/
==8625== by 0x631871: __gnu_cxx:
==8625== by 0x6306AD: std::_Vector_
==8625== by 0x62FCF6: std::vector<
==8625== by 0x62F043: std::vector<
==8625== by 0x730803: sys_var:
==8625== by 0x72E9E2: sys_var_
==8625== by 0x62BA11: get_options(int*, char***) (mysqld.cc:9077)
==8625== by 0x6235A6: init_common_
==8625== by 0x626822: mysqld_main(int, char**) (mysqld.cc:5515)
==8625== by 0x61BAEF: main (main.cc:25)
==8625==
==8625== Invalid write of size 8
==8625== at 0x4E3652C: free (in /usr/lib64/
==8625== by 0x506E2E9: pthread_
==8625== by 0xE198C5: spawn_thread_v1 (pfs.cc:1910)
==8625== by 0x8CD981: inline_
==8625== by 0x8CE736: create_
==8625== by 0x8CE968: wake_or_
==8625== by 0x8CE24E: check_stall(
==8625== by 0x8CE0E8: timer_thread(void*) (threadpool_
==8625== by 0xE1975F: pfs_spawn_thread (pfs.cc:1860)
==8625== by 0x506DDF2: start_thread (in /usr/lib64/
==8625== by 0x63DC3DC: clone (in /usr/lib64/
==8625== Address 0x0 is not stack'd, malloc'd or (recently) free'd