MySQL@Facebook
We've noticed contention in binary log syncing to disk, so I got back to micro-benchmarking edge cases...
MySQL@Facebook

MySQL@Facebook Who knew InnoDB could spend so much time checking for deadlocks?

23 novembre, à 20:20
MySQL@Facebook
MySQL@Facebook
Venu, if any transaction holds the lock for 0.1s, 100 transactions a second will get to the contention point in in 0.2s or so. Thinks happen fast in online world :)

By the way, original edge case I worked on was 'UPDATE x=x+1 WHERE ..' - that will cause much worse effects than the testcase available on the bug report.

-- Domas
24 novembre, à 15:40
MySQL@Facebook
MySQL@Facebook
Sorry, I mean 2.0s. --dm
24 novembre, à 15:41
MySQL@Facebook

MySQL@Facebook MySQL 5.1.41 has been released with the InnoDB 1.0.5 plugin. This is a great release. Read about it at http://dev.mysql.com/doc/refman/5.1/en/news-5-1-41.html

dev.mysql.com
:: C MySQL Change History :: C.1 Changes in Release 5.1.x (Production) :: C.1.1 Changes in MySQL 5.1.41 (05 November 2009)
MySQL@Facebook
MySQL@Facebook
Welcome back Matthew. We have not heard from you in a while.
24 novembre, à 20:17
MySQL@Facebook
I pushed more patches to the Facebook patch for MySQL. Expect more patches as several people are on the team (Domas committed a change today). We will soon be publishing patches for MySQL 5.1. The patches include: Protect InnoDB LRU during full table scan...
MySQL@Facebook
The 10 largest tables in one production database use 17.8G with InnoDB, 11.1G with MyISAM and 8.6G with packed MyISAM. From tests done by Ryan show that InnoDB compression reduces our database to 59% of the original size...
MySQL@Facebook

MySQL@Facebook When will Paul talk about Flash Cache and Flash AWEsome?

14 novembre, à 14:25
MySQL@Facebook
I've completed an initial round of testing InnoDB with data compression and the results are extremely promising. The testing was performed by setting up two shadows of a production database...
MySQL@Facebook
MySQL@Facebook
Matthew, our database shadow system is implemented in the DB wrappers in the application layer. I don't think mysql-proxy currently supports duplicating a single query for multiple backend servers but it may not be too difficult to add support for.
11 novembre, à 08:56
MySQL@Facebook
At the end of this note I describe how InnoDB can be much faster (2.5X) for high-concurrency workloads. However, what we really did is improve the code to not get 2.5X slower. InnoDB uses innodb_thread_concurrency to limit the number of threads that run concurrently...
MySQL@Facebook
InnoDB uses background threads to handle readahead (prefetch) requests. Requests are generated when it detects sequential or random access to most blocks in an extent. This is described in the 5.0 MySQL manual with new behavior in the plugin...
MySQL@Facebook
MySQL@Facebook
@Inaam - we have one person devoted to 5.1 and the InnoDB plugin. Soon we will have good data to share about that. We also need more data from the current code as 24 hours on one server suggests the change might be good, but is not conclusive.
6 novembre, à 06:35
MySQL@Facebook
We have servers that run with innodb_log_file_size=256M and some of these servers do a lot of disk writes per second...
MySQL@Facebook
MySQL@Facebook
Yes, and it will also make crash recovery slower.
4 novembre, à 20:15
MySQL@Facebook
I am Domas Mituzas, and I have just joined Facebook MySQL team. I've been working at MySQL Support before, as well as did Wikipedia data and performance engineering on my free time - and I've blogged about that a bit...
MySQL@Facebook
MySQL@Facebook
Matt, keep positions open, and I may come back! (well, not really, hehehe, but hope will help to fill the void I've left in your soul with my departure). -- Domas
3 novembre, à 18:18
MySQL@Facebook
InnoDB uses a 16kb page by default. I want to know whether performance improves with an 8kb database page for my workload. Two servers were setup to run a mirror of the production database workload. One used 8kb InnoDB pages and the other used 16kb...
MySQL@Facebook
I was debugging a server that had too many concurrent queries. From SHOW INNODB STATUS output, there were many long running transactions with uncommitted work and there were many more transactions blocked on InnoDB locks...
MySQL@Facebook
Hello. I'm Ryan Mack, a new member of the Facebook MySQL team. My first order of business is evaluating MySQL 5.1 and the new InnoDB plugin. So far things look very promising, but I came across one issue worth sharing...
MySQL@Facebook
My hack of the day for Tuesday was to add the my.cnf option innodb_mmap_buffer_pool that specifies the name of a directory in which a file is created. The file provides the buffer pool memory allocation when opened with mmap...