KAIO Environment Variables
Posted in 1999
Topics: Server Administration, Platform-Specific Issues, Versions, Editions & End-of-Life
Hi family,
Since I am managing an HP-UX machine (IDS 7.23) I am well motivated to
look into disabling kernel-based asynchronous disk I/O (KAIO). We have
had some assert failures that, accoring to some posts in this forum,
may be avoidable if the engine avoids KAIO.
I just got back from searching this forum for KAIO information. I have
gleaned that to disable tthe IDS engine's use of KAIO I should export
KAIOOFF=1. Well, the informix script in my init.d does export this env
and still we get the occasional assert fail during sessions from
another host.
Unfortunately, all the informix PDF docs I have lack any reference to
this environment variable. (Implication: This is an undocumented
environment variable - sort of an open secret.) So I don't know if the
value 1 is simply to define the env as existing or can it be set to 0
for some other effect.
Also, there appear to be other envs relating to KAIO. The articles I
have seen in this search of the forum have made reference to:
- AIOOFF2
- IFMX_HPKAIO_VER
- KAIOON
- KAIOOFF
Searching further, I ran strings on the oninit executable. Here is the
edited output (skipping errmr message strings & onconfig params):
$ strings $INFORMIXDIR/bin/oninit | grep AIO|sort|uniq
AIOOP_READAIOOP_WRITE
AIO_TRACE
IFMX_HPKAIO_NUM_REQ
IFMX_HPKAIO_VER
KAIOOFF
KAIOON
Can anyone tell me what these are for and what their values mean? Or do
they just have to be defined as a non-null string, with no
significance to the actual value? I am concerned especially with
KAIOON and KAIOOFF - if they are both set, what will the engine do?
Can I set:
export KAIOON=0
export KAIOOFF=1
just to be certain of disabling engine use of KAIO? Or will setting
them both cause a conflict with an unpredictable resolution?
Thanks.
--
+---- Jacob Salomon - DBA JSalomon@bn.com - ---------------------------+
|--------------- Obligatory sesquipedalian obfuscation: ---------------|
| An object of igneous, sedimentary or metamorphic mineral in combined |
| states of elevated linear and rotational kinetic energy acquires no |
| accumulation of bryophytic vegetation. |
+----------------------------------------------------------------------+
Sent via Deja.com http://www.deja.com/
Share what you know. Learn what you don't.
It's very, very important in your version of IDS that you disable kaio. Not
to do so will render your i/o excrutiatingly slow. In my site we do so
simply by setting KAIOON=0.
As for being certain that it IS disabled: the online log tells you if kaio
is being used at initialisation time; otherwise to onstat -g ioq (no kio
entries means there's no kaio activity).
I feel very strongly that I was shafted by Tech Support, and that they don't
do enough (in the UK at least) to publicise these problems. Instead, they
wait for you to discover them yourself and then tell you about them!
Neil Truby
Londis Stores
Hampton Hill, Uk
Jacob Salomon wrote in message <7r8oi3$l4p$1@nnrp1.deja.com>...
>Hi family,
>
>Since I am managing an HP-UX machine (IDS 7.23) I am well motivated to
>look into disabling kernel-based asynchronous disk I/O (KAIO). We have
>had some assert failures that, accoring to some posts in this forum,
>may be avoidable if the engine avoids KAIO.
>
>I just got back from searching this forum for KAIO information. I have
>gleaned that to disable tthe IDS engine's use of KAIO I should export
>KAIOOFF=1. Well, the informix script in my init.d does export this env
>and still we get the occasional assert fail during sessions from
>another host.
>
>Unfortunately, all the informix PDF docs I have lack any reference to
>this environment variable. (Implication: This is an undocumented
>environment variable - sort of an open secret.) So I don't know if the
>value 1 is simply to define the env as existing or can it be set to 0
>for some other effect.
>
>Also, there appear to be other envs relating to KAIO. The articles I
>have seen in this search of the forum have made reference to:
> - AIOOFF2
> - IFMX_HPKAIO_VER
> - KAIOON
> - KAIOOFF
>
>Searching further, I ran strings on the oninit executable. Here is the
>edited output (skipping errmr message strings & onconfig params):
>
>$ strings $INFORMIXDIR/bin/oninit | grep AIO|sort|uniq
>AIOOP_READ>AIOOP_WRITE
>AIO_TRACE
>IFMX_HPKAIO_NUM_REQ
>IFMX_HPKAIO_VER
>KAIOOFF
>KAIOON
>
>Can anyone tell me what these are for and what their values mean? Or do
>they just have to be defined as a non-null string, with no
>significance to the actual value? I am concerned especially with
>KAIOON and KAIOOFF - if they are both set, what will the engine do?
>Can I set:
> export KAIOON=0
> export KAIOOFF=1
>just to be certain of disabling engine use of KAIO? Or will setting
>them both cause a conflict with an unpredictable resolution?
>
>Thanks.
>--
>+---- Jacob Salomon - DBA JSalomon@bn.com - ---------------------------+
>|--------------- Obligatory sesquipedalian obfuscation: ---------------|
>| An object of igneous, sedimentary or metamorphic mineral in combined |
>| states of elevated linear and rotational kinetic energy acquires no |
>| accumulation of bryophytic vegetation. |
>+----------------------------------------------------------------------+
>
>
>Sent via Deja.com http://www.deja.com/
>Share what you know. Learn what you don't.
Jacob Salomon wrote:
>
> Hi family,
>
> Since I am managing an HP-UX machine (IDS 7.23) I am well motivated to
> look into disabling kernel-based asynchronous disk I/O (KAIO). We have
> had some assert failures that, accoring to some posts in this forum,
> may be avoidable if the engine avoids KAIO.
Or just extremely slow I/O numbers.
>
> I just got back from searching this forum for KAIO information. I have
> gleaned that to disable tthe IDS engine's use of KAIO I should export
> KAIOOFF=1. Well, the informix script in my init.d does export this env
> and still we get the occasional assert fail during sessions from
> another host.
>
My understanding is that KAIO is off by default. The only thing we did
to enable it was to add 'KAIOON=1' to our rc script. In order to
disable it, we merelyh commented it out.
> Unfortunately, all the informix PDF docs I have lack any reference to
> this environment variable. (Implication: This is an undocumented
> environment variable - sort of an open secret.) So I don't know if the
> value 1 is simply to define the env as existing or can it be set to 0
> for some other effect.
KAIOOFF was part of an HP document that I noticed a while back when I
was doing research on KAIO. I've never seen it as part of any Informix
documentation. But then, using KAIOON caused no need to do so.
>
> Also, there appear to be other envs relating to KAIO. The articles I
> have seen in this search of the forum have made reference to:
> - AIOOFF2
Unknown
> - IFMX_HPKAIO_VER
This enables you to override the version of KAIO that you are using.
Didn't work for us.
> - KAIOON
> - KAIOOFF
>
> Searching further, I ran strings on the oninit executable. Here is the
> edited output (skipping errmr message strings & onconfig params):
>
> $ strings $INFORMIXDIR/bin/oninit | grep AIO|sort|uniq
> AIOOP_READ> AIOOP_WRITE
> AIO_TRACE
> IFMX_HPKAIO_NUM_REQ
> IFMX_HPKAIO_VER
> KAIOOFF
> KAIOON
>
> Can anyone tell me what these are for and what their values mean? Or do
> they just have to be defined as a non-null string, with no
> significance to the actual value? I am concerned especially with
> KAIOON and KAIOOFF - if they are both set, what will the engine do?
> Can I set:
> export KAIOON=0
> export KAIOOFF=1
> just to be certain of disabling engine use of KAIO? Or will setting
> them both cause a conflict with an unpredictable resolution?
>
As I've mentioned, KAIOON=1 was OK for us.
FYI: KAIO works well in 7.30.uc7 for HPUX 10.20. We've been up for a
while with no ill effects.
John Carlson
Informix DBA
WHSmith USA
Related threads
- Posting from the Informix-list
- Migrating from IDS 9.40.UC6 to 11.50.UC3
- Ip for a network session
- questions onstat -g