Key Accomplishments Last Week:
-It caches
-It hits
-It invalidates per table
-It supports multiple MySQL instances
-It works!
Key Tasks that Stalled:
-Did not get a change to finish the invalidate code 100%, currently if
someone drops a db, the entire cache is invalidated, this is fixable
by the end of the week though.
Key Concerns:
-I was hoping to refactor this into a plugin but there is not enough
time left in the summer of code.
-Need to cleanup a few small memory leaks.
-There are still a few bugs (throwing mysqlslap at it with 100
concurrent users crashes it)
[mysqld: memcached_response.c:49: memcached_response: Assertion
`(((*__ctype_b_loc ())[(int) ((*buffer_ptr))] & (unsigned short int)
_ISgraph) || ((*__ctype_b_loc ())[(int) ((*buffer_ptr))] & (unsigned
short int) _ISspace))' failed.]
[mysqld: memcached_io.c:300: io_flush: Assertion `(return_length ==
ptr->write_buffer_offset)' failed.]
Tasks for Next Week:
-Clean up the code, document, comment, test.
-Fix memory leaks
-Attempt to track down the crashing bug
The code can be found on launchpad at: (still uploading should be
complete by 12:15 EST)
lp:~kenbreeman/mysql-server/memcache_query_cache
http://bazaar.launchpad.net/~kenbreeman/mysql-server/memcache_query_cache/
If anyone has any trouble using bzr and launchpad, please let me know
and I can provide a tarball and/or diff.
Thanks,
--Ken Breeman