WL#4896: PERFORMANCE_SCHEMA Instrumenting Net IO

Affects: Server-9.x — Status: Un-Assigned — Priority: Very High

Add the necessary instrumentation and PERFORMANCE_SCHEMA
tables for tracking net input/output, clients getting
messages back and forth with servers.

Despite the word "net" (network), this might include
communication which is not going over a network.
If it's localhost, named pipe, shared memory, etc., okay.
If a better term is "communication" or "client/server
send/receive", okay.

There will be entries in EVENTS_WAITS_CURRENT etc.

EVENT_NAME column: This is an atomic operation, the class is wait,
so we might see event names like "wait/io/net/...".
Compare "wait/io/file/..." and "wait/io/table/...".

OBJECT_NAME: identify the client or the connection.

OBJECT_INSTANCE_BEGIN: identify the socket or the handle.

OPERATION column: will include "send", "receive",
"connect", "disconnect". Doubtless there will be
some argument whether we should use TCP names
(e.g. "recv", "listen") and named-pipe names
(e.g. "DisconnectNamedPipe").

NUMBER_OF_BYTES column: will be the packet size.

There is no provision for indicating whether a sending is a
retry or continuation, whether there is a failure, or what
kind of connection is established.

You must be logged in to tag this worklog

No Comments yet

Votes

Not yet rated.
You must be logged in to vote.

Watches

0 members are watching this worklog
You must be logged in to track this worklog.

Provide Feedback

Please note:
HTML will be purified, but we allow for a number of HTML tags so that you have the flexibility to decorate your comment text to some extent. The comments allow the following HTML tags:

strong, b, em, blockquote, a, code, pre

To put code into your comment, simply encapsulate your code with
[code language="XXX"][/code], where XXX is any common language, for instance "PHP", "SQL", "C", etc.



You must be logged in to comment