RE : renaming varnish concepts...

BUSTARRET, Jean-francois jfbustarret at
Wed Jan 28 10:33:31 CET 2009

+1 for some house-cleaning.

- Speaking of bans, is grace used for "banned" objets ?

If i "ban" an object, the first request will regenerate it from the back-end. Will following requests be getting the stale version during regeneration ?

- For the CLI, why not add a "compatible mode" (inactive by default) to remove the greeting ?


-------- Message d'origine--------
De: varnish-misc-bounces at de la part de Poul-Henning Kamp
Date: mer. 28/01/2009 10:11
À: varnish-misc at
Objet : renaming varnish concepts...

A couple of places in varnish I have clearly missed the boat when it
comes to naming.

And a couple of places, I should have thought more carefully.

I wonder if we should correct these things in 2.1, in order to not
confuse future users more than necessary, or if we already have
sufficient users that it does not make sense to change things like
this now.

2.1 is going to be a flag day anyway, because of the changes which
persistent storage will cause, so I'm thinking this might be a
good time for this sort of house-cleaning ?

Input welcome.

1.  Purge vs. Ban

The CLI and VCL commands are named "purge", but they don't, they
add a ban to the list of bans.

I would actually like to rename purge to ban and add a real purge
function that gets rid of the current object (ie: one found in the
cache) and possibly its "Vary:" siblings.

Purge does sound like it will be gone, whereas "ban" better explains
what happens when we use the delayed regexp checks.

Obviously, if I co-opt "purge" to mean something different, backwards
compat is not possible, and all your purge scripts and VCLs with
purge facilities will break.

2.  CLI greeting

When you connect to CLI port (-T argument) it does not announce
itself.  This was probably a mistake, as it makes it harder to
do error detection in scripts that talk to the CLI.

The problem is that if I add the greeting, I will break all
existing scripts that talk to the CLI.

3.  Acceptor vs. waiter

The subfunction we today call "acceptors" are not really, they are
waiters that monitor client connections for new requests.

The real acceptor is a separate piece of code.

This one is only visible in a command-line argument/parameter which
users generally only fiddle as part of debugging.

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

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the varnish-misc mailing list