That feature it's differently implemented in MariaDB and Percona server.
The MariaDB code originally came from Percona but was enhanced, optimized and fixed before added to MariaDB.
This means that this task is not to take the Percona code, but to compare the implementations and decide what of the new code Percona has added that makes sense for MariaDB.
Michael Widenius
added a comment - - edited That feature it's differently implemented in MariaDB and Percona server.
The MariaDB code originally came from Percona but was enhanced, optimized and fixed before added to MariaDB.
This means that this task is not to take the Percona code, but to compare the implementations and decide what of the new code Percona has added that makes sense for MariaDB.
merged TOTAL_SSL_CONNECTIONS columns in CLIENT_STATISTICS and USER_STATISTICS.
THREAD_STATISTICS table is not merged, because the implementation is somewhat
dubious:
it was supposed to show statistics per connection
so it should be one row per connection
but it doesn't show who made the connection (user name) or when (timestamp)
instead it aggregates per thread id
and has columns like
THREAD_ID
Thread ID
TOTAL_CONNECTIONS
The number of connections created from this thread
CONCURRENT_CONNECTIONS
The number of concurrent connections from this thread.
CONNECTED_TIME
The cumulative number of seconds elapsed while there were connections from this thread.
but in fact, thread id is never reused in MariaDB, so de facto there is no aggregation, total_connections is always 1, concurrent_connections is always 0, the word "cumulative" is somewhat misleading.
So — it suggests aggregation, contains columns that are meaningful for aggregation, but it doesn't aggregate. Was supposed to provide data per connection, but doesn't have essential columns per connection.
the last, unlike other userstat tables, this one is hardly ever used.
Sergei Golubchik
added a comment - - edited merged TOTAL_SSL_CONNECTIONS columns in CLIENT_STATISTICS and USER_STATISTICS.
THREAD_STATISTICS table is not merged, because the implementation is somewhat
dubious:
it was supposed to show statistics per connection
so it should be one row per connection
but it doesn't show who made the connection (user name) or when (timestamp)
instead it aggregates per thread id
and has columns like
THREAD_ID
Thread ID
TOTAL_CONNECTIONS
The number of connections created from this thread
CONCURRENT_CONNECTIONS
The number of concurrent connections from this thread.
CONNECTED_TIME
The cumulative number of seconds elapsed while there were connections from this thread.
but in fact, thread id is never reused in MariaDB, so de facto there is no aggregation, total_connections is always 1, concurrent_connections is always 0, the word "cumulative" is somewhat misleading.
So — it suggests aggregation, contains columns that are meaningful for aggregation, but it doesn't aggregate. Was supposed to provide data per connection, but doesn't have essential columns per connection.
the last, unlike other userstat tables, this one is hardly ever used.
That feature it's differently implemented in MariaDB and Percona server.
The MariaDB code originally came from Percona but was enhanced, optimized and fixed before added to MariaDB.
This means that this task is not to take the Percona code, but to compare the implementations and decide what of the new code Percona has added that makes sense for MariaDB.