Re: Migrated from online 5 to online 7.1 now runs slow.
Posted in 1996
ingeldew@aladdin.co.uk (Dave Ingledew) writes:
> <snip>
>
> He is currently involved with a company who run a large suite of
> Informix 4gl programs. Up to about 8 weeks ago they were using
> Online vers 5 but have now upgraded to version 7.10. The users are now
> complaining of performance problems. Typically a report which took
> about 20 minutes to run is now taking somewhere near 4 hours. He has
> been called in to try and speed things up by modifying the code. He's
> a switched on guy and he's checked for all the usual things but can
> find very little wrong with the code.
>
> The company previously contacted Informix and one of their guys has
> been to look at the setup but could find nothing wrong and pointed the
> finger at the 4gl code.
>
> I've seen some references in this group to poor performance if version
> 7.1x online is used with code that has not been compiled by version 6
> i4gl, maybe that's the problem..
>
> The version numbers are as follows: Online vers 7.10D1, i4gl version
> 6.01UD2.
If 4gl version 6.01UD2 is being used, then as far as I understand it the SQL
relay module (sqlrm) is not being used -- this has been the cuplprit in many
of the performance problems people have run into with 7.x due to a bug in using
sqlrm with shared memory connections.
If the 4gl apps performed well under 5.x then it is unlikely that the way they
are coded is the source of the problem. There are many tuning parameters in 7.x which
did not exist in 5.x that could be an issue here. Without more specific
information it's hard to recommend a specific course of action. Performance
tuning generally requires collecting various stats using "onstat" and other
monitor utilities.
Some things to consider:
Were databases exported & re-imported after the upgrade? This is
generally advisable when going from 5.x to 7.x.
7.x has a much different query optimzer than 5.x. To make it
behave like 5.x, the configuartion parameter and/or environment variable
OPTCOMPIND should be set to 0. If you want to take advantage
of the new optimizer (with OPTCOMPIND set to 1 or 2), you really need to use the new
options of the "update statistics" command to build more detailed information
on tables and indexes for the optimizer to take advantage of.
These are the first things that come to mind.
HTH
Irwin Goldstein
Objective Software Systems, Inc.