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