a couple of questions about -spersistent
Ken Brownfield
kb+varnish at slide.com
Thu Jun 17 20:56:46 CEST 2010
Even with a graceful stop via the CLI, I've never had any data retained after a parent restart. And even after a day of operation (which should result in many closed segments, though I don't know what the "max segment size" is) and a graceful shut, nothing is preserved.
Every restart of the parent shows:
CHK(0x7f520fa2b080 SILO 0x7f51cf3e0000 SILO) = 3
Which means the silo is reinitialized from scratch. From my cursory scan of storage_persistent.c (long ago) I didn't see code to do a reload of the relevant data structures.
Is it possible to create a unit test for this, where the child is shut down in a way that properly flushes non-full segments? I'd be willing to write one as a starting point.
--
Ken
On Jun 17, 2010, at 11:22 AM, Poul-Henning Kamp wrote:
> In message <4C1A26A0.2090001 at gmail.com>, Rob S writes:
>
>> Can someone who knows more about this feature add some comment here?
>
> Sorry about being somewhat offline-ish.
>
> -spersistent is still experimental.
>
> It should work and keep objects *in closed segments* across both
> child and parent process restarts.
>
> The first requirement for this to work, is that it actuall finds
> the same file on the disk again when you start.
>
> The second is that the segments must be closed, that means that
> either the segment is full or a orderly shutdown of the child
> process must happen.
>
> If you start varnish, do one requst, kill -9' it, it will not
> work, as the segment is not closed.
>
> --
> Poul-Henning Kamp | UNIX since Zilog Zeus 3.20
> phk at FreeBSD.ORG | TCP/IP since RFC 956
> FreeBSD committer | BSD since 4.3-tahoe
> Never attribute to malice what can adequately be explained by incompetence.
>
> _______________________________________________
> varnish-misc mailing list
> varnish-misc at varnish-cache.org
> http://lists.varnish-cache.org/mailman/listinfo/varnish-misc
More information about the varnish-misc
mailing list