Subject | Re: [firebird-support] Poor Performance |
---|---|
Author | Ann W. Harrison |
Post date | 2005-06-07T20:48:07Z |
berniebialt wrote:
The most likely problem is garbage collection problems, usually caused
by long-standing transactions and poor index selectivity. Here are the
things you can do to determine whether that is the problem.
1) gstat -h
This command reads the statistics from the database header page.
What you're looking for is the difference between the oldest_active
transaction and the next_transaction. They should be within a few
hundred of each other.
2) gstat -a -r >stats.log
This command reads the whole database, collecting statistics about
data distribution and indexes. Look first at the max version: values
for each table. They should be no more than 10. Then check the max dup
for indexes. Any index with a max dup over 30,000 is a potential problem.
Regards,
Ann
The most likely problem is garbage collection problems, usually caused
by long-standing transactions and poor index selectivity. Here are the
things you can do to determine whether that is the problem.
1) gstat -h
This command reads the statistics from the database header page.
What you're looking for is the difference between the oldest_active
transaction and the next_transaction. They should be within a few
hundred of each other.
2) gstat -a -r >stats.log
This command reads the whole database, collecting statistics about
data distribution and indexes. Look first at the max version: values
for each table. They should be no more than 10. Then check the max dup
for indexes. Any index with a max dup over 30,000 is a potential problem.
Regards,
Ann