[master] c9dd14b11 vmod_debug: move test_priv_task logging to the transaction
Nils Goroll
nils.goroll at uplex.de
Sat Jan 16 11:55:06 UTC 2021
commit c9dd14b11d30f1a5863d4b66b626604ce06ccb9a
Author: Nils Goroll <nils.goroll at uplex.de>
Date: Sat Jan 16 12:53:16 2021 +0100
vmod_debug: move test_priv_task logging to the transaction
This removes logging from xid 0 and makes clearer what is happening
diff --git a/bin/varnishtest/tests/v00041.vtc b/bin/varnishtest/tests/v00041.vtc
index 88a869b9c..03a4448a0 100644
--- a/bin/varnishtest/tests/v00041.vtc
+++ b/bin/varnishtest/tests/v00041.vtc
@@ -125,29 +125,18 @@ logexpect l0 -v v1 -g raw -d 1 -m -q "vxid == 0" {
expect ? = Debug {^obj_priv_task_fini.*"initY"}
expect 0 = Debug {^vcl1: VCL_EVENT_WARM}
+ # need an anchor for the ? expects to begin
+ expect * = CLI {^Rd debug.xid}
+ expect 0 = CLI {^Wr 200}
+ expect 0 = CLI {^Rd debug.listen_address}
+ expect 0 = CLI {^Wr 200}
+
# 1001/1002
- expect * = Debug {^test_priv_task.*new.$}
- expect 0 = Debug {^test_priv_task.*exists.$}
- expect 0 = Debug {^test_priv_task.*update.$}
- expect 0 = Debug {^test_priv_task.*new.$}
- expect 0 = Debug {^test_priv_task.*update.$}
- expect 0 = Debug {^test_priv_task.*exists.$}
- # client task can race with backend fini, so all of these are
- # in any order (? = alternatives)
expect ? = Debug {^priv_task_fini}
expect ? = Debug {^obj_priv_task_fini.*"r1002"}
- expect ? = Debug {^test_priv_task.*exists}
expect ? = Debug {^priv_task_fini}
expect ? = Debug {^obj_priv_task_fini.*"d1001"}
- # 1003, but need to include in our alt to tolerate race
- expect ? = Debug {^test_priv_task.*new.$}
- expect ? = Debug {^test_priv_task.*exists.$}
- expect ? = Debug {^test_priv_task.*update.$}
- expect ? = Debug {^test_priv_task.*new.$}
- expect ? = Debug {^test_priv_task.*update.$}
- expect ? = Debug {^test_priv_task.*exists.$}
-
# ...
# 1006 pipe
expect * = Debug {^obj_priv_task_fini.*"p1006"}
@@ -156,19 +145,22 @@ logexpect l0 -v v1 -g raw -d 1 -m -q "vxid == 0" {
expect * = Debug {^vcl1: VCL_EVENT_COLD}
expect 0 = CLI {^Wr 200 0 }
expect 0 = CLI {^Rd vcl.discard vcl1}
- expect 0 = Debug {^test_priv_task.*new.$}
- expect 0 = Debug {^test_priv_task.*update.$}
- expect 0 = Debug {^test_priv_task.*exists.$}
- expect 0 = Debug {^objc.priv_task.. = NULL}
- expect 0 = Debug {^priv_task_fini}
- expect 0 = VCL_Log {^func cleaning up}
- expect 0 = VCL_Log {^obj }
+ expect ? = Debug {^test_priv_task.*new.$}
+ expect ? = Debug {^test_priv_task.*update.$}
+ expect ? = Debug {^test_priv_task.*exists.$}
+ expect ? = Debug {^objc.priv_task.. = NULL}
+ expect ? = Debug {^priv_task_fini}
+ expect ? = VCL_Log {^func cleaning up}
+ expect ? = VCL_Log {^obj }
expect 0 = CLI {^Wr 200 0 }
} -start
logexpect l1001 -v v1 -g vxid -q "vxid == 1001" {
expect * 1001 VCL_call {^RECV}
+ expect 0 = Debug {^test_priv_task.*new.$}
+ expect 0 = Debug {^test_priv_task.*exists.$}
expect 0 = ReqHeader {^x0: /foobar}
+ expect 0 = Debug {^test_priv_task.*update.$}
expect 0 = Debug {^objc.priv_task.. = NULL}
expect 0 = VCL_Log {^objc }
expect 0 = Debug {^objb.priv_task.. = NULL}
@@ -182,6 +174,7 @@ logexpect l1001 -v v1 -g vxid -q "vxid == 1001" {
expect 0 = VCL_Log {^objb }
expect 0 = Debug {^objc.priv_task.. =.*"d1001". .update.}
expect 0 = RespHeader {^x0: /foobar}
+ expect 0 = Debug {^test_priv_task.*exists.$}
expect 0 = RespHeader {^x1: /foobar bazz}
expect 0 = Debug {^objc.priv_task.. =.*"d1001".}
expect 0 = RespHeader {^objc: d1001}
@@ -195,6 +188,8 @@ logexpect l1002 -v v1 -g vxid -q "vxid == 1002" {
expect 0 = Debug {^objb.priv_task.. = NULL}
expect 0 = VCL_Log {^objb }
expect 0 = Debug {^objb.priv_task.. =.*"f1002". .new.}
+ expect 0 = Debug {^test_priv_task.*new.$}
+ expect 0 = Debug {^test_priv_task.*update.$}
expect 0 = BereqHeader {^bx0: b /foobar}
expect 0 = VCL_return {^fetch}
@@ -205,6 +200,7 @@ logexpect l1002 -v v1 -g vxid -q "vxid == 1002" {
expect 0 = VCL_Log {^objb f1002}
expect 0 = Debug {^objb.priv_task.. =.*"r1002". .update.}
expect 0 = BerespHeader {^bx0: b /foobar}
+ expect 0 = Debug {^test_priv_task.*exists.$}
expect 0 = BerespHeader {^bx1: b /foobar}
expect 0 = Debug {^objb.priv_task.. =.*"r1002".}
expect 0 = BerespHeader {^objb: r1002}
@@ -213,7 +209,10 @@ logexpect l1002 -v v1 -g vxid -q "vxid == 1002" {
logexpect l1006 -v v1 -g vxid -q "vxid == 1006" {
expect * 1006 VCL_call {^RECV}
+ expect 0 = Debug {^test_priv_task.*new.$}
+ expect 0 = Debug {^test_priv_task.*exists.$}
expect 0 = ReqHeader {^x0: /pipe}
+ expect 0 = Debug {^test_priv_task.*update.$}
expect 0 = Debug {^objc.priv_task.. = NULL}
expect 0 = VCL_Log {^objc }
expect 0 = Debug {^objb.priv_task.. = NULL}
@@ -231,8 +230,11 @@ logexpect l1006 -v v1 -g vxid -q "vxid == 1006" {
expect 0 = Debug {^objb.priv_task.. = NULL}
expect 0 = VCL_Log {^objb }
expect 0 = Debug {^objc.priv_task.. =.*"p1006". .update.}
+ expect 0 = Debug {^test_priv_task.*update.$}
+ expect 0 = Debug {^test_priv_task.*exists.$}
expect 0 = ReqUnset {^x0: /pipe}
expect 0 = ReqHeader {^x0: /pipe bazz /pipe}
+ expect 0 = Debug {^test_priv_task.*update.$}
expect 0 = VCL_return {^pipe}
} -start
diff --git a/vmod/vmod_debug.c b/vmod/vmod_debug.c
index 4f4a3f32d..1223d11b4 100644
--- a/vmod/vmod_debug.c
+++ b/vmod/vmod_debug.c
@@ -280,12 +280,12 @@ xyzzy_test_priv_task(VRT_CTX, struct vmod_priv *priv, VCL_STRING s)
CHECK_OBJ_NOTNULL(ctx, VRT_CTX_MAGIC);
if (s == NULL || *s == '\0') {
- VSL(SLT_Debug, 0, "test_priv_task(%p) = %p (exists)",
+ mylog(ctx->vsl, SLT_Debug, "test_priv_task(%p) = %p (exists)",
priv, priv->priv);
} else if (priv->priv == NULL) {
priv->priv = strdup(s);
priv->methods = xyzzy_test_priv_task_methods;
- VSL(SLT_Debug, 0, "test_priv_task(%p) = %p (new)",
+ mylog(ctx->vsl, SLT_Debug, "test_priv_task(%p) = %p (new)",
priv, priv->priv);
} else {
char *n = realloc(priv->priv,
@@ -295,7 +295,7 @@ xyzzy_test_priv_task(VRT_CTX, struct vmod_priv *priv, VCL_STRING s)
strcat(n, " ");
strcat(n, s);
priv->priv = n;
- VSL(SLT_Debug, 0, "test_priv_task(%p) = %p (update)",
+ mylog(ctx->vsl, SLT_Debug, "test_priv_task(%p) = %p (update)",
priv, priv->priv);
}
if (priv->priv != NULL)
More information about the varnish-commit
mailing list