]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Polished mgr query handoff from the original recepient worker to Coordinator.
authorAlex Rousskov <rousskov@measurement-factory.com>
Mon, 14 Feb 2011 04:48:35 +0000 (21:48 -0700)
committerAlex Rousskov <rousskov@measurement-factory.com>
Mon, 14 Feb 2011 04:48:35 +0000 (21:48 -0700)
When the worker receives a cache manager query, gives it to Coordinator, and
receives an ACK from Coordinator, the worker should stop handling the
originating transaction without declaring the associated StoreEntry as
complete because doing so triggers store client activity on the client-side
and might cause undesirable output to the now-shared HTTP client socket.
Besides, declaring an empty entry as complete is kind of wrong.

src/mgr/Forwarder.cc

index 2d908978cf8c9c4f20efc49539a31fdaf33f5d4b..a34d0bfe88fc5d944cda5fabf5e50226826bb775 100644 (file)
@@ -139,8 +139,8 @@ Mgr::Forwarder::handleRemoteAck()
     Must(entry != NULL);
 
     requestId = 0;
-    EBIT_CLR(entry->flags, ENTRY_FWD_HDR_WAIT);
-    entry->complete();
+    // Do not clear ENTRY_FWD_HDR_WAIT or do entry->complete() because
+    // it will trigger our client side processing. Let job cleanup close.
 }
 
 /// Mgr::Forwarder::requestTimedOut wrapper