Not the answer you need?
Register and ask your own question!

"Random" segfaults Percona XtraDB Cluster 5.6 [debian jessie]

winusvanheumenwinusvanheumen EntrantInactive User Role Beginner
Hello Technicians ;-)

I have a Percona XtraDB Cluster 5.6 running on 3 virtual machines which run on 3 dedicated servers (along with a few other virtual machines ). But we are experiencing some "Random" issues with it.

It has been running for about 2.5 months now, but since the last update we have noticed this.

Running version : mysqld Ver 5.6.25-73.1-56 for debian-linux-gnu on x86_64 (Percona XtraDB Cluster (GPL), Release rel73.1, Revision 011f1e6, WSREP version 25.12, wsrep_25.12).
Installed from percona repository.
ii  percona-xtrabackup                      2.2.12-1.jessie             amd64        Open source backup tool for InnoDB and XtraDB
ii  percona-xtradb-cluster-5.6-dbg          5.6.25-25.12-1.jessie       amd64        Debugging package for Percona XtraDB Cluster
ii  percona-xtradb-cluster-client-5.6       5.6.25-25.12-1.jessie       amd64        Percona XtraDB Cluster database client binaries
ii  percona-xtradb-cluster-common-5.6       5.6.25-25.12-1.jessie       amd64        Percona XtraDB Cluster database common files (e.g. /etc/mysql/my.cnf)
ii  percona-xtradb-cluster-full-56          5.6.25-25.12-1.jessie       amd64        Percona XtraDB Cluster with Galera
ii  percona-xtradb-cluster-galera-3         3.12.1.jessie               amd64        Metapackage for latest version of galera3.
ii  percona-xtradb-cluster-galera-3.x       3.12.1.jessie               amd64        Galera components of Percona XtraDB Cluster
ii  percona-xtradb-cluster-galera-3.x-dbg   3.12.1.jessie               amd64        Debugging package for Percona XtraDB Cluster Galera 3.
ii  percona-xtradb-cluster-galera3-dbg      3.12.1.jessie               amd64        Metapackage for latest version of debug packages.
ii  percona-xtradb-cluster-garbd-3          3.12.1.jessie               amd64        Metapackage for latest version of garbd3.
ii  percona-xtradb-cluster-garbd-3.x        3.12.1.jessie               amd64        Garbd components of Percona XtraDB Cluster
ii  percona-xtradb-cluster-garbd-3.x-dbg    3.12.1.jessie               amd64        Debugging package for Percona XtraDB Cluster Garbd 3.
ii  percona-xtradb-cluster-server-5.6       5.6.25-25.12-1.jessie       amd64        Percona XtraDB Cluster database server binaries
ii  percona-xtradb-cluster-server-debug-5.6 5.6.25-25.12-1.jessie       amd64        Percona XtraDB Cluster database server UNIV_DEBUG binaries
ii  percona-xtradb-cluster-test-5.6         5.6.25-25.12-1.jessie       amd64        Percona XtraDB Cluster database test suite


Debian version: Debian GNU/Linux 8 (jessie) / Linux db03 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u3 (2015-08-04) x86_64 GNU/Linux


When some of our cronjob run, sometimes, one of the mysqld instances die with a segfault, without stacktrace in the mysql/error.log. But the segfault do have some overlap.

Machines all have 16GB ram and 8 Cores

[dmesg]
DB1:
mysqld[109929]: segfault at 51 ip 00007efd5cf0b688 sp 00007efd3024fb90 error 4 in libgcc_s.so.1[7efd5cefc000+16000]

DB2:
mysqld[105281]: segfault at 51 ip 00007f68ed54c688 sp 00007f65df888b90 error 4 in libgcc_s.so.1[7f68ed53d000+16000]
mysqld[126427]: segfault at 51 ip 00007fbc9ca82688 sp 00007fbc70089b90 error 4 in libgcc_s.so.1[7fbc9ca73000+16000]

DB3:
mysqld[93067]: segfault at 51 ip 00007f693fe18688 sp 00007f66312f2b90 error 4 in libgcc_s.so.1[7f693fe09000+16000]
I've turned on Core dumping on the DB2, but it has not crashed yet ...


This is the last error from db03
2015-10-06 14:56:41 45455 [Note] WSREP: Member 2.0 (db02) synced with group.
09:02:07 UTC - mysqld got signal 11 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
We will try our best to scrape up some info that will hopefully help
diagnose the problem, but since we have already crashed, 
something is definitely wrong and this may fail.
Please help us make Percona XtraDB Cluster better by reporting any
bugs at https://bugs.launchpad.net/percona-xtradb-cluster

key_buffer_size=536870912
read_buffer_size=131072
max_used_connections=56
max_threads=202
thread_count=3
connection_count=1
It is possible that mysqld could use up to 
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 604732 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.

