[squid-dev] [PATCH] Collapse internal revalidation requests (SMP-unaware caches)

Amos Jeffries squid3 at treenet.co.nz
Wed Jul 20 13:21:41 UTC 2016


On 18/07/2016 2:05 a.m., Eduard Bagdasaryan wrote:
> Hello,
> 
> 2016-07-16 0:50 GMT+03:00 Eduard Bagdasaryan:
>> The attachment contains trunk patch version(for r14742) and v3.5 port
> (for r14066).
> 
> Reattached patches because of a bugfix.
> 

Couple of things:

* some of the new methods need to be adjusted to follow the Squid coding
style. With return-type and opening '{' on different lines to the
name(params).
 - I noticed calcPublicKey and adjustVary in src/store.cc, there may be
others.


* the keyScope enum defined in src/store_key_md5.h is used in several
places with implicit boolean conversion.
 To ensure that works reliably across different compilers and
environments, the enum definition needs the first entry/value to be
explicitly defined with the "= 0" so the false case is identifiable.


* smpAware() is documented as indicating whether CF is allowed. Yet the
the new comment inside the loop of Store::Disks::smpAware() seems to be
saying the opposite.

* collapsing requires Transients to exist yes?
 So why disable Transients initialization when !smpAware() ?


Probably more a question for Alex;
  whats the point of UsingSmp() in determining transients
initialization? I would expect collapsing to be doable in both SMP and
non-SMP modes.


In related things. I am working on improving the log tags to report to
which transactions have been delayed by collapsed forwarding. ie. the
crSlave transactions in this patch. Would you mind adding a TODO or XXX
at the point where I should (in my followup patch) set the LogTags flag?

Thank you

Amos



More information about the squid-dev mailing list