Vacuum cleanups from Massimo.

This commit is contained in:
Bruce Momjian 1997-03-09 23:29:15 +00:00
parent b913dd1f9e
commit 766bdd2bb5
1 changed files with 14 additions and 18 deletions

View File

@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/commands/vacuum.c,v 1.24 1997/03/09 07:12:36 momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/commands/vacuum.c,v 1.25 1997/03/09 23:29:15 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -451,12 +451,6 @@ vc_vacone (Oid relid)
stats->cmpgt = pgopform->oprcode;
}
else stats->cmpgt = InvalidOid;
func_operator = oper(">",stats->attr->atttypid,stats->attr->atttypid,true);
if (func_operator != NULL) {
pgopform = (OperatorTupleForm) GETSTRUCT(func_operator);
stats->cmpgt = pgopform->oprcode;
}
else stats->cmpgt = InvalidOid;
pgttup = SearchSysCacheTuple(TYPOID,
ObjectIdGetDatum(stats->attr->atttypid),
0,0,0);
@ -1572,18 +1566,20 @@ vc_attrstats(Relation onerel, VacAttrStats *vacattrstats, HeapTuple htup)
}
stats->initialized = true;
}
if (VacAttrStatsLtGtValid(stats) && fmgr(stats->cmplt,value,stats->min)) {
vc_bucketcpy(stats->attr, value, &stats->min, &stats->min_len);
stats->min_cnt = 0;
if (VacAttrStatsLtGtValid(stats) {
if (fmgr(stats->cmplt,value,stats->min)) {
vc_bucketcpy(stats->attr, value, &stats->min, &stats->min_len);
stats->min_cnt = 0;
}
if (fmgr(stats->cmpgt,value,stats->max)) {
vc_bucketcpy(stats->attr, value, &stats->max, &stats->max_len);
stats->max_cnt = 0;
}
if (fmgr(stats->cmpeq,value,stats->min))
stats->min_cnt++;
else if (fmgr(stats->cmpeq,value,stats->max))
stats->max_cnt++;
}
if (VacAttrStatsLtGtValid(stats) && fmgr(stats->cmpgt,value,stats->max)) {
vc_bucketcpy(stats->attr, value, &stats->max, &stats->max_len);
stats->max_cnt = 0;
}
if (VacAttrStatsLtGtValid(stats) && fmgr(stats->cmpeq,value,stats->min))
stats->min_cnt++;
else if (VacAttrStatsLtGtValid(stats) && fmgr(stats->cmpeq,value,stats->max))
stats-> max_cnt++;
if (fmgr(stats->cmpeq,value,stats->best))
stats-> best_cnt++;
else if (fmgr(stats->cmpeq,value,stats->guess1)) {