oncheck warning,What impact will it have on the future?
Posted in 2025
Chuan Lu saw oncheck warnings on a restored IDS 11.50.FC9W3 copy that data pages looked more or less full than the bitmap said (bitmap mode 0xc, calculated 0x4). Andreas Legner explained the difference depends on varchar columns and MAX_FILL_DATA_PAGES. Art Kagel said the parameter exists in 11.50 but should stay off, and advised rerunning oncheck so it corrects the bitmaps. Risk of doing so in production was not answered.
Auto-generated by Claude from the posts below — may be imperfect; read the full thread.
Topics: Storage & Space Management
Hi, expert:
The customer restore the instance into another machine ,and run oncheck on the whole database, it report below errors . but I can't see those errors in the production environment.
TBLspace data check for gapsdb:gaps.beps_fft_qydjb
WARNING: data page 0xb240 in tablespace 0x60016b appears to be
more or less full than is indicated in the bitmap.
Bitmap mode:0xc,Calcuated mode:0x4.
data page x111df in tablespace 0x60016b appears to be more or less full than is indicated in the bitmap
.Bitmap mode:0xc,cacuated mode:0x4.
I have two question.
1)What impact will it have on the future?
2)What does Bitmap mode and Calcuated mode mean?
What impact will it have on the future?
any suggestion are welcome.
------------------------------
chuan lu
------------------------------
what are the onchecks reporting for the table ?
On 8/4/2025 9:05 AM, chuan lu via IBM TechXchange Community wrote:
0100019875672bbb-50345be5-0efd-4bf8-b779-457ef4e892f9-000000@email.amazonses.com">
Hi, expert: The customer restore the instance into another machine ,and run oncheck on the whole database, it report below errors . but I... -posted to the "Informix" group
Does the table have varchar columns?
If so, what's the MAX_FILL_DATA_PAGES configuration on either side?
Tables (partitions) have bitmaps tracking data pages' fullness, in case of data pages there's only semi-full and full.
In a table using varchars, i.e. a variable row length, whether a particular page is considered semi-full or full, depends on MAX_FILL_DATA_PAGES setting.
'bitmap mode' is the bitmaps record of a given page's fullness, 'calculated mode' is oncheck's view on things (which depends on MAX_FILL_DATA_PAGES).
HTH,
Andreas
------------------------------
Andreas Legner
Informix Dev
HCL Software
------------------------------
---- Replied Message ----
I got the feeback from customer ,there are three varchar columns on that table ,the lengths are 120, 120, and 255 respectively. lu chuan
Thanks for you time. The IDS version is 11.50FC9W3, so the parameter MAX_FILL_DATA_PAGES doesn't exist. lu chuan
Not sure how relevant this is: https://www.oninitgroup.com/faq-items/informix-upgrades-and-oncheck ------------------------------ Doug Lawry Oninit Consulting ------------------------------
This proves MAX_FILL_DATA_PAGES is in 11.50.FC9: https://www.ibm.com/mysupport/s/defect/aCIKe000000XmUyOAK/dt412502 ------------------------------ Doug Lawry Oninit Consulting ------------------------------
Doug:
MAX_FILL_DATA_PAGES does exist in v11.50, however, you do NOT want to enable ti in v11.50 (except for a data warehouse environment) because the PFSC (free space cache) was not implemented until early v14.10 releases and the PFSC_BOOST was not implemented until v14.10FC6 or so which finally made that feature viable for any OLTP environment.
My suggestion to Lu would be to run the onchecks again and let oncheck correct the bitmaps.
Art
------------------------------
Art S. Kagel, President and Principal Consultant
ASK Database Management Corp.
www.askdbmgt.com
------------------------------
Ok, I make sense. Althrough I can't see that parameter in ONCONFIG, but it really exists with default value. ------------------------------ chuan lu ------------------------------
Hi, Art: Does it has any risk if I run onchek on the production environment to fix the problem? ------------------------------ chuan lu ------------------------------
Lu:
The manual for v11.50 does not specify a default value, but it does state that the value in the onconfig.std (sample ONCONFIG file) is '0', so that is likely the default (you can find out by running this query:
select * from sysconfig where cf_name = 'MAX_FILL_DATA_PAGES';The cf_default column holds the default for the parameter and the cf_effective holds the current value that is in effect in the server, whether or not the parameter is present in the ONCONFIG file.
The problem with turning this parameter on in earlier releases (prior to 14.10.FC3 I believe) is that there was not cache of variable length pages with more the 10% free space so sometimes an INSERT would have to search multiple pages that had a bitmap entry that indicates that it has at least some free space, but that might not have enough free space to allow the new row to be placed there, especially on a table that experiences periodic deletes or updates that shrink existing rows' lengths (freeing up space on the page). Later releases introduced a cache (PFSC in 12.10) and later v14.10 releases populate the cache on server startup (PFSC_BOOST) making it more efficient and finally useful for nearly all variable length tables.
Art
------------------------------
Art S. Kagel, President and Principal Consultant
ASK Database Management Corp.
www.askdbmgt.com
------------------------------
what version of informix?
I would suggest you to run another restore and see if oncheck still reports the error.
------------------------------
ke chen
------------------------------