Re: Is Informix Reliable?
Posted in 1998
In article <6a8n1h$k76$1@news.xmission.com>, Warren Zeigler <warren.zeigler@flyingj.com> writes >I am currently evaluating Informix -vs- Oracle, and would appreciate your >input. > >I have read on a few threads that people have had to unload and re-install >the database to fix corrupted system tables, indexes, etc.. How often does >this happen? > Not very often, usually only due to disk hardware failure. Run the latest version of Online 7 (7.24) and you should be ok. Lots of people are running old versions. Informix went through version server architectures Standard Engine (SE). Each client has it's own engine process and there is no 'server' as such. Uses UNIX files (.dat for data, .idx for indexes, one of each per table). This came in server version 2.x, 4.0, 4.1 and 7.x. 7.x added optimizer features + Global Language support from Online 7.x Online 5.x (Major rewrite). There are now server processes, online has one file per area of disk used, not per table. Allows the use of raw disk partitions. This still runs one engine process per client. The servers processes co-ordinate locking, checkpointing and disk writes. Server processes comunicate via shared memory. Online 7.x (Major rewrite again). Server is now multi-threaded and clients do not have an associated engine process. Instead they have associated threads which run on a pool of server processes. In UNIX (or now NT as well) you would only see ~10-15 processes even though you may have 1000 clients connecting to it. Basically you have - CPU VP processes which handle CPU intensive tasks and also handle Kernel Asynchronous I/O if your version of UNIX supports it. - AIO VP processes which handle and only needed if Kernel Asynchronous I/O is not used. This is basically used because when disk I/O is done the whole UNIX process may block. - NET VP processes which handle network communications. - Logging VP which handle transaction logging. - One ADM VP to handle admin tasks - One Misc VP to handle threads which use a large stack. Server can now execute almost all tasks in parallel using multiple threads i.e. supports parallel processing (mutli-cpu) machines. Early 7.x versions e.g. 7.10,7.12,7.13, 7.20 added more and more parallel processing features and virtually everything can be executed in parallel. Many people are still rnnning SE or Online 5 and possible early Online 7 versions and hence encountering some bugs. Remember the engine has been through to rewrite to get the top-end architecture is has now. I did encounter a bug in a customer's online 5.01 (the latest is 5.08!!) system. Informix said, yes it was a bug THAT WAS FIXED IN 1994!! Many software houses refuse to upgrade customers because they don't want to risk an incompatability with theit software. i.e. they know their software is crap and hence once it is installed they freeze the configuration and only upgrade when a bug is actually found. Never mind that fact that bug fix upgrades have come out, will most likely be more stable and hence upgrading may well avoid eventually encountering bugs that have already been fixed. I would upgrade once every 18 months and make sure by talking to c.d.i that the version you are moving too is stable. Informix are fixing any bugs as fast as they can especially now that they are commited to sending out a new maintance release every month. I would ignore bug reports unless they are for Online 7.23/7.24. >Also, how reliable is Informix in client/server code, as compared to running >code on the same machine as the server? Are hung sessions rare or frequent? >I need sessions to be able to stay up between middleware servers and the >Informix server for months at a time. > >Thanks > > -- David Williams Maintainer of the Informix FAQ Primary site (Beta Version) http://www.smooth1.demon.co.uk Official site http://www.iiug.org/techinfo/faq/faq_top.html I see you standin', Standin' on your own, It's such a lonely place for you, For you to be If you need a shoulder, Or if you need a friend, I'll be here standing, Until the bitter end... So don't chastise me Or think I, I mean you harm... All I ever wanted Was for you To know that I care