Falcon exports internal performance diagnostic
information into tables in the global
INFORMATION_SCHEMA database. Currently,
Falcon provides information in the following
tables:
mysql> SHOW TABLES FROM INFORMATION_SCHEMA LIKE 'falcon%';
+----------------------------------------+
| Tables_in_INFORMATION_SCHEMA (FALCON%) |
+----------------------------------------+
| FALCON_RECORD_CACHE_SUMMARY |
| FALCON_SYSTEM_MEMORY_DETAIL |
| FALCON_TABLESPACE_IO |
| FALCON_SYSTEM_MEMORY_SUMMARY |
| FALCON_VERSION |
| FALCON_TRANSACTION_SUMMARY |
| FALCON_SERIAL_LOG_INFO |
| FALCON_SYNCOBJECTS |
| FALCON_TRANSACTIONS |
| FALCON_RECORD_CACHE_DETAIL |
+----------------------------------------+
The FALCON_TABLES and
FALCON_TABLESPACE_FILES tables have been
removed from MySQL 6.0.6 and MySQL 6.0.7 respectively. From MySQL
6.0.8 the INFORMATION_SCHEMA.TABLES,
INFORMATION_SCHEMA.TABLESPACES and
INFORMATION_SCHEMA.FILES tables
provide the level of information, and are usable by other engines.
Table 5.1. Falcon INFORMATION_SCHEMA
performance diagnostic tables
INFORMATION_SCHEMA Table |
Description |
|---|---|
FALCON_SYSTEM_MEMORY_DETAIL |
System memory detail; gives a detailed account of the object and memory
usage across the different object instances of classes
within Falcon. |
FALCON_SYSTEM_MEMORY_SUMMARY |
System memory summary; provides an overview of the memory usage in
Falcon, including the total memory
allocated, free space and fragmentation. |
FALCON_RECORD_CACHE_DETAIL |
Record cache detail; shows the number of active records held in the record cache and the space they are currently consuming. |
FALCON_RECORD_CACHE_SUMMARY |
Record cache summary shows the space allocated and available for record storage, including an indication of fragmentation of the record cache. |
FALCON_TRANSACTIONS |
Transactions; shows the currently active transactions and their status and dependencies, including the number of records affected and the age of the transaction. |
FALCON_TRANSACTION_SUMMARY |
Transaction summary for active transactions. |
FALCON_SYNCOBJECTS |
SyncObjects; shows detail on internal Falcon object
usage. Note that because there are a separate set of
synchronization objects for each active database, you may
get duplicate rows of information in the generated table. |
FALCON_SERIAL_LOG_INFO |
Serial log status information. Shows transactions and serial log object
usage per database. This table was known as
FALCON_SERIAL_LOG in MySQL 6.0.3 and
earlier. |
FALCON_TABLESPACE_IO |
I/O statistics showing page size, buffer size, and reads/writes on a per tablespace basis. |
FALCON_VERSION |
Shows the internal Falcon version number and release
date. |
The FALCON_RECORD_CACHE_DETAIL,
FALCON_RECORD_CACHE_SUMMARY,
FALCON_SYSTEM_MEMORY_DETAIL, and
FALCON_SYSTEM_MEMORY_SUMMARY tables return no
information except for debug builds of MySQL. For more information,
see The DBUG Package.
The FALCON_TABLES table formerly listed all
Falcon tables. This table was removed in MySQL
6.0.7.
To obtain the diagnostic information you can run a standard
SELECT statement. Depending on the
INFORMATION_SCHEMA table you have chosen, the
information may be provided on a database or table basis. If the
information is based on a table name and that table is stored within
a unique tablespace, then the tablespace name is quoted in the table
name. For example, you can get statistics on I/O for
Falcon databases from the
falcon_tablespace_io table:
mysql> SELECT * FROM INFORMATION_SCHEMA.FALCON_TABLESPACE_IO;
+------------------+-----------+---------+----------------+--------+---------------+-------+
| TABLESPACE | PAGE_SIZE | BUFFERS | PHYSICAL_READS | WRITES | LOGICAL_READS | FAKES |
+------------------+-----------+---------+----------------+--------+---------------+-------+
| FALCON_MASTER | 4096 | 1024 | 59 | 0 | 1186 | 3 |
| FALCON_TEMPORARY | 4096 | 1024 | 1 | 0 | 0 | 1 |
| FALCON_USER | 4096 | 1024 | 2 | 0 | 4 | 3 |
+------------------+-----------+---------+----------------+--------+---------------+-------+
You can also JOIN information between tables to
obtain more specific statistics information. For example, the
statement below will show the list of statements on
Falcon tables that are currently blocking during
transactions:
mysql>SELECT a.id AS thread, a.user, b.id AS txn_id, b.database,->a.time, b.waiting_for, statement->FROM INFORMATION_SCHEMA.PROCESSLIST a,->INFORMATION_SCHEMA.FALCON_TRANSACTIONS b->WHERE a.id = b.thread_id;+--------+------+--------+----------+------+-------------+--------------------------------+ | thread | user | txn_id | database | time | waiting_for | statement | +--------+------+--------+----------+------+-------------+--------------------------------+ | 2 | root | 8 | GIMF | 0 | 0 | | | 3 | root | 9 | GIMF | 76 | 8 | update rms set c1=5 where c1=1 | +--------+------+--------+----------+------+-------------+--------------------------------+
