1. What are the possible states of a statement? What do they mean? How about attachments and transactions?
2. What is Table Scan Percent?
3. What does the number "Awaiting Sweep" mean?
4. What does the number "Awaiting CG" mean?
5. What is TIP Size?
6. Why some processes appear as "(no name)"?

Send us your question: This e-mail address is being protected from spambots. You need JavaScript enabled to view it

1. What are the possible states of a statement? What do they mean? How about attachments and transactions?
Statement states are:
  • Prepared - The statement is prepared in the server, but the navigational cursor is not open yet.
  • Open - The cursor is open in the server, but the statement is not being executed at the moment.
  • Executing - The statement is being executed in the server.
  • Cancelled - The user cancelled the statement, but the statement has not yet been released by the server. The statement will disappear from the list when the server releases it.
  • Closed - The statement was executed and all records were returned to the client. The cursor is closed, but the server has not released the statement yet. The "Closed" state is artificial. It is calculated by Sinática Monitor and not by the server. When monitoring quick statements, Sinática Monitor may display the state Prepared when in fact the correct would be "Closed".
Transaction states are:
  • Active - The transaction has one or more statements currently Prepared, Open or Executing.
  • Idle - No statement is being executed by this transaction.

Attachment states are:
  • Active - The attachment has one or more Active Transactions.
  • Idle - There is no Active Transaction in this attachment.
2. What is Table Scan Percent?
A “table scan” happens when a table is accessed sequentially, without the use of indexes. This type of access may indicate inefficiency in statement execution.

Table Scan Percent displays, out of all data read by a statement, how much was read using sequential access as opposed to indexed access.

Suppose the following attachment:
Attachment #1, Reads 230MB, Table Scan 75%

In this case, out of the 230MB read by this attachment, 172.5MB (75%) were read using table scans. It is necessary to identify which of the statements issued by this attachment was responsible for this high degree of Table Scans and try to optimize it.

3. What does the number "Awaiting Sweep" mean?
It represents the total number of old transactions that can be cleaned by sweeping the database.
Such transactions may contain old versions of records that were deleted or rolled back. Sweeping reclaims this wasted space and allows it to be reused.
Furthermore, sweeping is essential to keep the TIP size to a minimum.
If the amount of transactions awaiting sweep is too high, database performance may suffer. Configure Sinática Monitor's Sweep Alarm to be alerted about possible problems with your sweep process.

4. What does the number "Awaiting CG" mean?
It is the total number of transactions that cannot be visited by the Garbage Collector.
If some transaction is open for too long, the Garbage Collector cannot advance. The number of transactions awaiting GC, thus, grows.
Also, if this number grows too big, database performance will be severely affected. You may want to review you transaction management code to guarantee no transaction will be left open for too long. Sinática Monitor may help you with that. Configure Sinática Monitor's Stuck Transactions Alarm to be alerted about problems with transaction management in your database.

5. What is TIP Size?
The TIP, Transaction Inventory Pages, is a special kind of database page. It stores the transaction state of every transaction that is still interesting to the database. If the number of interesting transactions grows too high, the TIP will grow too.
The TIP is accessed very frequently by the server. If it grows too big, performance will be affected. This is especially true for ClassicServer.

6. Why some processes appear as "(no name)"?
The database client is responsible for sending the process name to the server when the attachment is started. If a process is appearing as “(no name)” it is probably using an old client library.
  • If your client access the database through the Firebird Client Library (fbclient.dll or gds32.dll), please make sure you're using version 2.1 or above. Libraries older than 2.1 do not send the process name to the server, thus your process appears as "(no name)" in Sinática Monitor.
  • The same is valid if you are using .Net Provider to access the database. Upgrade to version 2.5 Beta 1 or newer.
  • The same applies to Jaybird. Upgrade to version 2.1.6 or newer.
© Sinática . 2008, 2009 . All Rights Reserved.
Legal Information