Padraig O'Sullivan wrote:
Hi Jay,

I've started documenting the current I_S implementation and have a
rough outline of a project plan on the wiki page I created for my GSoC
project. If you could have a quick look at it sometime and let me know
if you see anything wrong with it or something that you would like
changed, that would be awesome:

http://drizzle.org/wiki/GSOC_Information_Schema

Now that I've spent some time looking at the current I_S
implementation, I'm starting to think a little more about how to move
forward and I'm looking for any input on that. In particular, if you
look at section 4.3 of the wiki page, you will see I have a little
text on some thoughts I have on an I_S design (very rough at the
moment). If you have any time to have a look at that and share your
opinion, that would be really helpful!

Hi!  Sorry for the delay in getting back to you on this!

OK, here is my thought on the INFORMATION_SCHEMA "plugin". I actually don't think the INFORMATION_SCHEMA should be a plugin at all, but rather expose a plugin interface for its storage mechanism.

What the heck do I mean by this?

Well, what I mean is that the INFORMATION_SCHEMA isn't something that changes -- the INFORMATION_SCHEMA interface is simply a standard method of retrieving system data via a SQL SELECT interface.

There is, therefore, no need to have multiple implementations of the INFORMATION_SCHEMA interface. There is, however, a need to swap out the storage backend of the INFORMATION_SCHEMA -- think: I_S stored in InnoDB, I_S stored in memcached, etc.

For much of this, we already have a decent plugin API: the storage engine Handler interface. What I think is a good next step is to provide a base I_S_Storage plugin which would allow developers to switch out the backend storage seamlessly, even using multiple backends simultaneously -- think: memcached backend for global variable counters, InnoDB backend for recovery/backup persistence, MEMORY storage engine backend for most all other I_S tables...

Don't worry too much about the stuff in show.cc right now. Most of that should go away entirely once I_S behaves like a normal schema and follows the handler API properly...

Thoughts?

Jay


_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to