Hello,

This patch marks refresh-waiting transactions with TCP_REFRESH_PENDING.

Before this change, transactions initiating a refresh were still marked
as TCP_HIT*. If such a transaction was terminated (for any reason)
before receiving an IMS reply, it was logged with that misleading tag.
Now, such transactions are logged using TCP_REFRESH_PENDING[_ABORTED].

After the refresh (successful or otherwise), the tag changes to one of
the other TCP_REFRESH_* values, as before.

Regards,
Eduard.
Mark refresh-waiting transactions with TCP_REFRESH_PENDING.

Before this change, transactions initiating a refresh were still marked
as TCP_HIT*. If such a transaction was terminated (for any reason)
before receiving an IMS reply, it was logged with that misleading tag.
Now, such transactions are logged using TCP_REFRESH_PENDING[_ABORTED].

After the refresh (successful or otherwise), the tag changes to one of
the other TCP_REFRESH_* values, as before.

=== modified file 'src/LogTags.cc'
--- src/LogTags.cc	2016-01-01 00:12:18 +0000
+++ src/LogTags.cc	2016-05-31 19:37:07 +0000
@@ -18,6 +18,7 @@
     "TCP_REFRESH_FAIL_OLD",
     "TCP_REFRESH_FAIL_ERR",
     "TCP_REFRESH_MODIFIED",
+    "TCP_REFRESH_PENDING",
     "TCP_CLIENT_REFRESH_MISS",
     "TCP_IMS_HIT",
     "TCP_SWAPFAIL_MISS",

=== modified file 'src/LogTags.h'
--- src/LogTags.h	2016-01-01 00:12:18 +0000
+++ src/LogTags.h	2016-05-31 19:54:28 +0000
@@ -25,6 +25,7 @@
     LOG_TCP_REFRESH_FAIL_OLD,   // refresh from origin failed, stale reply sent
     LOG_TCP_REFRESH_FAIL_ERR,   // refresh from origin failed, error forwarded
     LOG_TCP_REFRESH_MODIFIED,   // refresh from origin replaced existing entry
+    LOG_TCP_REFRESH_PENDING,    // refresh from origin still pending when transaction aborted
     LOG_TCP_CLIENT_REFRESH_MISS,
     LOG_TCP_IMS_HIT,
     LOG_TCP_SWAPFAIL_MISS,

=== modified file 'src/client_side_reply.cc'
--- src/client_side_reply.cc	2016-05-10 23:06:48 +0000
+++ src/client_side_reply.cc	2016-05-31 19:37:07 +0000
@@ -278,6 +278,7 @@
         return;
     }
 
+    http->logType = LOG_TCP_REFRESH_PENDING;
     http->request->flags.refresh = true;
 #if STORE_CLIENT_LIST_DEBUG
     /* Prevent a race with the store client memory free routines

_______________________________________________
squid-dev mailing list
squid-dev@lists.squid-cache.org
http://lists.squid-cache.org/listinfo/squid-dev

Reply via email to