Info
bio
I reside in San Francisco, where I grew up. I like unixen and writing code in Python.
web site
How to contact me
Email me at david415.nynV2Q9z@fo...
Projects
hush is a project to implement a system of covert radio transmission using gnuradio
Wrote some basic proof of concept code...
For Spinn3r I wrote programs in Python to automate Mysql database operations; published under the Apache public license...
This feature makes it possible to freeze InnoDB file system activity except for reads. If you want to take a database backup without stopping the server and you don’t use LVM, ZFS or other storage layer that provides snapshots, you can use this to halt all destructive file system activity from InnoDB and then backup the InnoDB data files. Since InnoDB uses background I/O threads, merely running FLUSH TABLES WITH READ LOCK would not be sufficient.
Isolating this patch was easy since its a very small code change. I simply patched Mysql with the Google V2 patch.
Then I started up Cscope and searched for the string: “innodb_disallow_writes”
From there I was able to trace the various C/C++ symbols; finding all the code for this feature…
I then edited an unpatched Mysql; manually pasting in the Innodb Freeze code changes.
Finally I diffed this manually edited Mysql against the unpatched Mysql producing
this Innodb Freeze patch for Mysql 5.0.37; it’s 323 lines small and only modifies 7 files of the Mysql source.
I have re-targeted the patch for Mysql 5.0.67 which will also patch Percona’s High Performance Mysql 5.0.68: Innodb Freeze patch for Mysql 5.0.67
I’ve briefly tested the patch and verified via md5sum that after setting global innodb_disallow_writes to OFF; data on disk does not change and all writes via the Innodb storage engine are blocked. However if you have set innodb_flush_log_at_trx_commit=0 in the my.cnf then updating an existing row will succeed. However the change will only exist in memory and will not be written to disk until you unfreeze (set global innodb_disallow_writes=OFF).
This patch is now maintained by OurDelta Mysql fork!
This patch introduces an additional option to the KILL command, allowing the killing of a connection to be followed through only if the specified connection is idle.
I isolated Google’s IF_IDLE feature from SqlChanges; part of the Google V2 patch.