Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion Groups
Database Servers
DB2InformixIngresMS SQLOraclePervasive.SQLPostgreSQLProgressSybase
Desktop Databases
FileMakerFoxProMS AccessParadox
General
General DB TopicsDatabase Theory
Related Topics
Java Development.NET DevelopmentVB DevelopmentMore Topics ...

Database Forum / Ingres Topics / April 2006

Tip: Looking for answers? Try searching our database.

RE: [Info-ingres] E_OP0082 consistency check

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Peter Gale - 26 Apr 2006 08:01 GMT
Hi Erwin,

Do these random queries have a table in common?
Did this problem start shortly after a run of optimizedb?

If yes to both then you could try dropping and recreating the stats on that
table. If you still get the problem then 2 other options are

a. Remove the stats altogether. Not ideal.
b. Regenerate the stats with a more of histogram cells (-zu and -zr flags on
optimizedb)

--
Peter Gale
Comprehensive Solutions International

T: +44 (0)1398 341777                M: +44 (0)7831 513181
PGale@Comp-Soln.co.uk   www.Comp-Soln.co.uk

"Business Savvy.  IT Smart" R
-----Original Message-----
From: info-ingres-admin@cariboulake.com
[mailto:info-ingres-admin@cariboulake.com] On Behalf Of Erwin Teunisse
Sent: 26 April 2006 07:48
To: info-ingres@cariboulake.com
Subject: [Info-ingres] E_OP0082 consistency check

Hi,

Since a few days we get an error: '39100':E_OP0082 consistency check
It looks like it does not occur on a specific query, but it occurs at
random intervals at random queries.
There were no changes in the Ingres installation.

In the errorlog.log Ingres gives the memory dump and the user and
query-info, but nothing useful that point me in the right way to solve
this problem.

Ingres II 2.0/0011 (axm.vms/00)
Patch 8232

NB. This system is due for replacment in first quarter 2007. An upgrade
is not an option.

Anyone some useful recommendations?

Regards,

Erwin

_______________________________________________
Info-ingres mailing list
Info-ingres@cariboulake.com
http://mailman.cariboulake.com/mailman/listinfo.py/info-ingres
Erwin Teunisse - 26 Apr 2006 08:22 GMT
Hi Peter,

Mmmmm, it looks like the problem started allright when the 'experts'
reintroduced the weekly optimizedb-job.

I wil optimize all the tables (every time the error occurs different
tables) with the two options you suggested.
Then I wil suggest they kill the weekly optimziedb-job.

Thanks fo the suggestions!

Erwin
Chip Nickolett - 26 Apr 2006 16:51 GMT
> Hi Peter,
>
[quoted text clipped - 8 lines]
>
> Erwin

Erwin,

Statistics are *usually* beneficial for the optimizer, but that is not
true 100% of the time.  For that reason a best practice is to save the
old stats prior to generating new ones.  That can easily be done with
the "statdump -o" command.  We recommend maintaining a minimum of 2-3
generation of revisions.  This can be extremely helpful when analyzing
performance problems because the histograms can provide a unique
insight into data distribution and what the optimizer might be
"thinking."  If there is a problem with new stats it is quick and easy
to restore the prior versions using the "optimizedb -i" command, using
the previously saved stats for the reload.

Other tips that we have found useful for best performance include:

1. Use the "-zu200 -zr200" flags to tell optimizedb to generate more
than the default 15 (or less) histogram cells (exact and inexact).  The
maximum number of cells has increased over time but Ingres is smart
enough to look at the "200" and create 499 cells (or whatever) so
setting it to the true limit is not important.

2. Use the "-zk" flag to optimize key columns.

3. Never optimize all columns in a table unless the there are few
attributes and they are all key / index.

4. Look at the "help table" output and if you find an attribute that
has a "average count per value" figure equal to ~25% or more of the
table consider removing stats from that column (statdump -zdl <dbname>
-r<table> -a<column>).  I have found that while the distribution may be
correct it can often cause the optimizer to perform an unnecesary table
scan.  On small tables it might not be a big deal, but in a VLDB
scenario it can be very detrimental.

5. Remember to "sysmod" your database after generating statistics.

Final tips & suggestions...

1. It is good to have a representative test environment where you can
test changes before making them in production.  Once you have something
that works you can just copy the stats over from test to production.
It's quick and minimizes production downtime.

2. Review QEPs to ensure that the change was beneficial.  For an
example on how to read QEPs please see
http://www.Comp-Soln.com/QEP_example.pdf

3. Tests really need to be controlled to demonstrate their
effectiveness (especially important for performance tuning and
benchmarking - two of our specialties).  In the past we followed the
scientific method of only chaning one variable at a time.  It works
great but is time consuming.  For the past 6-8 months we have been
doing more with the "Design of Experiements" approach (a Six Sigma
concept).  It can be challenging to design the test model (i.e., causal
factors) and then determining the impact of those factors based on the
test output, but it has proven itself to be a good shortcut to isolate
the final tweaks that can make the biggest impact.

Hope that helps.  Not all expert recommendations are bad!  :-)

Cheers.

Chip Nickolett (ChipN@Comp-Soln.com
US - Comprehensive Solutions (www.Comp-Soln.com)
UK - Comprehensive Solutions International, Ltd. (www.Comp-Soln.co.uk)
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2009 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.