Instance Initialization Problem
Posted in 1999
Topics: Storage & Space Management, Server Administration
Hello, We are currently working with Informix Online 7.12 UC1 and we are having difficulties initializing our informix instance. Our servers run 128MB memory on a dual Ultra Sparc UNIX 300MHZ processors with 3 18GB ultra fast scsi hard drives. Each time we bring an instance online and then back to off line we can no longer initialize our instance using the same raw partition that the rootdbs was created on. When we were troubleshooting the problem we noticed that the reason it can no longer use the original partition is that the partition information that we were using ( lables etc. ) for informix was removed. For example we initialize our rootdbs for an informix instance to /dev/chunk1 ( a sym link ) with a 2GB parttion of the 3 listed above. The instance will initialize if this is my first time starting it up. Once I bring the instance down, and then try to re-initialize the instance (changing a few parameters for ex. ), it gives us an error that it can no longer find the device /dev/chunk1. If I do not touch anything of the old instance and try to re-initialize it is still the same problem because the partition information is gone. From my understanding you can bring down an informix instance and back up again can you not? Anyone have any ideas whats going on with our partitions? For each device there is one 2GB partition. Do we need to do something special with our partitions to make this work. Does informix do anything with the partition informix once an instance is created? Your help much appreciated. Thanks in advance. Lloyd Wilson Programmer / Analyst | Informix DBA Canada WorkinfoNET llwilson@istar.ca
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> <html> Well, <p>I guess I answered my own question. Because we had set our partitions to start at cylinder 0, and informix user had ownership over the partition, it was overwriting the area of the disk which contains the partition information. This caused any information that was presently there to be overwritten every time an informix instance was re-initialized. <p>A silly mistake on our part .... but it warns those future informix pro's I guess what not to do :) <p>Lloyd. <p>Lloyd AJ Wilson wrote: <blockquote TYPE=CITE>Hello, <p>We are currently working with Informix Online 7.12 UC1 and we are having <br>difficulties initializing our informix instance. Our servers run 128MB <br>memory on a dual Ultra Sparc UNIX 300MHZ processors with 3 18GB ultra <br>fast scsi hard drives. Each time we bring an instance online and then <br>back to off line we can no longer initialize our instance using the same <br>raw partition that the rootdbs was created on. <p>When we were troubleshooting the problem we noticed that the reason it <br>can no longer use the original partition is that the partition <br>information that we were using ( lables etc. ) for informix was <br>removed. For example we initialize our rootdbs for an informix instance <br>to /dev/chunk1 ( a sym link ) with a 2GB parttion of the 3 listed above. <br>The instance will initialize if this is my first time starting it up. <br>Once I bring the instance down, and then try to re-initialize the <br>instance (changing a few parameters for ex. ), it gives us an error that <br>it can no longer find the device /dev/chunk1. If I do not touch anything <br>of the old instance and try to re-initialize it is still the same <br>problem because the partition information is gone. <p>From my understanding you can bring down an informix instance and back <br>up again can you not? Anyone have any ideas whats going on with our <br>partitions? For each device there is one 2GB partition. Do we need to <br>do something special with our partitions to make this work. Does <br>informix do anything with the partition informix once an instance is <br>created? <p>Your help much appreciated. <p>Thanks in advance. <p>Lloyd Wilson <br>Programmer / Analyst | Informix DBA <br>Canada WorkinfoNET <br>llwilson@istar.ca</blockquote> </html>
What are the commands you are using to "initialize" Informix? Lloyd AJ Wilson wrote: > Hello, > > We are currently working with Informix Online 7.12 UC1 and we are having > difficulties initializing our informix instance. Our servers run 128MB > memory on a dual Ultra Sparc UNIX 300MHZ processors with 3 18GB ultra > fast scsi hard drives. Each time we bring an instance online and then > back to off line we can no longer initialize our instance using the same > raw partition that the rootdbs was created on. > > When we were troubleshooting the problem we noticed that the reason it > can no longer use the original partition is that the partition > information that we were using ( lables etc. ) for informix was > removed. For example we initialize our rootdbs for an informix instance > to /dev/chunk1 ( a sym link ) with a 2GB parttion of the 3 listed above. > The instance will initialize if this is my first time starting it up. > Once I bring the instance down, and then try to re-initialize the > instance (changing a few parameters for ex. ), it gives us an error that > it can no longer find the device /dev/chunk1. If I do not touch anything > of the old instance and try to re-initialize it is still the same > problem because the partition information is gone. > > From my understanding you can bring down an informix instance and back > up again can you not? Anyone have any ideas whats going on with our > partitions? For each device there is one 2GB partition. Do we need to > do something special with our partitions to make this work. Does > informix do anything with the partition informix once an instance is > created? > > Your help much appreciated. > > Thanks in advance. > > Lloyd Wilson > Programmer / Analyst | Informix DBA > Canada WorkinfoNET > llwilson@istar.ca
Lloyd AJ Wilson wrote: > > Hello, > > We are currently working with Informix Online 7.12 UC1 and we are having > difficulties initializing our informix instance. Our servers run 128MB > memory on a dual Ultra Sparc UNIX 300MHZ processors with 3 18GB ultra > fast scsi hard drives. Each time we bring an instance online and then > back to off line we can no longer initialize our instance using the same > raw partition that the rootdbs was created on. [SNIP] There it is! You have stated the problem exactly. I assume the disk partitions are native Solaris/SunOS partitions and you are using them as RAW chunks. The problem is that Solaris writes the partition table entry for each disk partition onto the first 4K of each partition and NOWHERE ELSE! So if you created the Informix chunk with an offset of zero it overwrote the partition information of the first partition and when you next try to open the RAW file, by bringing the engine back up again, Solaris not only cannot find that partition but it will not be able to find any following partitions either. If you use native Solaris partitions you MUST use an offset of 4K for EVERY chunk (this will reduce the maximum size of a chunk from just under 2GB by an additional 4K but it cannot be helped). The only other option is to use a volume manager, like Veritas VM, which keeps its partitioning metadata in a section of the drive which is unavailable to the OS or Informix. (BTW you never see this problem when you create filesystems on Solaris because mkfs knows about the partition metadata and skips over it. Informix has no such knowledge.) Art S. Kagel
Art, This is good scoop, but how did you know this? where is it documented? Most Informix DBAs I know are wary of this problem, but overcompensate for it by allocating too large an offset. Is there an authoratative source for this info by OS/mfr/whatever? "Art S. Kagel" wrote: > Lloyd AJ Wilson wrote: > > > > Hello, > > > > We are currently working with Informix Online 7.12 UC1 and we are having > > difficulties initializing our informix instance. Our servers run 128MB > > memory on a dual Ultra Sparc UNIX 300MHZ processors with 3 18GB ultra > > fast scsi hard drives. Each time we bring an instance online and then > > back to off line we can no longer initialize our instance using the same > > raw partition that the rootdbs was created on. > [SNIP] > > There it is! You have stated the problem exactly. I assume the disk > partitions are native Solaris/SunOS partitions and you are using them > as RAW chunks. The problem is that Solaris writes the partition table > entry for each disk partition onto the first 4K of each partition and > NOWHERE ELSE! So if you created the Informix chunk with an offset of > zero it overwrote the partition information of the first partition and > when you next try to open the RAW file, by bringing the engine back up > again, Solaris not only cannot find that partition but it will not be > able to find any following partitions either. If you use native > Solaris partitions you MUST use an offset of 4K for EVERY chunk (this > will reduce the maximum size of a chunk from just under 2GB by an > additional 4K but it cannot be helped). The only other option is to > use a volume manager, like Veritas VM, which keeps its partitioning > metadata in a section of the drive which is unavailable to the OS or > Informix. > > (BTW you never see this problem when you create filesystems on Solaris > because mkfs knows about the partition metadata and skips over it. > Informix has no such knowledge.) > > Art S. Kagel