From: Alex Rousskov Date: Mon, 14 Feb 2011 04:48:35 +0000 (-0700) Subject: Polished mgr query handoff from the original recepient worker to Coordinator. X-Git-Tag: take04~7 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3e2347477ce84178a100d309aab70ad4cec21ec8;p=thirdparty%2Fsquid.git Polished mgr query handoff from the original recepient worker to Coordinator. 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. --- diff --git a/src/mgr/Forwarder.cc b/src/mgr/Forwarder.cc index 2d908978cf..a34d0bfe88 100644 --- a/src/mgr/Forwarder.cc +++ b/src/mgr/Forwarder.cc @@ -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