June 19, 2013

Post: Understand InnoDB spin waits, win a Percona Live ticket

… from SHOW INNODB STATUS mean? Mutex spin waits 5870888, rounds 19812448, OS waits 375285 To understand this text, you have to understand how InnoDB handles…, back to the output from SHOW INNODB STATUS. Here’s what it means. Mutex spin waits 5870888 is the number of times a… it waited in a spin-wait. rounds 19812448 is the number of times threads looped in the spin-wait cycle, checking the mutex. OS waits 375285…

Post: SHOW INNODB STATUS walk through

… flag 0 wait is ending Mutex spin waits 5672442, rounds 3899888, OS waits 4719 RW-shared spins 5920, OS waits 2918; RW-excl spins 3463, OS waits 3163… thread is not runniing inside innodb kernel status could be “waiting in InnoDB queue” or “sleeping before joining InnoDB queue”. Latest one is quite…

Post: kernel_mutex problem. Or double throughput with single variable

… all InnoDB mutexes) has complex handling with spin loops, and there are two variables that affects mutex loops: innodb_sync_spin_loops and innodb_spin_wait_delay… with innodb_sync_spin_loops=100 we can improve to 145324 q/s , almost to peak throughput from first experiment. With innodb_sync_spin

Post: The perils of InnoDB with Debian and startup scripts

spin waits 0, rounds 5023577, OS waits 24953 RW-shared spins 34364070, OS waits 33800501; RW-excl spins 5756394, OS waits 5297208 Everyone is waiting

Post: Internals of InnoDB mutexes

… here if spin loop was not successful reserve_cell in array of cell; wait on condition_variable in reserved cell; innodb_spin_locks is configurable via system variable innodb_sync_spin_loops (default value…

Post: Ultimate MySQL variable and status reference list

….commanual Innodb_rows_deletedblogpercona.commanual Innodb_rows_insertedblogpercona.commanual Innodb_rows_readblogpercona.commanual Innodb_rows_updatedblogpercona.commanual innodb_spin_wait_delayblogpercona.commanual innodb_stats_on_metadatablogpercona.commanual innodb_stats_sample_pagesblogpercona.commanual innodb_status_fileblogpercona.commanual innodb_strict_modeblogpercona.commanual innodb_support_xablogpercona.commanual innodb_sync_spin

Post: Helgrinding MySQL with InnoDB for Synchronisation Errors, Fun and Profit

… version (pre-5.1.61) and a single test, innodb_plugin.innodb_bug53674. The test is chosen for no particular reason except… of size 8 by thread #1 ==9090==    at 0x6BC9FFF: mutex_spin_wait (sync0sync.c:441) ==9090==    by 0x6B751FC: mtr_commit (sync0sync.ic… (srv0start.c:1514) ==9090==    by 0x6B48855: innobase_init(void*) (ha_innodb.cc:2284) ==9090==    by 0x712F17: ha_initialize_handlerton(st_plugin…

Comment: MySQL on Amazon RDS part 2: Determining Peak Throughput

innodb_replication_delay 0 innodb_rollback_on_timeout OFF innodb_spin_wait_delay 6 innodb_stats_on_metadata ON innodb_stats_sample_pages 8 innodb_strict_mode OFF innodb_support_xa ON innodb_sync_spin_loops 30 innodb

Comment: Review of MySQL 5.6 Defaults Changes

hickey.liu, we haven’t changed innodb_spin_wait_delay; it remains at 6. Try 6, 24 and 256 …

Comment: Review of MySQL 5.6 Defaults Changes

Hickey, innodb_spin_wait_delay (or number of rounds) is very workload specific, sometimes it needs to be set higher and sometimes lower depending on workload. Higher numbers do indeed cause waste of CPU but often end up giving better performance in the end.