oncheck problem
Posted in 1999
Topics: Storage & Space Management, Platform-Specific Issues, Versions, Editions & End-of-Life
Hi all,
I am running IDS 7.31 on a HP-UX Box (OS: HP-UX 10.20).
I have just executed the following command on my 'qtuprod' database:
oncheck -creciIdD qtuprod -y
.....and everything was going fine for about 10 minutes and then as it was
part way through the 'TBLspace data check' it aborted as per the following:
TBLspace data check for qtuprod:techone.glf_bat_appl
TBLspace data check for qtuprod:techone.glf_bat_lne
Cannot allocate 5759176 bytes for 'remainder pieces used bitmap'
Any ideas on this?
Also, I would like to know if these are the correct switches that I should
be passing
to the oncheck command for a complete check of the database. I recently
migrated from Online 5.X to IDS and these were the switches that I used
with 'tbcheck' to perform a complete DB integrity check.
Thanks,
Adam Bradley
In article <01bf1d05$3b0fdac0$150510ac@adamb.ahmg.com.au>, Adam Bradley
<Adam.Bradley@ahmg.com.au> writes
>Hi all,
>
>I am running IDS 7.31 on a HP-UX Box (OS: HP-UX 10.20).
>
>I have just executed the following command on my 'qtuprod' database:
>
>oncheck -creciIdD qtuprod -y>
>.....and everything was going fine for about 10 minutes and then as it was
>part way through the 'TBLspace data check' it aborted as per the following:
>
>TBLspace data check for qtuprod:techone.glf_bat_appl
>
>TBLspace data check for qtuprod:techone.glf_bat_lne
>Cannot allocate 5759176 bytes for 'remainder pieces used bitmap'
>
>Any ideas on this?
>
Check /tmp did not fill up (oncheck creates temp files in /tmp).
Check you did not run out of memory+swap.
>Also, I would like to know if these are the correct switches that I should
>be passing
>to the oncheck command for a complete check of the database. I recently
>migrated from Online 5.X to IDS and these were the switches that I used
>with 'tbcheck' to perform a complete DB integrity check.
>
oncheck -cR
under 7.31 this does more through checks.
then
oncheck -ce
oncheck -cc
oncheck -cID <database name>
I run these separately since it is easier to find which part of online
failed if you split up the checks.
>Thanks,
>Adam Bradley
>
--
David Williams
Upon closer inspection of this problem, the Informix message file (MSGPATH)
had
the following entry when 'oncheck' fell over:
13:04:49 dynamically allocated new shared memory segment (size 5832704)
13:04:49 size of resident + virtual segments 18849792 + 27795456 >40960000
total allowed by configuration parameter SHMTOTAL
13:04:49 out of virtual shared memory
Now, obviously the 'oncheck' command required more shared memory as it was
performing this operation. Two questions:
1) Why does the 'oncheck' process require more shared-memory to be
allocated?
The Informix server seems to chug away quite happily during the day
without
any additional shared-memory segments being added.
2) How do I calculate the correct values so that when 'oncheck' is run, it
is able to dynamically add the required segment without exceeding the
limit? The following
values are taken from my $ONCONFIG file:
SHMVIRTSIZE 15360 # initial virtual shared memory segment size
SHMADD 1024 # Size of new shared memory segments
(Kbytes)
SHMTOTAL 40000 # Total shared memory (Kbytes).
0=>unlimited
Regards - Adam
David Williams <djw@smooth1.demon.co.uk> wrote in article
<PfndIBAwq3E4EwJf@smooth1.demon.co.uk>...
> In article <01bf1d05$3b0fdac0$150510ac@adamb.ahmg.com.au>, Adam Bradley
> <Adam.Bradley@ahmg.com.au> writes
> >Hi all,
> >
> >I am running IDS 7.31 on a HP-UX Box (OS: HP-UX 10.20).
> >
> >I have just executed the following command on my 'qtuprod' database:
> >
> >oncheck -creciIdD qtuprod -y> >
> >.....and everything was going fine for about 10 minutes and then as it
was
> >part way through the 'TBLspace data check' it aborted as per the
following:
> >
> >TBLspace data check for qtuprod:techone.glf_bat_appl
> >
> >TBLspace data check for qtuprod:techone.glf_bat_lne
> >Cannot allocate 5759176 bytes for 'remainder pieces used bitmap'
> >
> >Any ideas on this?
> >
> Check /tmp did not fill up (oncheck creates temp files in /tmp).
> Check you did not run out of memory+swap.
>
> >Also, I would like to know if these are the correct switches that I
should
> >be passing
> >to the oncheck command for a complete check of the database. I recently
> >migrated from Online 5.X to IDS and these were the switches that I used
> >with 'tbcheck' to perform a complete DB integrity check.
> >
>
> oncheck -cR>
> under 7.31 this does more through checks.
>
> then
> oncheck -ce
> oncheck -cc
> oncheck -cID <database name>>
> I run these separately since it is easier to find which part of online
> failed if you split up the checks.
>
> >Thanks,
> >Adam Bradley
> >
>
> --
> David Williams
>
Adam Bradley wrote:
>
> Upon closer inspection of this problem, the Informix message file (MSGPATH)
> had
> the following entry when 'oncheck' fell over:
>
> 13:04:49 dynamically allocated new shared memory segment (size 5832704)
>
> 13:04:49 size of resident + virtual segments 18849792 + 27795456 >> 40960000
> total allowed by configuration parameter SHMTOTAL
>
> 13:04:49 out of virtual shared memory>
> Now, obviously the 'oncheck' command required more shared memory as it was
> performing this operation. Two questions:
>
> 1) Why does the 'oncheck' process require more shared-memory to be
> allocated?
> The Informix server seems to chug away quite happily during the day
> without
> any additional shared-memory segments being added.
It needs temporary sort memory which is allocated from the Virtual
Segments. There was not enough free memory in the existing Virtual
Segment(s) and so the engine attempted to allocate another.
> 2) How do I calculate the correct values so that when 'oncheck' is run, it
> is able to dynamically add the required segment without exceeding the
> limit? The following
Just set SHMVIRTSIZE to zero (0) which means "UNLIMITED" and periodically
run onmode -F to free unused virtual segments. If you notice that there
are always additional segments around, especially if they are partially
used and cannot be freed, it is good to fold their size into SHMVIRTSIZE.
> values are taken from my $ONCONFIG file:
>
> SHMVIRTSIZE 15360 # initial virtual shared memory segment size
> SHMADD 1024 # Size of new shared memory segments
> (Kbytes)
> SHMTOTAL 40000 # Total shared memory (Kbytes).
> 0=>unlimited
Art S. Kagel