Commit 578366ec authored by Poul-Henning Kamp's avatar Poul-Henning Kamp

Also zap keep when purging.

Fixes #1139
parent 32d0751b
......@@ -555,7 +555,8 @@ hsh_rush(struct dstat *ds, struct objhead *oh)
*/
void
HSH_Purge(struct worker *wrk, struct objhead *oh, double ttl, double grace)
HSH_Purge(struct worker *wrk, struct objhead *oh, double ttl, double grace,
double keep)
{
struct objcore *oc, **ocp;
unsigned spc, nobj, n;
......@@ -598,7 +599,7 @@ HSH_Purge(struct worker *wrk, struct objhead *oh, double ttl, double grace)
if (o == NULL)
continue;
CHECK_OBJ_NOTNULL(o, OBJECT_MAGIC);
EXP_Rearm(o, now, ttl, grace, NAN); // XXX: Keep ?
EXP_Rearm(o, now, ttl, grace, keep);
(void)HSH_DerefObj(&wrk->stats, &o);
}
WS_Release(wrk->aws, 0);
......
......@@ -825,7 +825,7 @@ cnt_purge(struct worker *wrk, struct req *req)
CHECK_OBJ_NOTNULL(boc, OBJCORE_MAGIC);
VRY_Finish(req, DISCARD);
HSH_Purge(wrk, boc->objhead, 0, 0);
HSH_Purge(wrk, boc->objhead, 0, 0, 0);
AZ(HSH_DerefObjCore(&wrk->stats, &boc));
......
......@@ -492,10 +492,10 @@ VRT_purge(const struct vrt_ctx *ctx, double ttl, double grace)
CHECK_OBJ_NOTNULL(ctx->req->wrk, WORKER_MAGIC);
if (ctx->method == VCL_MET_HIT)
HSH_Purge(ctx->req->wrk, ctx->req->obj->objcore->objhead,
ttl, grace);
ttl, grace, NAN);
else if (ctx->method == VCL_MET_MISS)
HSH_Purge(ctx->req->wrk, ctx->req->objcore->objhead,
ttl, grace);
ttl, grace, NAN);
}
/*--------------------------------------------------------------------
......
......@@ -70,7 +70,8 @@ void HSH_Drop(struct worker *, struct object **);
void HSH_Init(const struct hash_slinger *slinger);
void HSH_AddString(const struct req *, const char *str);
void HSH_Insert(struct worker *, const void *hash, struct objcore *);
void HSH_Purge(struct worker *, struct objhead *, double ttl, double grace);
void HSH_Purge(struct worker *, struct objhead *, double ttl, double grace,
double keep);
void HSH_config(const char *h_arg);
struct busyobj *HSH_RefBusy(const struct objcore *oc);
struct objcore *HSH_Private(struct worker *wrk);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment