INFORMIX 7.3 / AIX 4.3.1
Posted in 1999
Topics: Performance & Tuning, Installation, Setup & Upgrades, Platform-Specific Issues
Subject: AIX 4.3.1/Informix DSA 7.3 Performance problems We are having servere performance problems with our RS/6000 S70 running AIX 4.3.1 when Informix 7.3 is running on it. It has been suggested that this may be because we are using block devices. However, we cannot get the database to start up with character devices - and neither can Informix Support! Informix have provided us with a test program that creates a shared memory block and accesses it. This program is supposed to do things in the same way that Online uses. When run as root it works, when run as Informix it fails, but when run as guest it works!?! We have tried the program on two different boxes running 4.3.1 installed by different people. I've attached the source code of the program below. Is anyone running 7.3 on AIX 4.3.1? Is there any parameters that need changing in the AIX set-up to get the character special devices to work? If you have AIX 4.3.1 could you try this code and let us know if it does work on your box. Thanks Peter Abbott #include <fcntl.h> #include <sys/ipc.h> #include <sys/shm.h> main() { char *buf = (char *)0; int fd = 0; int id = 0; id = shmget (0x1234, 4096, IPC_CREAT | 0666); if (id == -1) { perror ("shmget"); exit (1); } buf = (char *)shmat (id, (char *)0x40000000, 0); if (buf == (char *)-1) { perror ("shmat"); exit (1); } printf ("%x\\n", (long)buf); fd = open ("/dev/rhd4", O_RDWR); if (fd == -1) perror ("open"); exit (1); } if (read (fd, buf, 4096) != 4096) perror ("read"); close (fd); exit (0); } The program fails with a read error and errno is set to 255. The problem lies within the O/S which is not allowing data to be read from a raw device into shared memory. If "buf" in the above program was a local variable (in the process address space), the program works fine. -----------== Posted via Deja News, The Discussion Network ==---------- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own
petera@unitedgas.co.uk schrieb in Nachricht <7a1pho$h03$1@nnrp1.dejanews.com>... >Subject: AIX 4.3.1/Informix DSA 7.3 Performance problems > >We are having servere performance problems with our RS/6000 S70 running AIX >4.3.1 when Informix 7.3 is running on it. > >It has been suggested that this may be because we are using block devices. >However, we cannot get the database to start up with character devices - and >neither can Informix Support! > >Informix have provided us with a test program that creates a shared memory >block and accesses it. This program is supposed to do things in the same way >that Online uses. > >When run as root it works, when run as Informix it fails, but when run as >guest it works!?! > >We have tried the program on two different boxes running 4.3.1 installed by >different people. > >I've attached the source code of the program below. > >Is anyone running 7.3 on AIX 4.3.1? >Is there any parameters that need changing in the AIX set-up to get the >character special devices to work? >If you have AIX 4.3.1 could you try this code and let us know if it does work >on your box. > >Thanks >Peter Abbott > > >#include <fcntl.h> >#include <sys/ipc.h> >#include <sys/shm.h> > >main() >{ > char *buf = (char *)0; > int fd = 0; > int id = 0; > > id = shmget (0x1234, 4096, IPC_CREAT | 0666); > if (id == -1) { > perror ("shmget"); > exit (1); > } > > buf = (char *)shmat (id, (char *)0x40000000, 0); > > if (buf == (char *)-1) { > perror ("shmat"); > exit (1); > } > > printf ("%x\\n", (long)buf); > > fd = open ("/dev/rhd4", O_RDWR); > if (fd == -1) > perror ("open"); > exit (1); > } > > if (read (fd, buf, 4096) != 4096) > perror ("read"); > close (fd); > exit (0); >} > >The program fails with a read error and errno is set to 255. >The problem lies within the O/S which is not allowing data to >be read from a raw device into shared memory. If "buf" in the above >program was a local variable (in the process address space), the >program works fine. > > > >-----------== Posted via Deja News, The Discussion Network ==---------- >http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own Hi Peter, Please could you be a bit more specific about the problems you have? We have several customers running AIX 4.3.1 and Informix IDS 7.30, all of them using "raw" devices. I have not seen problems if Informix is installed properly (correct order of products, correct access rights on the files) and the access rights/ownership on /dev/r... (raw devices) are ok. Regards Helmut
Hi Peter, Being in the AIX 4.[1-2] and ODS 7.2x camp, I would say the same rule applies. Have you check AIO is being enable on the system? Try `smit aio` to see the setting, if it's not, you ain't going to startup. Secondly, all you need to do is to chown the /dev/rlv* devices (those used by the chunks only!) to informix.informix. And done. Chris petera@unitedgas.co.uk wrote: : Subject: AIX 4.3.1/Informix DSA 7.3 Performance problems : We are having servere performance problems with our RS/6000 S70 running AIX : 4.3.1 when Informix 7.3 is running on it. : It has been suggested that this may be because we are using block devices. : However, we cannot get the database to start up with character devices - and : neither can Informix Support! : Informix have provided us with a test program that creates a shared memory : block and accesses it. This program is supposed to do things in the same way : that Online uses. : When run as root it works, when run as Informix it fails, but when run as : guest it works!?! : We have tried the program on two different boxes running 4.3.1 installed by : different people. : I've attached the source code of the program below. : Is anyone running 7.3 on AIX 4.3.1? : Is there any parameters that need changing in the AIX set-up to get the : character special devices to work? : If you have AIX 4.3.1 could you try this code and let us know if it does work : on your box. : Thanks : Peter Abbott