Extent Header Block (EXTHDR, bk_type 254)

  Offset  Size Field Name           Example            Format           Description
---------- --- -------------------- ------------------ ---------------- ---------------------------------------------------------------
016 0x0010   2 dbVersion            0x10ad 173 4096    0x%04hx %d %d    Database version number (high bite is blocksize)
018 0x0012   2 extentType           0x0040 64          0x%04hx %d       See below.
022 0x0016   2 dateVerification     0                  %d
024 0x0018 2*4 creationDate         [0-1]=0x%08x (%s)  %b %d %H:%M:%S %Y Date/Time of database creation. Array of 2.
032 0x0020 2*4 lastOpenDate         [0-1]=0x%08x (%s)  %b %d %H:%M:%S %Y Date/Time of most recent database open. Array of 2.


Control Block (CTLBLK, bk_type: 13)

  Offset  Size Field Name           Example            Format           Description
---------- --- -------------------- ------------------ ---------------- ---------------------------------------------------------------
016 0x0010   8 areaRoot             96                 %d               Dbkey of root block of index # 1027 (_Area._Area-Number)
024 0x0018   8 areaExtentRoot       160                %d               Dbkey of root block of index # 1028 (_AreaExtent._AreaExtent-Area)
032 0x0020 256 d1PathName           ".\test.d1"        "%s"             Path to a database extent containing master block


  Offset  Size Field Name           Example            Format           Description
---------- --- -------------------- ------------------ ---------------- ---------------------------------------------------------------
000 0x0000   4 bk_dbkey             0x00000020         0x%08I64x
004 0x0004   1 bk_type              0x01               0x%02hx
005 0x0005   1 bk_frchn             0x7f               0x%02hx          FREECHN RMCHN LOCKCHN CLIST_FREECHN NOCHN
006 0x0006   2 bk_incr              0x0003             0x%04hx
008 0x0008   4 bk_nextf             0x00000000         0x%08x
012 0x000C   4 bk_updctr            0x00000009         0x%08x


Master Block (MSTRBLK, bk_type: 1)


  Offset  Size Field Name           Example            Format           Description
