Test suite for dynamic backends

Poul-Henning Kamp phk at phk.freebsd.dk
Sun Jul 12 11:20:30 CEST 2015


I have finally given up on adding "interrim" refcounting of VCL backends.

The .resolve() trick you had implemented to narrow down the race
condition did only that, it didn't completely close it, and I could
provoke it in heavy-load synthetic tests.

Instead I have simply given dynamic backends a 60 second cool-off
before we nuke them.

This is only a stop-gap measure, and in Varnish 5 we will need to
bite the bullet and do proper refcounting on all non-atomic VCL

But for now, dynamic backends should work for 4.1, but VMODS should
take care to not needlessly replace dynamic backends with identical
new ones (as vmod_debug does intentionally).

Thanks for your heroic effort Dridi,  Good work!

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.

More information about the varnish-dev mailing list