Salesforce

What happens to the variable-length extent when a new extent is added

« Go Back

Information

 
TitleWhat happens to the variable-length extent when a new extent is added
URL NameP4211
Article Number000148619
EnvironmentProduct: Progress
Version: 8.x, 9.x
Product: OpenEdge
Version: 10.x, 11.x
OS: All supported platforms
Question/Problem Description
What happens to the variable-length extent of a database when PROSTRCT ADD is performed?
What happens to the current variable length extent of a Storage Area when new extents are added?
Steps to Reproduce
Clarifying Information
Error Message
Defect Number
Enhancement Number
Cause
Resolution
The rules applying to adding extent(s) to a database structure depends on which Type of extents are being added.
  • There can be only one variable extent defined per Area, with the exception of After-Image extents (.ai) where by definition, more than one ai extent may be a variable extent.
  • ​If the database has not grown into the variable-length BI extent, the PROSTRCT ADD operation will fail with error 8825. The given extent will first need to be removed with "PROSTRCT remove" before adding a BI new extent. 

              You must remove the variable length BI extent before adding additional BI extent(s). (8225)

    The exception is immediately after the database is in a crashed state as a result of hitting the 2GB limit on extent sizes, when largefiles have not been enabled for the database, a new bi files can be added and the existing bi file will become a 2GB fixed extent: 

              SYSTEM ERROR: Attempted to exceed maximum size on file <path>\dbname.b1. (10601)  
              ** Insufficient disk space to extend the before-image file. (854)
  • Running PROSTRCT ADD against a database that has grown into its variable-length extent, whether adding new fixed and/or a new variable extent, will cause the existing variable-length extent to be marked as a "fixed extent" before the new extent is added. The file's current size will be rounded up to a multiple of:  ( 16 * db_blocksize )
  • On systems where largefiles have not been enabled, with the "multiple of 16 x database blocksize" alogrithm restricts the absolute size of 2GB extents as per the table below:

Database blocksize     "2 GB" defined in .st file (KB)
                                 
     1                                  2,097,136
     2                                  2,097,120
     4                                  2,097,088
     8                                  2,097,024

     bi file                           2,097,120

Workaround
Notes
Keyword Phrase
Last Modified Date11/20/2020 7:34 AM

Powered by