Thread pointer: 0x15f9ab0
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
Segmentation fault
151012 11:02:09 mysqld_safe Number of processes running now: 0
151012 11:02:09 mysqld_safe WSREP: not restarting wsrep node automatically
151012 11:02:09 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
151012 11:12:58 mysqld_safe Starting mysqld daemon with databases from /srv

my.cnf
#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
#
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html

# This will be passed to all mysql clients
# It has been reported that passwords should be enclosed with ticks/quotes
# escpecially if they contain "#" chars...
# Remember to edit /etc/mysql/debian.cnf when changing the socket location.
[client]
port            = 3306
socket          = /var/run/mysqld/mysqld.sock

# Here is entries for some specific programs
# The following values assume you have at least 32M ram

# This was formally known as [safe_mysqld]. Both versions are currently parsed.
[mysqld_safe]
socket          = /var/run/mysqld/mysqld.sock
nice            = 0

[mysqld]
#
# * Basic Settings
#
user            = mysql
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
port            = 3306
basedir         = /usr
datadir         = /srv
tmpdir          = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking

skip_name_resolve

##GALERA CLUSTER###

# Path to Galera library
wsrep_provider=/usr/lib/libgalera_smm.so

# Cluster connection URL contains the IPs of node#1, node#2 and node#3
wsrep_cluster_address=gcomm://192.168.200.11,192.168.200.21,192.168.200.31

# In order for Galera to work correctly binlog format should be ROW
binlog_format=ROW

#barracuda for compressed tables
innodb_file_format=Barracuda

#file per table mandatory with baracuda
innodb_file_per_table

# MyISAM storage engine has only experimental support
default_storage_engine=InnoDB

# This changes how InnoDB autoincrement locks are managed and is a requirement for Galera
innodb_autoinc_lock_mode=2

# Node #1 address
wsrep_node_address=192.168.200.31

# SST method
wsrep_sst_method=xtrabackup-v2

# Cluster name
wsrep_cluster_name=scomcluster

# Authentication for SST method
wsrep_sst_auth="hidden;-)" 

#replicate myisam
wsrep_replicate_myisam=1

#required for clustering
log_slave_updates=1


#larger tmp tables in memory, we have enough
max_heap_table_size=128M;
tmp_table_size=128M;

#open tables;
#table_cache=2048

#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
#bind-address            = 127.0.0.1
#
# * Fine Tuning
#
key_buffer_size         = 512M
max_allowed_packet      = 16M
thread_stack            = 192K
thread_cache_size       = 8
# This replaces the startup script and checks MyISAM tables if needed
# the first time they are touched
myisam-recover         = BACKUP
max_connections        = 200
#table_cache            = 64
thread_concurrency     = 10



# 
# * Query Cache Configuration
# 
query_cache_type        = 0
query_cache_limit       = 1M
query_cache_size        = 0
# 
# * Logging and Replication
# 
# Both location gets rotated by the cronjob.
# Be aware that this log type is a performance killer.
# As of 5.1 you can enable the log at runtime!
#general_log_file        = /var/log/mysql/mysql.log
#general_log             = 1
#
# Error log - should be very few entries.
# 
log_error = /var/log/mysql/error.log
#
# Here you can see queries with especially long duration
#slow_query_log_file = /var/log/mysql/mysql-slow.log
#slow_query_log      = 1
#long_query_time = 2
#log_queries_not_using_indexes
#
# The following can be used as easy to replay backup logs or for replication.
# note: if you are setting up a replication slave, see README.Debian about
#       other settings you may need to change.
#server-id              = 1
#log_bin                        = /var/log/mysql/mysql-bin.log
expire_logs_days        = 10
max_binlog_size         = 100M
#binlog_do_db           = include_database_name
#binlog_ignore_db       = include_database_name
#
# * InnoDB
#
# InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
# Read the manual for more InnoDB related options. There are many!
# 
# * Security Features
#
# Read the manual, too, if you want chroot!
# chroot = /var/lib/mysql/
#
# For generating SSL certificates I recommend the OpenSSL GUI "tinyca".
#
# ssl-ca=/etc/mysql/cacert.pem
# ssl-cert=/etc/mysql/server-cert.pem
# ssl-key=/etc/mysql/server-key.pem

innodb_buffer_pool_size = 10G
innodb_log_file_size=512M

#innodb_open_files_limit=256

[mysqldump]
quick
quote-names
max_allowed_packet      = 16M

[mysql]
#no-auto-rehash # faster start of mysql but no tab completition

[isamchk]
key_buffer              = 256M

# 
# * IMPORTANT: Additional settings that can override those from this file!
#   The files must end with '.cnf', otherwise they'll be ignored.
#
!includedir /etc/mysql/conf.d/

