Consultor Eletrônico



Kbase P76140: Why in Promon R&D 3/4 the values in 'Flushes' column can be larger than in 'CPT Q'?
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   4/9/2004
Status: Unverified

GOAL:

Why in Promon R&D 3/4 the values in 'Flushes' column can be larger than in 'CPT Q'?

CAUSE:

 
Ckpt                         ------ Database Writes ------
 No. Time      Len   Dirty   CPT Q    Scan   APW Q Flushes
   9 19:58:57  234   23854   20667       0       0    2683
   8 19:55:31  206   22227   17731       0       0    3085
   7 19:51:46  225   31210   20536       0       0    8502
   6 19:46:05  341   36003    4149    3754       0   12996
   5 19:43:06  179   37149   14443       0       0   19780
   4 19:38:10  296   25869    3741    1588       0    8798
   3 19:34:17  233   37691   18567       0       0   15602
   2 19:30:12  245   27570   12472       0       0   10613
   1 19:27:56  136   24743   11314       0       0   13429
   0 19:22:36  320       0       0    7747       0       0


FIX:

Because the CPT Q column is not the number of buffers in the checkpoint queue, but the number of buffers that were /written from/ the queue. The last four columns are all under the heading "database writes".

The "Dirty" column is the initial number of buffers that were placed on the queue at the beginning of the checkpoint.  And the "Flushes" column is the number of buffers that had to be written at the end of the checkpoint because they could not be written during the checkpoint. No database changes or transaction state changes can occur during the flushing.

NB: there is a fifth kind of write that can occur that is not shown here. That is when we want to read a new block into the buffer pool, but had to write one out first to make room for it.