AI blocksize of database being used to scan or validate after image files, must have the same as the AI blocksize of the database where the AI file was produced.
To change the After Image Blocksize:
1. The easiest way to confirm the aiblocksize is to run the describe utility against the originating database:
$ proutil prod -C describe
OpenEdge Database Description
Database Name : D:\prgs\wrk\123\aiarc\prod
Version : 184.0
Block Size : 8192
Largest Cluster : 64
Create Date : Thu Nov 25 22:23:43 2021
Last Open Date : Fri Nov 26 00:33:29 2021
Prior Open Date : Fri Nov 26 00:33:29 2021
Schema Change Date : Sat Oct 17 02:51:23 2020
Before Imaging information
Block Size : 16384
Cluster Size (16K Units) : 1024
Last Open Date : Thu Nov 25 23:42:59 2021
After Imaging Information
Block Size : 16384
Begin Date : Thu Nov 25 22:23:49 2021
Last AIMAGE NEW : Thu Nov 25 22:35:14 2021
Currently Busy Area : 13
Current File Number : 1313
2. Change the AI block size to match the originating database the ai files were created against:
$ rfutil dbname -C aimage truncate -aiblocksize size
For -aiblocksize size, specify the size of the AI read and write block in kilobytes.
The minimum value allowed is the size of the database block. Valid values are 0, 1, 2, 4, 8, and 16.
If you specify 0, Progress uses the default size (8K)
To create a dummy database to scan or validate ai files:
GOTO Comment
1. setting the same aiblocksize does not need ai extents added
echo a . > addai.st
prostrct add dummy addai.st
2. the .df does not beed to be loaded
3. the db dblockize or biclustersize/biblocksize does not need to be the same
The following provides scan/verify examples
:Comment
CALL prodb dummy empty
CALL rfutil dummy -C aimage truncate -aiblocksize 16384
CALL rfutil dummy -C aimage scan -a muppet.a2
CALL rfutil dummy -C aiverify partial -a muppet.a2
CALL rfutil dummy -C aiverify full -a muppet.a2
CALL rfutil dummy -C aimage blockdump -a muppet.a2