Salesforce

What does Buffer Flush mean?

« Go Back

Information

 
TitleWhat does Buffer Flush mean?
URL NameP85906
Article Number000177718
EnvironmentProduct: Progress OpenEdge
Version: All supported versions
OS: All supported platforms
Question/Problem Description
Buffer Flushed Explained
How does Buffer Flush work?
What is the PROMON : "Buffs Flushed"

Buffers Flushed metrics are found in several PROMON views:
  • promon -> 5. Activity    "Buffs Flushed"
  • promon -> R&D -> 2. Activity Displays -> 1. Summary       "Flushed at chkpt"
  • promon -> R&D -> 2. Activity Displays -> 4. Page Writers  "Flushed at checkpoint"
  • promon -> R&D -> 3. Other Displays   -> 4. Checkpoints.  (per individual checkpoint)
Steps to Reproduce
Clarifying Information
Error Message
Defect Number
Enhancement Number
Cause
Resolution
Writes from the APW "immediate" Queue take place when there are large quantities of modified buffers that have made their way to the "old" end of the LRU chain.

When a process wants to read in a new block into memory, it looks at the "old" end of the LRU chain to find a buffer whose contents can be replaced with the new block. The idea is that a buffer that has not been used for a while is least likely to be needed again in the near future. If the oldest buffer has been modified, it needs to be written to disk before being replaced. It is placed on the APW Queue to be written by the page writers as soon as possible. This is done so that the process that wants to read a block, does not have to be delayed by writing the modified buffer.

It may turn out that the next oldest buffer is also modified and is moved to the APW Queue, and also the next, and so on. This is repeated for a maximum of 10 times, after which the process that wants to read the new block will move the buffer to the front of the LRU chain and do the write itself. Then it will use the buffer to store the required block.

These modified buffers may or may not be on the Checkpoint queue. Often under an especially heavy update workload, it turns out that they are not. Thus the page writers need to write buffers from the APW Queue that are not scheduled for checkpoint. This means the number of APW Q writes can be larger than the number of buffers that were dirty at the beginning of the checkpoint (the value in the "Dirty" column).

Furthermore, since those buffers are written before they would be placed in the Checkpoint queue for later writing, they are no longer dirty and do not show up in the number of dirty buffers at the beginning of the next checkpoint.

A general rule of thumb, if the number of buffers flushed is higher than 10, increase the cluster size, or increase the number of page writers, or increase disk write capacity.  For further advice refer to Article:
Workaround
Notes
Keyword Phrase
Last Modified Date11/20/2020 7:36 AM

Powered by