Tag Archives: innodb

best free() is exit()

Whenever any maintenance needs server restarts, there’s a list of unsolved bottlenecks or inefficient code that gets touched a lot at that time. I can understand that heating up the server can take lots of time (though lots of low … Continue reading

Posted in mysql | Tagged | 7 Comments

Crash recovery, again

There’s one stage in InnoDB crash recovery where it reads log file, you know, this one: InnoDB: Doing recovery: scanned up to log sequence number 354164119040 InnoDB: Doing recovery: scanned up to log sequence number 354169361920 On a machine with … Continue reading

Posted in mysql | Tagged , , ,

plugin and 5.1

You can check it yourself – 5.1 seems to be shipped with InnoDB plugin in future :-) (oh the joy of open source repositories, always ready to spoil the surprise, eh?:)

Posted in mysql | Tagged , | 1 Comment

Checksums again, some I/O too

When I was doing data loading tests, I realized that usually low checksum calculation CPU percentage is actually the blocking factor. See, usually when background writers do the flushing, it gets parallelized, but if active query is forcing a checkpoint, … Continue reading

Posted in mysql | Tagged , , | 3 Comments

stop messing with the tablespace

People keep loving and endorsing the –innodb-file-per-table. Then poor new users read about that, get confused, start using –innodb-file-per-table, and tell others to. Others read then, get confused even more, and start using –innodb-file-per-table, then write about it. Then… Oh … Continue reading

Posted in mysql | Tagged , , | 13 Comments

On throttling

Seems like nowadays InnoDB crash recovery is much funnier. Please allow me to show you something: while (buf_pool->n_pend_reads >= recv_n_pool_free_frames / 2) { os_aio_simulated_wake_handler_threads(); os_thread_sleep(500000); Translation – if there’re more than 128 outstanding I/O requests, sleep for half a second. … Continue reading

Posted in mysql | Tagged , | 3 Comments

after the conference, mydumper, parallelism, etc

Though slides for my MySQL Conference talks were on the O’Reilly website, I placed them in my talks page too, for both dtrace and security presentations. I also gave a lightning talk about mydumper. Since my original announcement mydumper has … Continue reading

Posted in mysql | Tagged , , | 6 Comments

stupid innodb tricks

When it comes to extreme tuning, this is how I got +5% performance in one of my tests on 8-cpu machine (contended at mtr_commit()): gdb -p $(pidof mysqld) -ex “set srv_spin_wait_delay=50″ -batch P.S. was probably worth posting this just to … Continue reading

Posted in mysql | Tagged , , , | 4 Comments

Eyecandy mutexes!

In my quest of making MySQL usable, I managed to hit contention that wasn’t spotted by performance masters before. Meet most useless mutex ever (this is actual contention event, not just a hold): Count nsec Lock 1451 511364 mysqld`ut_list_mutex nsec … Continue reading

Posted in mysql | Tagged , , | 3 Comments

Charsets mutex meets InnoDB

When InnoDB compares data (like, when looking up in indexes), it actually asks help from MySQL – character sets may provide different rules for evaluation. MySQL then looks up character set information. This is where the fun begins – if … Continue reading

Posted in mysql | Tagged , | 1 Comment