Memory Alocation ids 11.5 with Linux Red Hat
Posted in 2009
A user migrating from IDS 9.40 to 11.50 on Red Hat couldn't start the instance with more than ~512,000 buffers, getting "shmat: [EINVAL] shared memory base address illegal" / contiguous shared memory allocation failure. Replies: the 32-bit build (11.50UC5) is limited to roughly 2GB, so the 64-bit (FC) version is needed for larger buffer pools; alternatively, shared libraries loading in the address range may block contiguous attachment (check with pmap and SHMBASE). The constant "CKPT INP" status was explained as normal non-blocking interval checkpoint flushing in 11.50. The poster never confirmed a fix, so no definite resolution is recorded.
Auto-generated by DrWatson from the posts below — may be imperfect; read the full thread.
Topics: Performance & Tuning, Installation, Setup & Upgrades, Server Administration, Logging & Checkpoints, Migration, Import/Export & Data Conversion, Platform-Specific Issues, Versions, Editions & End-of-Life
Hi everyone,
I'm doing some performance tests to validate migration from ids 9.40 to ids
11.5 version on Red Hat 4.
The first surprise: I can't initialize 11.5 instance with more than 512000
buffers on bufferpool . When I tried, I got the message:
16:59:01 IBM Informix Dynamic Server Started.
16:59:01 Segment locked: addr=0x44000000, size=1180282880
16:59:01 shmat: [EINVAL][22]: shared memory base address illegal
16:59:01 Contiguous shared memory segment allocation failed at 0xbe59b000.
Allocation successful at 0x42000000.
Check SHMBASE is consistent with the value in $INFORMIXDIR/etc/onconfig.std.
If you are using the correct SHMBASE value in your ONCONFIG file, then
consider this message informational only.
Ok, the first strange thing is, only in initialize process I got this message.
Just a week ago, I made a diferent migration process, installing the new
version over the old version. Guess what ? I didn't recieve the error message
(I had set up bufferpool to 1.5 Gbytes).
The first question is what do I have to do to alow informix handle a bigger
bufferpool memory portion? I checked the release notes and everything is
right, at least equal than the informix needs.
The seconds question is why IDS is always doing a checkpoint with INP ? (look
at the message bellow)
IBM Informix Dynamic Server Version 11.50.UC5WE -- On-Line (CKPT INP) -- Up
21:02:46 -- 1665152 Kbytes
The onconfig parameters is almost the same (with less memory, in the error I
talked about above)
Note: I'm performing a dbimport. My "best" checkpoint duration was 378 seconds.
Anybody??
Thanks,
André
_________________________________________________________________
Descubra todas as novidades do novo Internet Explorer 8
http://brasil.microsoft.com.br/IE8/mergulhe/?utm_source=MSN%3BHotmail&utm_medium
=Tagline&utm_campaign=IE8
That's because you are running 11.50UC4 which is a 32bit version of IDS and
32bit applications can only access just over 2GB of memory under Linux
(which is actually better than most UNIXes). You need to be running the
64bit version 11.50FC4 to get access to more memory and so more buffers.
Art
Art S. Kagel
Oninit (www.oninit.com)
IIUG Board of Directors (art@iiug.org)
Disclaimer: Please keep in mind that my own opinions are my own opinions and
do not reflect on my employer, Oninit, the IIUG, nor any other organization
with which I am associated either explicitly or implicitly. Neither do
those opinions reflect those of other individuals affiliated with any entity
with which I am affiliated nor those of the entities themselves.
2009/8/3 André Luiz Rufino <andre_rufino@msn.com>
> Hi everyone,
>
> I'm doing some performance tests to validate migration from ids 9.40 to ids
> 11.5 version on Red Hat 4.
>
> The first surprise: I can't initialize 11.5 instance with more than 512000
> buffers on bufferpool . When I tried, I got the message:
>
> 16:59:01 IBM Informix Dynamic Server Started.
> 16:59:01 Segment locked: addr=0x44000000, size=1180282880
> 16:59:01 shmat: [EINVAL][22]: shared memory base address illegal
> 16:59:01 Contiguous shared memory segment allocation failed at 0xbe59b000.
> Allocation successful at 0x42000000.
> Check SHMBASE is consistent with the value in
> $INFORMIXDIR/etc/onconfig.std.
> If you are using the correct SHMBASE value in your ONCONFIG file, then
> consider this message informational only.
>
> Ok, the first strange thing is, only in initialize process I got this
> message.
> Just a week ago, I made a diferent migration process, installing the new
> version over the old version. Guess what ? I didn't recieve the error
> message
> (I had set up bufferpool to 1.5 Gbytes).
>
> The first question is what do I have to do to alow informix handle a bigger
> bufferpool memory portion? I checked the release notes and everything is
> right, at least equal than the informix needs.
>
> The seconds question is why IDS is always doing a checkpoint with INP ?
> (look
> at the message bellow)
>
> IBM Informix Dynamic Server Version 11.50.UC5WE -- On-Line (CKPT INP) -- Up
> 21:02:46 -- 1665152 Kbytes>
> The onconfig parameters is almost the same (with less memory, in the error
> I
> talked about above)
>
> Note: I'm performing a dbimport. My "best" checkpoint duration was 378
> seconds.
>
> Anybody??
>
> Thanks,
>
> André
>
> _________________________________________________________________
> Descubra todas as novidades do novo Internet Explorer 8
>
>
>
http://brasil.microsoft.com.br/IE8/mergulhe/?utm_source=MSN%3BHotmail&utm_medium
=Tagline&utm_campaign=IE8
>
>
>
>
*******************************************************************************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
>
--001636c5b184f073ca0470421edf
Well, the checkpoint question is easy. Since 11.50 has the interval
checkpoints (non-blocking buffer pool flushing), basically the onstat - flags
will say the checkpoint is in progress while the buffer pool is being flushed,
also that checkpoint duration is the time to flush the buffer pool, but since
that flushing no longer blocks users it may not be a big concern. But for
those 378 seconds, onstat - will show the INP (for in progress).
The large buffer pool issue sounds like a conflict with where shared libraries
are attaching at, compared to where shared memory is being attached. The error
said it was unable to get contiguous memory so you would need some sort of
tool that can dump out the oninit's process map (like pmap?) and see if there
is now some shared library loaded at 0xbe59b000 or near there anyway. You
basically need to look at the process memory map and clear out enough
contiguous space so you can allocate and attach the shared memory all together
(and the most likely culprit of something being loaded into the process at
various spots would be shared libraries).
Jacques Renaut
IBM IDS Technical Support
APD team
You wrote---------------------------------------------------------------
Hi everyone,
I'm doing some performance tests to validate migration from ids 9.40 to ids
11.5 version on Red Hat 4.
The first surprise: I can't initialize 11.5 instance with more than 512000
buffers on bufferpool . When I tried, I got the message:
16:59:01 IBM Informix Dynamic Server Started.
16:59:01 Segment locked: addr=0x44000000, size=1180282880
16:59:01 shmat: [EINVAL][22]: shared memory base address illegal
16:59:01 Contiguous shared memory segment allocation failed at 0xbe59b000.
Allocation successful at 0x42000000.
Check SHMBASE is consistent with the value in $INFORMIXDIR/etc/onconfig.std.
If you are using the correct SHMBASE value in your ONCONFIG file, then
consider this message informational only.
Ok, the first strange thing is, only in initialize process I got this message.
Just a week ago, I made a diferent migration process, installing the new
version over the old version. Guess what ? I didn't recieve the error message
(I had set up bufferpool to 1.5 Gbytes).
The first question is what do I have to do to alow informix handle a bigger
bufferpool memory portion? I checked the release notes and everything is
right, at least equal than the informix needs.
The seconds question is why IDS is always doing a checkpoint with INP ? (look
at the message bellow)
IBM Informix Dynamic Server Version 11.50.UC5WE -- On-Line (CKPT INP) -- Up
21:02:46 -- 1665152 Kbytes
The onconfig parameters is almost the same (with less memory, in the error I
talked about above)
Note: I'm performing a dbimport. My "best" checkpoint duration was 378 seconds.
Anybody??
Ok, But why I can do it (memory alocation) installing 11.5 version over the
9.4 version.
> To: ids@iiug.org
> From: jrenaut@us.ibm.com
> Subject: Re: Memory Alocation ids 11.5 with Linux Red Hat [16570]
> Date: Mon, 3 Aug 2009 15:55:58 -0400
>
> Well, the checkpoint question is easy. Since 11.50 has the interval
> checkpoints (non-blocking buffer pool flushing), basically the onstat - flags
> will say the checkpoint is in progress while the buffer pool is being
flushed,
> also that checkpoint duration is the time to flush the buffer pool, but since
> that flushing no longer blocks users it may not be a big concern. But for
> those 378 seconds, onstat - will show the INP (for in progress).
>
> The large buffer pool issue sounds like a conflict with where shared
libraries
> are attaching at, compared to where shared memory is being attached. The
error
> said it was unable to get contiguous memory so you would need some sort of
> tool that can dump out the oninit's process map (like pmap?) and see if there
> is now some shared library loaded at 0xbe59b000 or near there anyway. You
> basically need to look at the process memory map and clear out enough
> contiguous space so you can allocate and attach the shared memory all
together
> (and the most likely culprit of something being loaded into the process at
> various spots would be shared libraries).
>
> Jacques Renaut
> IBM IDS Technical Support
> APD team
>
> You wrote---------------------------------------------------------------
> Hi everyone,
>
> I'm doing some performance tests to validate migration from ids 9.40 to ids
> 11.5 version on Red Hat 4.
>
> The first surprise: I can't initialize 11.5 instance with more than 512000
> buffers on bufferpool . When I tried, I got the message:
>
> 16:59:01 IBM Informix Dynamic Server Started.
> 16:59:01 Segment locked: addr=0x44000000, size=1180282880
> 16:59:01 shmat: [EINVAL][22]: shared memory base address illegal
> 16:59:01 Contiguous shared memory segment allocation failed at 0xbe59b000.
> Allocation successful at 0x42000000.
> Check SHMBASE is consistent with the value in $INFORMIXDIR/etc/onconfig.std.
> If you are using the correct SHMBASE value in your ONCONFIG file, then
> consider this message informational only.
>
> Ok, the first strange thing is, only in initialize process I got this
message.
> Just a week ago, I made a diferent migration process, installing the new
> version over the old version. Guess what ? I didn't recieve the error message
> (I had set up bufferpool to 1.5 Gbytes).
>
> The first question is what do I have to do to alow informix handle a bigger
> bufferpool memory portion? I checked the release notes and everything is
> right, at least equal than the informix needs.
>
> The seconds question is why IDS is always doing a checkpoint with INP ? (look
> at the message bellow)
>
> IBM Informix Dynamic Server Version 11.50.UC5WE -- On-Line (CKPT INP) -- Up
> 21:02:46 -- 1665152 Kbytes>
> The onconfig parameters is almost the same (with less memory, in the error I
> talked about above)
>
> Note: I'm performing a dbimport. My "best" checkpoint duration was 378
> seconds.
>
> Anybody??
>
>
>
*******************************************************************************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
_________________________________________________________________
Descubra todas as novidades do novo Internet Explorer 8
http://brasil.microsoft.com.br/IE8/mergulhe/?utm_source=MSN%3BHotmail&utm_medium
=Tagline&utm_campaign=IE8
I'm not sure why. When you compare the situation where it worked to where it didn't, is the value of SHMBASE equal in both onconfigs? Were both migrations on the same linux box? If not, could the shared library that's causing the problem already been modified to load at a different address? You wrote---------------------------------------------------- Ok, But why I can do it (memory alocation) installing 11.5 version over the 9.4 version.
Ok. Thanks a lot. > To: ids@iiug.org > From: jrenaut@us.ibm.com > Subject: Re: RE: Memory Alocation ids 11.5 with Linux R.... [16578] > Date: Tue, 4 Aug 2009 11:09:10 -0400 > > I'm not sure why. When you compare the situation where it worked to where it > didn't, is the value of SHMBASE equal in both onconfigs? Were both migrations > on the same linux box? If not, could the shared library that's causing the > problem already been modified to load at a different address? > > You wrote---------------------------------------------------- > Ok, But why I can do it (memory alocation) installing 11.5 version over the > 9.4 version. > > > ******************************************************************************* > Forum Note: Use "Reply" to post a response in the discussion forum. > _________________________________________________________________ Novo Internet Explorer 8. Baixe agora, é grátis! http://brasil.microsoft.com.br/IE8/mergulhe/?utm_source=MSN%3BHotmail&utm_medium =Tagline&utm_campaign=IE8