On 06/11/2014 08:52 AM, Tsantilas Christos wrote: > I must also note that this patch adds an inconsistency. All annotation > key=values pairs received from helpers, accumulated to the existing key > notes values. The clt_conn_id=Id pair is always unique and replaces the > existing clt_conn_id=Id annotation pair. > We may want to make all annotations unique, or maybe implement a > configuration mechanism to define which annotations are overwriting > their previous values and which appending the new values.
I suggest making all annotations unique (i.e., new values overwrite old ones) because helpers that want to accumulate annotation values can do that by returning old values along with new ones: received by helper: name=v1 returned by helper: name=v1,v2 Please note that the opposite does not work: If annotation values are always accumulated, a helper cannot overwrite/remove the old value. If, in the future, we discover a need to support accumulating annotations, we can add a squid.conf option to enumerate annotation keys that should be accumulated. IMO, if others agree that annotations should not automatically accumulate, that change can be done as a part of this patch (because it needs the uniqueness exception/code anyway). If others disagree, the patch can go in "as is" while we wait for the need to add a configuration option to control uniqueness. Cheers, Alex.
