Did this article resolve your question/issue?



Why should the -Bp parameter be used with a Progress Online Probkup?

« Go Back


TitleWhy should the -Bp parameter be used with a Progress Online Probkup?
URL NameP49128
Article Number000138958
EnvironmentProduct: OpenEdge
Version: 9.1E01, 10.0B02, 10.1x, 10.2x, 11.x
OS: All Supported Operating Systems
Other: Database, PROBKUP
Question/Problem Description
Why should the -Bp client parameter be used with a Progress Online PROBKUP?
Can Private Read-only Buffers be used with PROBKUP online?
How do Private Buffers -Bp improve performance when an online backup is running?
Steps to Reproduce
Clarifying Information
Error Message
Defect NumberEnhancement PSC00158063 / OE00111682
Enhancement Number
An Enhancement was made to the PROBKUP online routine in Progress 9.1E01 and OpenEdge 10.0B02, to improve overall performance while the backup is running.
  • Prior to this change, blocks already in the Buffer Pool at the time of an online PROBKUP are never moved to the Least Recently Used (LRU) end when the block version is updated and included in the backup volume.
  • With this change, if a buffer (to be backed up) already exists in the buffer pool at the LRU end, it is no longer moved from it's current position in the (LRU) chain to the MRU (Most Recently Used) end and the backup puts the read block at the bottom of the LRU chain
In addition an enhancement was also added to the PROBKUP online routine, which allows an online backup to make use of (-Bp) Private Read-Only Buffers. This enhancement is in addition to the performance improvement mentioned above. In effect, rather than always holding all the buffers needed at the LRU end of the chain of buffers in the buffer pool, by using -Bp the PROBKUP online routine will also use its own Private Buffer list when needed.
When PROBKUP does not use Private Buffers -Bp, user's connections needing a new buffer have to "jump" over those buffers held by the backup process. Once the online PROBKUP routine has completed, buffers will be evicted from the LRU chain or promoted to the MRU (Most Recently Used) chain as appropriate. It is therefore highly recommended to use (-Bp) Private Buffers with an online PROBKUP to avoid performance problems immediately after an online PROBKUP has completed.

The suggested value for -Bp is 10 private buffers for the online PROBKUP:
$   PROBKUP online <dbname> <backup_pathANDbackupvolume_name> -Bp 10

If Private Buffers are otherwise used by clients, consider increasing the database startup parameter -Bpmax (64 default). The private buffer pool (-Bp) is an isolated portion of public buffer pool (-B), it is also limited to no more than 25% of the primary buffer pool (-B) value.
Incrementing the -Bp would be a tuning exercise and results are likely to vary greatly due to the dynamic nature of production online databases. It is very unlikely that a value much higher than the suggested value be needed, provided that the current number of database buffers for -B and -B2 are appropriately scoped for the application environment.  


Last Modified Date10/5/2020 7:09 AM
Disclaimer The origins of the information on this site may be internal or external to Progress Software Corporation (“Progress”). Progress Software Corporation makes all reasonable efforts to verify this information. However, the information provided is for your information only. Progress Software Corporation makes no explicit or implied claims to the validity of this information.

Any sample code provided on this site is not supported under any Progress support program or service. The sample code is provided on an "AS IS" basis. Progress makes no warranties, express or implied, and disclaims all implied warranties including, without limitation, the implied warranties of merchantability or of fitness for a particular purpose. The entire risk arising out of the use or performance of the sample code is borne by the user. In no event shall Progress, its employees, or anyone else involved in the creation, production, or delivery of the code be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the sample code, even if Progress has been advised of the possibility of such damages.