---------- --- -------------------- ------------------ ---------------- ---------------------------------------------------------------
016 0x0010   2 mb_dbvers            0x10ad             0x%04hx %hd %hd  Database version number (and blocksize)
018 0x0012   2 mb_dbRestrictVer     0x0000             0x%04hx    %d    1 = Restricted Access Mode was set by proutil -C dbrestrict. V11.2/11.3
020 0x0014   4 mb_dbMinorVers       0x00000000         0x%08x     %d    Database minor version. V9.0B/9.1A. See msg 8406 below.
024 0x0018   4 mb_clientMinorVers   0x00000000         0x%08x     %d    Client minor version. V9. Always zero. See msg 8405 below.
028 0x001C   2 mb_dbstate           0x0002             0x%04hx    %d    Current state of database (bit-mask list)
030 0x001E   2 mb_cfilnum           0x0000             0x%04hx    %d    Highest table number defined in database (it's not set)
032 0x0020   2 mb_tainted           0x0001             0x%04hx    %d    Tainted flag (bit-mask list). See below.
034 0x0022   2 mb_flags             0x6600             0x%04hx    %d    Integrity flags (bit-mask list). See below.
036 0x0024   1 Reserved             0x0000             0x%04hx    %d
037 0x0025   1 mb_SaveKeyEvents     0x0000             0x%04hx    %d    10.1B. proutil -C enablekeyevents ?
038 0x0026   1 mb_largeFilesEnabled 0x00               0x%02hx    %d    9.1C.  proutil -C enableLargeFiles
039 0x0027   1 mb_XAsupportEnabled  0x00               0x%02hx    %d    Distributed Transactions: proutil -C enablejta ?
040 0x0028   4 mb_areaHWM           0x0000000a         0x%08x     %d    Highest area number
044 0x002C   4 mb_lasttask          0x00000007         0x%08x     %d    Last transaction number. When it gets to 2147483647 it rolls over and continues from 1 (since V6.2G01). See also mb_txnSequence and transactionId (size 4 bytes, offset 64 in the extended headers of 1st blocks in data clusters)
048 0x0030   4 mb_replai.aibegin    0x00000000         0x%08x    (%s)   10.1A
052 0x0034   4 mb_replai.ainew      0x00000000         0x%08x    (%s)   10.1A
056 0x0038   4 mb_replai.aigennbr   0x00000000         0x%08x     %d    10.1A
060 0x003C   4 mb_replai.aiopen     0x00000000         0x%08x    (%s)   10.1A
064 0x0040   4 mb_repllstmod        0x0000000000000000 0x%016x    %d    10.1A. Wrong format (8 bytes but should be 4 bytes)
068 0x0044   4 mb_replupdctr        0x0000000000000000 0x%016x    %u    10.1A. Wrong format (8 bytes but should be 4 bytes)
072 0x0048   8 mb_tlwrtloc64        0x0000000000000000 0x%016I64x %I64u 10.1B. Bytes written to the current TL (Transaction Log) file. See mb_tlwrtloc
080 0x0050   4 mb_aiSequence        0x00000001         0x%08x     %d    10.1C. Expected ai file number (rfutil -C roll forward). The same as mb_aiseq but 4 bytes
084 0x0054   4 Missed (not used, not marked as Reserved)
088 0x0058   4 mb_ai.aibegin        0x5c290483         0x%08x    (%s)   Date/time rfutil aimage begin was executed
092 0x005C   4 mb_ai.ainew          0x5c29048e         0x%08x    (%s)   Date/Time of last rfutil aimage new (or begin); It's used to check if AI is enabled
096 0x0060   4 mb_ai.aigennbr       0x00000002         0x%08x     %d    After Image extent sequence number
100 0x0064   4 mb_ai.aiopen         0x5c29048e         0x%08x    (%s)   After-image open date
104 0x0068   4 mb_lstmod            0x5c29042a         0x%08x    (%s)   Date/Time of last database update
108 0x006C   4 mb_aiwrtloc          0x00000000         0x%08x     %d    Bytes written to the current AI file. Not used. See mb_aiwrtloc64
112 0x0070   4 mb_aictr             0x00000001         0x%08x     %u    Number of AI notes written to the current AI file
116 0x0074   1 mb_aiflgs            0x00               0x%02hx    %d    V8. Since 10.1A: AIAUDIT
117 0x0075   1 mb_wrd               0x00               0x%02hx    %d    Word-break rule number: proutil -C word-rules rule-number
118 0x0076   2 mb_wdcrc             0x0000             0x%04hx    %d    Word-break file CRC
120 0x0078   4 mb_biopen            0x5583fe3b         0x%08x    (%s)   Last open date of BI file
124 0x007C   4 mb_biprev            0x00000000         0x%08x     %d    Date/Time of previous BI open (always zero)
128 0x0080   4 mb_rltime            0x00000001         0x%08x    (%s)   The number of seconds that the database has been in use since the last bi truncate. It's sort of a "bi clock" that only runs while the database is up. Updated at checkpoint.
132 0x0084   2 mb_rlclsize          0x0020             0x%04hx    %d    BI cluster size in 16K units. See also msg 15331.
134 0x0086   2 mb_bhvolno           0x0000             0x%04hx    %d    10.0A
136 0x0088   1 mb_aisync            0x00               0x%02hx    %d    After-image I/O: 1 - Buffered, 0 - Reliable; rfutil V8db -C aimage begin [buffered|unbuffered] -a aifile
137 0x0089   1 mb_chgd              0x01               0x%02hx    %d    Database changed since last probkup
138 0x008A   1 mb_bistate           0x13               0x%02hx    %d    BI is truncated or not. See below.
139 0x008B   1 mb_langok            0x00               0x%02hx    %d    
140 0x008C   1 br_language          0x00               0x%02hx    %d    Language Table Namber? 7.3C/proutil dbname -C language danish => ** OBSOLETE: use the dictionary to dump and load database collation tables. (4532)
141 0x008D   1 br_usrfl             0x00               0x%02hx    %d    10.0A
142 0x008E   2 mb_aiseq             0x0001             0x%04hx    %d    Expected ai file number (rfutil -C roll forward). The same as mb_aiSequence but 2 bytes only
144 0x0090   2 mb_buovl             0x0000             0x%04hx    %d    10.0A
146 0x0092   2 mb_buseq             0x0001             0x%04hx    %d    Backup sequence number
148 0x0094   4 mb_crdate            0x5583fce2         0x%08x    (%s)   Date/Time of database creation
152 0x0098   4 mb_oprdate           0x5584fbc0         0x%08x    (%s)   Date/Time of most recent database open
156 0x009C   4 mb_oppdate           0x5584fbc0         0x%08x    (%s)   Date/Time of previous database open
160 0x00A0   4 mb_fbdate            0x00000000         0x%08x    (%s)   Date/Time of most recent full backup
164 0x00A4   4 mb_ibdate            0x00000000         0x%08x    (%s)   Date/Time of most recent increment backup since last full backup
168 0x00A8   4 mb_ibseq             0x00000000         0x%08x     %d    Incremental backup sequence number since last full backup
172 0x00AC   2 mb_dbcnt             0x0001             0x%04hx    %d    Number of .d# extents? Database damaged, invalid extent file count = <extents>. (2593)
174 0x00AE   2 mb_bicnt             0x0001             0x%04hx    %d    Number of .b# extents?
176 0x00B0   8 mb_stamp             0x65 0x6a 0x70 0x4b 0x4b 0x64 0x6a 0x61 = "ejpKKdja" 0x%02hx  Demo version stamp
184 0x00B8   2 mb_democt            0x0000             0x%04hx    %d    Demo version run counter
186 0x00BA   2 mb_flag              0x0000             0x%04hx    %d    Demo version flag
188 0x00BC  12 mb_nicknm            "nickname"         "%s"             proutil -C 2phase begin -tp nickname; Nickname max length is 8. (2014)
200 0x00C8   1 mb_lightai           0x00               0x%02hx    %d    On if 2phase commit is enabled
201 0x00C9   1 mb_crd               0x00               0x%02hx    %d    Two Phase Commit Priority is granted | proutil -C 2phase begin -crd
202 0x00CA   1 mb_replEnabled       0x00               0x%02hx    %d    V9: Database is enabled for site replication. 10.1B: proutil -C enableSiteReplication
203 0x00CB   1 mb_pdrEnabled        0x00               0x%02hx    %d    V9. Database is enabled for Peer Direct replication: proutil -C enablepdr
204 0x00CC   4 mb_replRET           0x00000000         0x%08x     %d    10.0A
208 0x00D0   4 Reserved             0x00000000         0x%08x     %d
212 0x00D4   4 mb_tlwrtloc          0x00000000         0x%08x     %d    Bytes written to the current TL (Transaction Log) file. Not used. See mb_tlwrtloc64
216 0x00D8   4 mb_tlwrtoffset       0x00000010         0x%016I64x %I64u V9

220 0x00DC   4 Skipped (not used) but not on Linux:

WARNING! On Linux subtract 4 bytes to get the offsets of the fields below. As result the 8-byte fields are not properly aligned on Linux.

224 0x00E0   8 mb_aiwrtloc64        0x00000000000000d0 0x%016I64x %I64u Bytes written to the current AI file.
232 0x00E8   2 mb_biblksize         0x2000             0x%04hx    %d    BI blockSize
234 0x00EA   2 mb_aiblksize         0x2000             0x%04hx    %d    AI blocksize
236 0x00EC   4 mb_maxArgnclts       0x00000000         0x%08x     %d    10.0A
240 0x00F0   8 mb_txnSequence       0x0000000000000004 0x%016I64x %I64u 10.0A Count only active transactions. V10. It's smaller than mb_lasttask unless the last rolled over
248 0x00F8   8 mb_lastLogOpSeq      0x0000000000000000 0x%016I64x %I64u 10.0A Count the "parentheses" (RL_LOGOP_START and RL_LOGOP_END notes) in BI file. See below.
256 0x0100   8 mb_fmaDBContent      0x8000000000000e01 0x%016I64x %I64u 10.1A. Active  feature list (_Database-Feature VST). Updated by proutil -C dbrestrict. See below.
264 0x0108   8 mb_fmaDBEnabled      0x8000000000000e01 0x%016I64x %I64u 10.1A. Enabled feature list (_Database-Feature VST). Updated by proutil -C dbrestrict. See below.
272 0x0110   1 noname1              0x01                                Unknown.
273 0x0111   3 Skipped?
276 0x0114   4 noname2              0x0000026C   620                    10.2B. Offset in block of Before Image Log Initialisation. Zero for online db. See msg ##15321 and 15743
280 0x0118   8 noname3              0x00000013   19                     10.2B. Block of Before Image Log Initialisation. Zero for online db. See msg ##15321 and 15743
288 0x0120  48 Missed (not used, not marked as Reserved)
336 0x0150 7*4 Reserved             [0]=0x400f0e0d ... [6]=0x38373635 [%d]=0x%08x %d
364 0x0168 256 mb_spathnm           "" (256)           "%s" (%d)        Pathname (V10+)
620 0x026C   2 mb_aicnt             0x0000             0x%04hx %d       Number of .b# extents.
622 0x026E   2 mb_aibusy_extent     0x0000             0x%04hx    %d    Area number of the current AI extent (status=BUSY) 
624 0x0270   4 mb_seqblk            0x00000060         0x%08x     %d    Dbkey of Sequence Block
628 0x0274   4 mb_dbrecid           0x00000fc0         0x%08x     %d    Recid of _Db record
632 0x0278   4 mb_shutdown          0x00000000         0x%08x     %d    V9
636 0x027C   4 mb_timestamp         0x5583fd36         0x%08x    (%s)   Schema timestamp
640 0x0280   4 mb_shmid             0xffffffff         0x%08x     %d    ID of first shared-memory segment (V8.0B and higher)
644 0x0284   4 mb_semid             0xffffffff         0x%08x     %d    ID of login semaphore set (V8.0B and higher)
648 0x0288   4 mb_objectRoot        0x00002dc0         0x%08x     %d    Root block of _StorageObject._Object-Id index (ixnum 1026)
652 0x028C   4 mb_replFlags         0x00000000         0x%08x     %d    10.1A
656 0x0290   4 mb_dsrCRAISeq        0x00000000         0x%08x     %d    10.1A (10.1 also had mb_dsrCRArea but not the latest versions)

660 0x0294   4 Missed (not used, not marked as Reserved) but not on Linux:

WARNING! On Linux subtract 8 bytes to get the offsets of the fields below:

664 0x0298   8 mb_dsrCRLoc          0x0000000000000000 0x%016I64x %I64u 10.1A
672 0x02A0   4 mb_dsrCROffset       0x00000000         0x%08x     %d    10.1A
676 0x02A4   4 mb_dsrRCBlock        0x00000000         0x%08x     %d    10.1A
680 0x02A8   8 mb_objSerialNum      0x0000000000000001 0x%016I64x %I64u 10.1A. Highest serialNumber assigned to objects in SAT2 (_StorageObject._Object-block -> dbrpr -> OBJBLK: serialNumber)
688 0x02B0   2 mb_fmaEnabledCRC     0x0005             0x%04hx    %d    10.1A. CRC of mb_fmaDBEnabled field
690 0x02B2   2 mb_fmaContentCRC     0x0005             0x%04hx    %d    10.1A. CRC of mb_fmaDBContent field
692 0x02B4   2 mb_maxcluster        0x0008             0x%04hx    %d    10.1A. The largest cluster size, in blocks, for all of the database data areas
694 0x02B6   2 mb_clustEnabled      0x0000             0x%04hx    %d    10.1A. Failover Clusters? procluster enable

Notes:

mb_dbRestrictVer:

Database Restrict Access has been enabled for  (17037)
Access to the database during the RollForward process is not allowed because it may modify the database. (17075)
Please wait until the %s Restricted Access Mode has been disabled. You may use the proutil -C dbrestrict %s disable command to disable the protection. (17076)


mb_dbMinorVers:

Database minor version mismatch.  Expected %l. Found %l. (8406)
It has been detected that there is an inconsistancy in the database minor version number between what is specified in the executable and the value stored in the database.  You are probably using an executable which does not support all the features of this database. 

Refer to release notes for minor version %d before updating database. (9141)
Message displayed on screen and within .lg file when progress detects a mismatch between the database minor version and the client/broker code.  Message directs user to consult the release notes associated with minor version number of database before proceeding with any updates to the database. 


mb_clientMinorVers:

Client/database minor version mismatch.  Expected %l. Found %l. (8405)
It has been detected that there is an inconsistancy in the client minor version number between what is specified in the client executable and the value stored in the database.  You are probably using an executable which does not support all the features of this database. 
WARNING: updates to this database are not recommended. (8404)


mb_dbstate:

01 0000000000000001=0x0001=   1=DBOPEN    (Database is in use)
02 0000000000000010=0x0002=   2=DBCLOSED  (Database is closed)
03 0000000000000100=0x0004=   4=DBRECOV   (Database is in crash recovery)
04 0000000000001000=0x0008=   8=DBRESTORE (Database restore is underway)
05 0000000000010000=0x0010=  16=DBVOID    (Database is void)
06 0000000000100000=0x0020=  32=DBMSTR
07 0000000001000000=0x0040=  64=DBMDB
08 0000000010000000=0x0080= 128=DBMBI
09 0000000100000000=0x0100= 256=DBMAI
10 0000001000000000=0x0200= 512=DBMTL
11 0000010000000000=0x0400=1024=DBCONVCH  (proutil -C convchar convert is running)
12 0000100000000000=0x0800=2048=DBIXRPR   (Index rebuild is underway)

Compare "mb_dbstate" with "extentType" in Extent Header Block

extentType:

05 0000000000010000=0x0010=  16=DBVOID (database empty)
06 0000000000100000=0x0020=  32=DBMSTR (multi-file structure file = .db file)
07 0000000001000000=0x0040=  64=DBMDB  (multi-file data file = .d# file)
08 0000000010000000=0x0080= 128=DBMBI  (multi-file BI file = .b# file)
09 0000000100000000=0x0100= 256=DBMAI  (multi-file AI file = .a# file)
10 0000001000000000=0x0200= 512=DBMTL  (multi-file TL file = .t# file)


mb_tainted:

01 0000000000000001=0x0001=    1=ARGFORCE (the Force (-F) option was used to open a database)
02 0000000000000010=0x0002=    2=NOINTEG (Database crashed while no integrity (-i) was used)
03 0000000000000100=0x0004=    4=NONRAW (Database crashed while non-raw (-r) was used)
04 0000000000001000=0x0008=    8=DBRESTORE 
05 0000000000010000=0x0010=   16=DBBACKUP 
06 0000000000100000=0x0020=   32=DBIXBUILD 
07 0000000001000000=0x0040=   64=<noname>
08 0000000010000000=0x0080=  128=DBROLL_PARTIAL
09 0000000100000000=0x0100=  256=DBADD_ONLINE
10 0000001000000000=0x0200=  512=DBVSTS_UPDATED
11 0000010000000000=0x0400= 1024=DBSEQ64_ENABLED
12 0000100000000000=0x0800= 2048=ENABLEAI_ONLINE
13 0001000000000000=0x1000= 4096=DBROLL_STARTED
14 0010000000000000=0x2000= 8192=DBREDO_CLEAN
15 0100000000000000=0x4000=16384=DBSKIP_RECOVER
16 1000000000000000=0x8000=32768=DBKS_REBIND (Keystore Rebind)

Warning: Crash in non-raw (-r) mode tainted state cleared. (2360)
The database masterblock indicated that a crash occurred while the database was running without reliable logging which can cause the work associated with committed transactions to be lost.  The index rebuild operation clears this state and issues the warning.

Warning: Forced entry (-F) tainted database state cleared. (2361)
The database masterblock indicated crash recovery was skipped by forcing entry (-F) into the database.  This can cause the work associated with committed transactions to be lost, and the database to become corrupt.  The index rebuild operation clears this state and issues the warning.

Prorest -newinstance created a new GUID for the database. (15121)
The -newinstance option was specified for a restore. This causes the restore operation to create a new GUID for the target database. If the database is encrypted, the code also sets the masterblock tainted flag to require running Keystore Rebind when the database is opened.


mb_flags:

01 0000000000000001=0x0001=    1=<noname>
02 0000000000000010=0x0002=    2=NOINTEG
03 0000000000000100=0x0004=    4=NONRAW
04 0000000000001000=0x0008=    8=<noname>=Restricted Access Mode is enabled for RollForward. (17073)
05 0000000000010000=0x0010=   16=DBBACKUP
06 0000000000100000=0x0020=   32=<noname>
07 0000000001000000=0x0040=   64=DBROLL_NOINTEG
08 0000000010000000=0x0080=  128=DBROLL_PARTIAL
09 0000000100000000=0x0100=  256=<noname>
10 0000001000000000=0x0200=  512=DBVSTS_UPDATED
11 0000010000000000=0x0400= 1024=DBSEQ64_ENABLED
12 0000100000000000=0x0800= 2048=ENABLEAI_ONLINE
13 0001000000000000=0x1000= 4096=DBROLL_STARTED
14 0010000000000000=0x2000= 8192=DBREDO_CLEAN
15 0100000000000000=0x4000=16384=DBSKIP_RECOVER
16 1000000000000000=0x8000=32768=<noname>


mb_aiflgs:

0x01=1=MBAIAUDIT


mb_bistate:

0x13=19=BITRUNC (BI is truncated)
0x14=20=BIEXIST (BI is not truncated)

Any other values in mb_bistate result in:
SYSTEM ERROR: Invalid block 0 for file dbname.b1, max is 0 (2329)
SYSTEM ERROR: Possible file truncation, 0 too big for database. (612)

%gSYSTEM ERROR: The master block contains an invalid bistate: %t. (760)

The file <file-name> does not exist and it should. (3615)
An attempt was made to use another .bi file when the database masterblock bistate indicated it was not set to BITRUNC. 


mb_flag:

0x0001=1=DEMOVERS
0x0002=2=UNDECIDED


mb_lastLogOpSeq:

The RL_LOGOP_START and RL_LOGOP_END notes (added in V10.0A) are "parentheses" that enclose the physical operations that compose a logical operation.  Progress uses them so that it knows where the start and end are.  For example, we might have a logical operation "insert the key "foo" into index 44. That may require splitting a block to make room for the new entry and the split in turn requires removing a block from the free chain and inserting the new block into the b-tree and updating the original block's parent by inserting an entry for the new block.  So the single logical operation can be composed of many physical ones.

The "parentheses" are generated when the database is the source for replication.


mb_lasttask:

SYSTEM ERROR: rlmemchk mb_lasttask: note=<number> mstrblk=<number>. (860)
It says there is a mismatch between the last transaction id recorded in the master block and the last transaction id recorded in the transaction table note in the before-image log.


mb_fmaDBContent, 
mb_fmaDBEnabled: 

10.0B (originally this feature seemed to be a part of OpenEdge Management project)

An invalid feature <num> has been encountered in the database's Content feature list. (11728)
An invalid feature <num> has been encountered in the database's Enabled feature list. (11727)
The list of active features in database <database> contains features that are not recognized by this codebase (11811)
The list of enabled features in database <database> contains features that are not recognized by this codebase (11810)

First 4 bytes: 0x80000000 (31st bit is on)
Last  4 bytes are reported by DbFeatures.p:

/* DbFeatures.p */
DEFINE VARIABLE vFmaDBContent AS INTEGER NO-UNDO.
DEFINE VARIABLE vFmaDBEnabled AS INTEGER NO-UNDO.

ASSIGN vFmaDBContent = 1 /*V100A_STORAGE*/
       vFmaDBEnabled = 1 /*V100A_STORAGE*/
. /* ASSIGN */
FOR EACH  _Database-Feature NO-LOCK:
  DISPLAY _DBFeature-ID FORMAT ">9" LABEL "ID"
          _DBFeature_Name
          _DBFeature_Enabled FORMAT "x" LABEL "E"
          _DBFeature_Active  FORMAT "x" LABEL "A"
  . /* DISPLAY */
  ASSIGN
    vFmaDBContent = vFmaDBContent + EXP(2, _DBFeature-ID) 
                    WHEN _DBFeature_Enabled EQ "1"
    vFmaDBEnabled = vFmaDBEnabled  + EXP(2, _DBFeature-ID)
                    WHEN _DBFeature_Active  EQ "1"
  . /* ASSIGN */
END.
MESSAGE
  "fmaDBContent:" vFmaDBContent SKIP
  "fmaDBEnabled:" vFmaDBEnabled SKIP
VIEW-AS ALERT-BOX INFO BUTTONS OK.
/* end of DbFeatures.p */

_Database-Feature._DBFeature_Name:

00. V100A_STORAGE (in _Code-Feature but not in _Database-Feature)
01. OpenEdge Replication    
02. Failover Clusters   
03. DataXtend Remote Edition    
04. Reserved    
05. Large Files 
06. Database Auditing   
07. JTA 
08. After Image Mangement/Archiver  
09. 64 Bit DBKEYS   
10. Large Keys  
11. 64 Bit Sequences
12. DataXtend Integration Edition   
13. Encryption  
14. Multi-tenancy   
15. Concurrent JTA and Replication  
16. Reserved    
17. MT Index Rebuild    
18. MT Data Move    
19. Roll Forward Restricted Mode    
20. TP Index Rebuild    
21. Table Partitioning  
22. Read-only Partitions
23. New VST Tables
24. Reserved
25. Partition Copy
26. Authentication Gateway
27. Change Data Capture

proutil -C dbrestrict

Restriction type:
11.3 rollforward   adds 19. Roll Forward Restricted Mode
11.3 datamove      adds
11.7 partitioncopy adds 25. Partition Copy



V8 Fields obsoleted in the recent Progress versions:

024  4  mb_totblks    Total number of database blocks. WARNING: Unexpected database size: expected <bytes> got <bytes>. (3749)
032  4  mb_frstf[1]   Dbkey of first block on Free chain
036  4  mb_frstf[2]   Dbkey of first block on RM chain
040  4  mb_numf[1]    Free blocks below highwater mark. The master block indicates %J free blocks. (3889) 
044  4  mb_numf[2]    Record blocks with free space.    The master block indicates %J RM chain blocks. (3903)
048  4  mb_hiwater    Database blocks high water mark
052  4  mb_lastf      Dbkey of last block on RM chain
200  4  mb_ixdbk[0]   Dbkey of first Index Anchor block (Kbase #20477)
324  4  mb_ixdbk[31]  Dbkey of 32nd Index Anchor block

Since V9 this information is stored in Object Block (bk_type: 12, Block 3):

OBJBLK:
0040 totalBlocksOld:               0x%016x %d
     hiWaterBlockOld:              0x%016x %d
     chainFirst[FREECHN]:          0x%016I64x %I64u
0050 chainFirst[RMCHN]:            0x%016I64x %I64u
     chainFirst[LOCKCHN]:          0x%016I64x %I64u
0060 numBlocksOnChainOld[FREECHN]: 0x%016x %d
     numBlocksOnChainOld[RMCHN]:   0x%016x %d
     numBlocksOnChainOld[LOCKCHN]: 0x%016x %d
0070 chainLast[FREECHN]:           0x%016I64x %I64u
     chainLast[RMCHN]:             0x%016I64x %I64u
0080 chainLast[LOCKCHN]:           0x%016I64x %I64u
     objectId:                     0x%04hx             %d
     objectType:                   0x%04hx             %d
0090 serialNumber:                 0x%016I64x %I64u
     firstFreeCluster:             0x%016I64x %I64u
00A0 lastFreeCluster:              0x%016I64x %I64u
     totalBlocks:                  0x%016I64x %I64u
00B0 hiWaterBlock:                 0x%016I64x %I64u
     numBlocksOnChain[FREECHN]:    0x%016I64x %I64u
00C0 numBlocksOnChain[RMCHN]:      0x%016I64x %I64u
     numBlocksOnChain[LOCKCHN]:    0x%016I64x %I64u
00D0 partitionId:                  0x%04hx             %d


V10.0A:

mb_dsrCRArea does not exit before and after V10.0A.

