expireover option missing in 2.3

Heath Kehoe heath.kehoe at intermec.com
Mon Sep 4 18:32:29 UTC 2000


>
>I was thinking of it again and opened my note pc on the train when
>I came back home.  And also Heath's clear description helps me.
>
>In article <20000904114339.A46739 at becile.teaser.fr>,
>	Laurent Frigault <lfrigault at teaser.fr> wrote;
>
>} I don't know if this can help you, but the following steps explain how I
>} reproduce the problem:
>
>Now, probably I think I know how it happened.  Here we go(I assume
>you still run timecaf);
>
>groupbaseexpiry is true:
> - expireover reads expire.ctl and purges overview data regardless
>   of article existense
> - I think your expire.ctl tells expireover to hold overview data
>
>groupbaseexpiry is false:
> - expireover assumes expire purges history and there should be
>   no entry for article if article is gone
> - there still exists entry for cancelled article when you run
>   expireover, and overview still remains
>
>Heath proposal reminds me add '-s' to expireover which always does
>RETR_STAT regardless of self-expiry functionality.  Any comments?
>-- 
>Katsuhiro Kondou
>


Yeah, so _expiregroup would look like this:

for each overview {
    if(argument(-s) || !SMprobe(EXPENSIVESTAT)) {
	if(SMretrieve(RETR_STAT) == NULL) {
	    deleteit;
	    continue;
	}
    } else {
	if(! OVhisthasmsgid()) {
	    deleteit;
	    continue;
	}
    }
    if(innconf->groupbaseexpiry && OVgroupbasedexpire(...)) {
	deleteit;
	continue;
    }
    keepit;
}

The SMprobe(EXPENSIVESTAT) would return TRUE for tradspool and
timehash; and FALSE for cnfs, timecaf, and trash.

And we could add an OVctl() that expireover.c uses based on
its '-s' argument:  OVctl(OVSTATALL, &yes)

-heath




More information about the inn-workers mailing list