-
Recent Posts
Recent Comments
- Sinisa Milivojevic on Hash of shame
- Martynas on Hash of shame
- Domas Mituzas on Hash of shame
- Hash on Hash of shame
- mdcallag on Hash of shame
Tag Archives: innodb
On InnoDB compression in production
Our latest changes have been pushed to public mysql@facebook branch, allowing this post to happen \o/ Recently we started rolling out InnoDB compression to our main database tier, and that has been a huge undertaking for multiple teams and a … Continue reading
Blowing up in memory
MySQL isn’t too concerned about table handler memory usage – it will allocate row size buffer thrice per each table invocation. There’s a few year old bug discussing UNION memory usage – for each mention in an union one can allocate … Continue reading
InnoDB subsystems in color
I tried to put every subdirectory of InnoDB codebase into a chart that would explain some of relations between subsystems and modules inside the source. This is what I got (click to enlarge): Update: Check Vadim’s diagram for a more … Continue reading
InnoDB locking makes me sad
Vadim and others have pointed at the index->lock problems before, but I think they didn’t good job enough at pointing out how bad it can get (the actual problematic was hidden somewhere as some odd edge case). What ‘index lock’ … Continue reading
MySQL metrics for read workloads
There are multiple metrics that are really useful for read workload analysis, that should all be tracked and looked at in performance-critical environments. The most commonly used is of course Questions (or ‘Queries’, ‘COM_Select’) – this is probably primary finger-pointing … Continue reading
Posted in facebook, mysql
Tagged easy, innodb, monitoring, performance, profiling
Logs memory pressure
Warning, this may be kernel version specific, albeit this kernel is used by many database systems Lately I’ve been working on getting more memory used by InnoDB buffer pool – besides obvious things like InnoDB memory tax there were seemingly … Continue reading
random poking
These are some of my notes from some sysbench in-memory r/o testing in past day or so: At ‘fetch data by primary key’ benchmark with separate read snapshots at each statement, MySQL shines until ~200 concurrent threads, then performance starts … Continue reading
on performance stalls
We quite often say, that benchmark performance is usually different from real world performance – so performance engineering usually has to cover both – benchmarks allow to understand sustained performance bottlenecks, and real world analysis usually concentrates on something what … Continue reading
Read ahead…
Mark wrote about how to find situations where InnoDB read-ahead is a bottleneck. What he didn’t disclose, though, is his trick to disable read-ahead without restart or recompile of MySQL. See, there’s no internal “disable read ahead knob”. But there … Continue reading
Opening tables!
There’s one bottleneck in MySQL/InnoDB that ultimately sucks. It sucked in 4.0, sucked in 5.0, sucks in 5.1 with newest InnoDB plugin. Opening tables has been a bottleneck on machines that have thousands of tables all the time (as LOCK_open … Continue reading