On Feb 12, 2009, at 7:00 AM, Stewart Smith wrote:

On Thu, Feb 12, 2009 at 06:25:59AM -0800, MARK CALLAGHAN wrote:
Examples of the compromises (and mistakes?) we made:
* We count row activity (rows read, rows changed) per table and per
user. An easier way to do that is to modify handler.{h,cc} so that
activity for any handler is counted. We modified a few storage engines
instead. Lots of interesting things might be possible when you can
insert code between a storage engine and the code that calls it.

I think this would be great to be able to have logging hooks here....
(I now wait for Mark Atwood to have it done in 3 minutes with some magic
example statistics thing).

That's easy enough to do.

There are two ways to do it.

I could write a logging plugin that gathers statistics, since that already has a pair of hooks that fire before and after each event.

Or, if those hookpoints aren't quite right, I could create yet another plugin interface that does hook into the correct places. Or add those hookpoints to the logging plugin API...

Where *exactly* in handler should such a thing hook?


Then there is the issue of displaying the statistics as they are gathered. Rebuilding INFORMATION_SCHEMA is still pending, I think. But in the I_S is the Right Place to do it, for the most common case, and thus the example plugin, when I write it.


Gathering statistics doesn't have to be lock contentional at all. The design would be to use a scoreboard.


--
Mark Atwood <http://mark.atwood.name>




_______________________________________________
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