abort() in vtc_log_VAS_Fail not reached

Nils Goroll slink at schokola.de
Mon Jun 23 17:58:40 CEST 2014


I've just stumbled over this code in vtc_log.c:vtc_log()

	if (lvl > 0)
		return;
	if (lvl == 0)
		vtc_error = 1;
	if (pthread_self() != vtc_thread)
		pthread_exit(NULL);

Opinions on adding an option to varnishtest to always abort() for assertion
failures?

this code goes back to

commit 1ff88369bf3690020975f2250ebad4ada39d1e0d
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date:   Tue Oct 25 09:33:57 2011 +0000

    Make it possible to mark http stuff "non-fatal".

    The thread (s%d/c%d) still dies, but it does not mark this as
    fatal with respect to the test as such.

    This is useful where varnishd shuts the connection on a backend
    prematurely, as part of the correct execution of a test.

    Fix a undue recursion problem with asserts in the vtc_log code.

Nils



More information about the varnish-dev mailing list