Table discovery looks a bit different from the previous time I blogged about it. Everything is now just hanging off the StorageEngine. If you want to not have dfe files on disk and just use your own data dictionary, you need to implement two things:
- A method to get table metadata
- A iterator over table names in a database in your engine
I’ve done this for the ARCHIVE storage engine (and that’s in Drizzle trunk now), and have been reading up on the Embedded InnoDB docs to see their API to the InnoDB data dictionary and am rather excited about getting it going at some point in the future (feel free to beat me to it and submit a patch though!)
[...] Things that easily fall out of this work that people have written about: – CREATE TABLE LIKE with ENGINE clause http://krow.livejournal.com/671235.html – table_raw_reader – looking at the raw representation of table metadata http://www.flamingspork.com/blog/2009/10/01/table_raw_reader-reading-the-table-proto-from-disk-and-examining-everything/ – Table discovery http://www.flamingspork.com/blog/2009/07/29/table-discovery-for-drizzle-take-2-now-merged/ [...]