Comments

  • winusvanheumenwinusvanheumen Entrant Inactive User Role Beginner
    Another crash, first timer for a stacktrace! :-)
    14:03:43 UTC - mysqld got signal 11 ;
    This could be because you hit a bug. It is also possible that this binary
    or one of the libraries it was linked against is corrupt, improperly built,
    or misconfigured. This error can also be caused by malfunctioning hardware.
    We will try our best to scrape up some info that will hopefully help
    diagnose the problem, but since we have already crashed,
    something is definitely wrong and this may fail.
    Please help us make Percona XtraDB Cluster better by reporting any
    bugs at https://bugs.launchpad.net/percona-xtradb-cluster
    
    key_buffer_size=536870912
    read_buffer_size=131072
    max_used_connections=26
    max_threads=202
    thread_count=6
    connection_count=4
    It is possible that mysqld could use up to
    key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 604732 K  bytes of memory
    Hope that's ok; if not, decrease some variables in the equation.
    
    Thread pointer: 0x13b58b70
    Attempting backtrace. You can use the following information to find out
    where mysqld died. If you see no messages after this, something went
    terribly wrong...
    stack_bottom = 7f9596336e48 thread_stack 0x30000
    /usr/sbin/mysqld(my_print_stacktrace+0x2c)[0x90340c]
    /usr/sbin/mysqld(handle_fatal_signal+0x469)[0x686d29]
    /lib/x86_64-linux-gnu/libpthread.so.0(+0xf8d0)[0x7f98a58778d0]
    /usr/sbin/mysqld(_Z11ull_get_keyPKhPmc+0x14)[0x61ac84]
    /usr/sbin/mysqld(my_hash_first_from_hash_value+0x6b)[0x8e230b]
    /usr/sbin/mysqld(my_hash_search+0x11)[0x8e24c1]
    /usr/sbin/mysqld(_ZN22Item_func_release_lock7val_intEv+0xfa)[0x61d44a]
    /usr/sbin/mysqld(_ZN4Item4sendEP8ProtocolP6String+0x18c)[0x5d961c]
    /usr/sbin/mysqld(_ZN8Protocol19send_result_set_rowEP4ListI4ItemE+0xb5)[0x680915]
    /usr/sbin/mysqld(_ZN11select_send9send_dataER4ListI4ItemE+0x68)[0x6d4d88]
    /usr/sbin/mysqld(_ZN4JOIN4execEv+0x661)[0x6e30f1]
    /usr/sbin/mysqld(_Z12mysql_selectP3THDP10TABLE_LISTjR4ListI4ItemEPS4_P10SQL_I_ListI8st_orderESB_S7_yP13select_resultP18st_select_lex_unitP13st_select_lex+0x26d)[0x72f24d]
    /usr/sbin/mysqld(_Z13handle_selectP3THDP13select_resultm+0x127)[0x72fa07]
    /usr/sbin/mysqld[0x583bac]
    /usr/sbin/mysqld(_Z21mysql_execute_commandP3THD+0xf87)[0x706da7]
    /usr/sbin/mysqld(_ZN18Prepared_statement7executeEP6Stringb+0x39b)[0x72094b]
    /usr/sbin/mysqld[0x720c4a]
    /usr/sbin/mysqld(_Z22mysql_sql_stmt_executeP3THD+0xb3)[0x721443]
    /usr/sbin/mysqld(_Z21mysql_execute_commandP3THD+0x1a2e)[0x70784e]
    /usr/sbin/mysqld(_Z11mysql_parseP3THDPcjP12Parser_state+0x5c8)[0x70d0a8]
    /usr/sbin/mysqld[0x70d7bc]
    /usr/sbin/mysqld(_Z16dispatch_command19enum_server_commandP3THDPcj+0x1659)[0x70f4e9]
    /usr/sbin/mysqld(_Z10do_commandP3THD+0x2b2)[0x710722]
    /usr/sbin/mysqld(_Z24do_handle_one_connectionP3THD+0x172)[0x6da542]
    /usr/sbin/mysqld(handle_one_connection+0x40)[0x6da720]
    /usr/sbin/mysqld(pfs_spawn_thread+0x143)[0x93a093]
    /lib/x86_64-linux-gnu/libpthread.so.0(+0x80a4)[0x7f98a58700a4]
    /lib/x86_64-linux-gnu/libc.so.6(clone+0x6d)[0x7f98a3abd04d]
    
    Trying to get some variables.
    Some pointers may be invalid and cause the dump to abort.
    Query (7f957c418b50): is an invalid pointer
    Connection ID (thread ID): 395776
    Status: NOT_KILLED
    
    You may download the Percona XtraDB Cluster operations manual by visiting
    http://www.percona.com/software/percona-xtradb-cluster/. You may find information
    in the manual which will help you identify the cause of the crash.
    151012 16:03:44 mysqld_safe Number of processes running now: 0
    151012 16:03:44 mysqld_safe WSREP: not restarting wsrep node automatically
    151012 16:03:44 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
    
Sign In or Register to comment.

MySQL, InnoDB, MariaDB and MongoDB are trademarks of their respective owners.
Copyright ©2005 - 2020 Percona LLC. All rights reserved.