Re: steady peer connection pool

2013-09-21 Thread Kinkie
On Sun, Sep 22, 2013 at 1:14 AM, Alex Rousskov
 wrote:
> On 09/21/2013 04:38 AM, Kinkie wrote:
>> Amos already answered very fully.
>> To me, this just seems a worthwile optimization.
>> Background neighbor probe with dummy request and cache_peer idle=num
>> seems reasonable in terms of effectiveness and implementation effort;
>
> Unless we bombard a peer with new connections every few hundred
> milliseconds, the effectiveness of the above combination (for the
> problem at hand) would be close to zero. To solve the problem, the
> criteria for opening a new connection should be "not enough opened
> connections" rather than "we have not probed that peer for a while".
> While you can emulate the former by using small timeouts, the overheads
> make such emulation prohibitively expensive.

Why do you say that? Let's say we split the parameter into an high and
a low watermark (min-idle and max-idle). In the pconn cleanup, if
we're above max-idle, we start closing some pconns, if we're below we
start more aggressively "probing" forcibly using new conns (see point
1), and adding these to the pconns pool. Sure, it won't _fix_ the
problem but at least it'll make it a bit better, won't it? After all,
it's just the way Apache handles the idle workers pool, so it's also
pretty well understood by system administrators.

  Kinkie


Re: steady peer connection pool

2013-09-21 Thread Amos Jeffries

On 22/09/2013 10:49 a.m., Alex Rousskov wrote:

On 09/20/2013 09:05 PM, Amos Jeffries wrote:


1) the background neighbour probe which opens a TCP connection to the
peer then drops it should be at least saving that connection in the
pconn pool for re-use if possible. This also brings Squid more inline
with browsers which open multiple connections then leave some idle until
later use happens.

This one will indeed [partially] help with the problem I have described.
The primary difference here is that these "probe" connections would have
to be done based on the number of currently available idle connections,
and not based on time. Another difference is that we may need more than
one concurrent probe to the peer.


Maybe. There will always be churn from closing connections. Particularly 
since POST requests etc force an idle connection to close early. idle=N 
is about minimum available rather than exact count.



If we ever implement the more aggressive version, we should try to
integrate it with the peer probes.


Yes.

Amos


Re: steady peer connection pool

2013-09-21 Thread Amos Jeffries

On 22/09/2013 11:14 a.m., Alex Rousskov wrote:

On 09/21/2013 04:38 AM, Kinkie wrote:

Amos already answered very fully.
To me, this just seems a worthwile optimization.
Background neighbor probe with dummy request and cache_peer idle=num
seems reasonable in terms of effectiveness and implementation effort;

Unless we bombard a peer with new connections every few hundred
milliseconds, the effectiveness of the above combination (for the
problem at hand) would be close to zero.


I'm not proposing that as a full fix but as one soure of reducing the 
total handshake load and delays. Even one probe per second re-used is 
one user happier.


Also, is this peer actually having connections re-used? or closing them 
constantly?
With a peer under relatively constant load the connection count should 
accumulate to a steady state where existing connections are being 
finished with fast enough to handle the new requests. Saving the probes 
and maintaining idle= pool count are "just" to hide the churn from 
closed connections and lower the ramp-up delays toward peaks.




  To solve the problem, the
criteria for opening a new connection should be "not enough opened
connections" rather than "we have not probed that peer for a while".
While you can emulate the former by using small timeouts, the overheads
make such emulation prohibitively expensive.

The idle=N option is very similar to what we need, but has the wrong
focus on keeping already opened connections, rather than making sure
that N connections are ready for use at all times.


Huh? no. idle=N is focused on having N connections _open_ for immediate use.
The pool is a temporary queue of those open connections waiting to be 
re-used.



If we ignore the startup problem (no connections at all) and that pconns
in the idle pool get closed (for various reasons), then the combination
of probes and idle=N will be the right solution. Unfortunately, those
things are at the core of the problem and cannot be ignored.

BTW, I would not be surprised if some setups using idle=N would prefer
to use hot=N instead (or whatever we end up calling the proposed feature).


If hot=N is set to a few hundred (or thousand) can you be sure the local 
firewalls etc will not block the connections as the sudden SYN flood 
appears?
And how long will the Squid startup/reconfigure processes be delayed by 
perforing that many SSL handshakes in one burst?



I note that this problem is the one being resolved by HTTP/2 framing. 
Getting that working would seem to be the best long term solution. Each 
HTTP/2 peer TCP connection handles up to 2^31 simultaneous 
request/response pairs.


Amos


Re: steady peer connection pool

2013-09-21 Thread Alex Rousskov
On 09/21/2013 04:38 AM, Kinkie wrote:
> Amos already answered very fully.
> To me, this just seems a worthwile optimization.
> Background neighbor probe with dummy request and cache_peer idle=num
> seems reasonable in terms of effectiveness and implementation effort;

Unless we bombard a peer with new connections every few hundred
milliseconds, the effectiveness of the above combination (for the
problem at hand) would be close to zero. To solve the problem, the
criteria for opening a new connection should be "not enough opened
connections" rather than "we have not probed that peer for a while".
While you can emulate the former by using small timeouts, the overheads
make such emulation prohibitively expensive.

The idle=N option is very similar to what we need, but has the wrong
focus on keeping already opened connections, rather than making sure
that N connections are ready for use at all times.

If we ignore the startup problem (no connections at all) and that pconns
in the idle pool get closed (for various reasons), then the combination
of probes and idle=N will be the right solution. Unfortunately, those
things are at the core of the problem and cannot be ignored.

BTW, I would not be surprised if some setups using idle=N would prefer
to use hot=N instead (or whatever we end up calling the proposed feature).


Thank you,

Alex.



Re: steady peer connection pool

2013-09-21 Thread Alex Rousskov
On 09/20/2013 09:05 PM, Amos Jeffries wrote:

> 1) the background neighbour probe which opens a TCP connection to the
> peer then drops it should be at least saving that connection in the
> pconn pool for re-use if possible. This also brings Squid more inline
> with browsers which open multiple connections then leave some idle until
> later use happens.

This one will indeed [partially] help with the problem I have described.
The primary difference here is that these "probe" connections would have
to be done based on the number of currently available idle connections,
and not based on time. Another difference is that we may need more than
one concurrent probe to the peer.

If we ever implement the more aggressive version, we should try to
integrate it with the peer probes.


>  NP: It would be beneficial to shove out a small
> dummy request such as OPTIONS to ensure that the server is aware of it
> being a legit connection and able to log things like Squid UA instead of
> treating as part of a DoS.

Yes, I was thinking about OPTIONS as well, especially when the
proxy/server on the other side of the connection is not under the same
administrative control and cannot be told to treat these connections
nicely (not my specific use case, but I am sure that would happen sooner
or later).


The other three features you listed all sound promising and may help in
other aspects of this and many other setups.


Thank you,

Alex.




Build failed in Jenkins: 3.HEAD-x64-debian-unstable #350

2013-09-21 Thread noc
See 

Changes:

[Amos Jeffries] Bug 3914: partial: make squidclient tool build cleanly with 
-Wconversion

--
[...truncated 8158 lines...]
Testing ../../src/send-announce.h ...Ok.
Testing ../../src/Server.h ...Ok.
Testing ../../src/snmp_agent.h ...Ok.
Testing ../../src/snmp_core.h ...Ok.
Testing ../../src/SnmpRequest.h ...Ok.
Testing ../../src/SquidConfig.h ...Ok.
Testing ../../src/SquidDns.h ...Ok.
Testing ../../src/SquidIpc.h ...Ok.
Testing ../../src/SquidList.h ...Ok.
Testing ../../src/SquidMath.h ...Ok.
Testing ../../src/SquidString.h ...Ok.
Testing ../../src/SquidTime.h ...Ok.
Testing ../../src/StatCounters.h ...Ok.
Testing ../../src/stat.h ...Ok.
Testing ../../src/StatHist.h ...Ok.
Testing ../../src/stmem.h ...Ok.
Testing ../../src/StoreClient.h ...Ok.
Testing ../../src/store_digest.h ...Ok.
Testing ../../src/StoreEntryStream.h ...Ok.
Testing ../../src/StoreFileSystem.h ...Ok.
Testing ../../src/Store.h ...Ok.
Testing ../../src/StoreHashIndex.h ...Ok.
Testing ../../src/StoreIOBuffer.h ...Ok.
Testing ../../src/StoreIOState.h ...Ok.
Testing ../../src/store_key_md5.h ...Ok.
Testing ../../src/store_log.h ...Ok.
Testing ../../src/StoreMeta.h ...Ok.
Testing ../../src/StoreMetaMD5.h ...Ok.
Testing ../../src/StoreMetaObjSize.h ...Ok.
Testing ../../src/StoreMetaSTD.h ...Ok.
Testing ../../src/StoreMetaSTDLFS.h ...Ok.
Testing ../../src/StoreMetaUnpacker.h ...Ok.
Testing ../../src/StoreMetaURL.h ...Ok.
Testing ../../src/StoreMetaVary.h ...Ok.
Testing ../../src/store_rebuild.h ...Ok.
Testing ../../src/StoreSearch.h ...Ok.
Testing ../../src/StoreStats.h ...Ok.
Testing ../../src/store_swapin.h ...Ok.
Testing ../../src/StoreSwapLogData.h ...Ok.
Testing ../../src/StrList.h ...Ok.
Testing ../../src/SwapDir.h ...Ok.
Testing ../../src/swap_log_op.h ...Ok.
Testing ../../src/TimeOrTag.h ...Ok.
Testing ../../src/tools.h ...Ok.
Testing ../../src/typedefs.h ...Ok.
Testing ../../src/unlinkd.h ...Ok.
Testing ../../src/URL.h ...Ok.
Testing ../../src/URLScheme.h ...Ok.
Testing ../../src/urn.h ...Ok.
Testing ../../src/wccp2.h ...Ok.
Testing ../../src/wccp.h ...Ok.
Testing ../../src/whois.h ...Ok.
Testing ../../src/win32.h ...Ok.
Testing ../../src/WinSvc.h ...Ok.
Testing ../../src/wordlist.h ...Ok.
Testing ../../src/YesNoNone.h ...Ok.
Testing ../../src/DiskIO/DiskFile.h ...Ok.
Testing ../../src/DiskIO/DiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskIOStrategy.h ...Ok.
Testing ../../src/DiskIO/IORequestor.h ...Ok.
Testing ../../src/DiskIO/ReadRequest.h ...Ok.
Testing ../../src/DiskIO/WriteRequest.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskFile.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskIOModule.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskIOStrategy.h ...Ok.
Testing ../../src/DiskIO/AIO/aio_win32.h ...Ok.
Testing ../../src/DiskIO/AIO/async_io.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingFile.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingIOStrategy.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/diomsg.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdAction.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskDaemonDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdFile.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdIOStrategy.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/CommIO.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsDiskFile.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreads.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsIOStrategy.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoFile.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoIOStrategy.h ...Ok.
Testing ../../src/DiskIO/Mmapped/MmappedDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/Mmapped/MmappedFile.h ...Ok.
Testing ../../src/DiskIO/Mmapped/MmappedIOStrategy.h ...Ok.
PASS: testHeaders
make[7]: Entering directory 
`
make[7]: Nothing to be done for `tests/testRock.log'.
make[7]: Nothing to be done for `tests/testUfs.log'.
make[7]: Leaving directory 
`
fatal: making test-suite.log: failed to create tests/testRock.trs
fatal: making test-suite.log: failed to create tests/testRock.log
fatal: making test-suite.log: failed to create tests/testUfs.trs
fatal: making test-suite.log: failed to create tests/testUfs.log
make[6]: *** [test-suite.log] Error 1
make[6]: Leaving directory 
`
make[5]: *** [check-TESTS] Error 2
make[5]: Leaving directory 
`

Re: [PATCH] Fix leaks and check for newer libraries in Kerberos related helpers

2013-09-21 Thread Markus Moeller

Thank you for the review. I'll try to improve.

Markus

"Amos Jeffries"  wrote in message news:523dc8ff.4030...@treenet.co.nz... 


On 26/08/2013 3:17 a.m., Markus Moeller wrote:

Hi
 please find a patch for squid 3.4 trunk for:

peer_proxy_negotiate_auth.cc
negotiate_auth/kerberos
external_acl/kerberos_ldap_group

Please ignore my previous patch.

Thank you
Markus


In helpers/external_acl/kerberos_ldap_group/kerberos_ldap_group.cc
* There are some if-conditions which look like thay are wrongly being 
converted to safe_free().

 The first is:
-if (p == gdsp) {
-xfree(gdsp);
-gdsp = NULL;
-}
+safe_free(gdsp);
p = gdsp;

  these will cause the loop to exit after freeing only one entry as 
gdsp gets unconditionally free+NULL'd and p set to NULL via the 
resulting gdsp value.


* The same issue exists in the ndsp and lssp blocks below that.


In helpers/external_acl/kerberos_ldap_group/support_group.cc
* there are still a number of unnecessary safe_free() conversions done 
on local variables before return statements.



In helpers/external_acl/kerberos_ldap_group/support_krb5.cc
* the xfree(service) can stay as xfree(service) but without the 
if(service) conditional.
* The tgt_creds and creds code for krb5_free*() should look like this 
(note the {} positioning to allow optimized skipping of the z=NULL 
assignment):


+if (tgt_creds) {
+krb5_free_creds(kparam.context, tgt_creds);
+tgt_creds = NULL;
+}

++ the tgt_creds appears like it can be made local to the "if 
(!principal_name) {" code block and does not need setting to NULL after 
free.


* in the krb5_create_cache() "cleanup:" section most of the xfree() were 
correct, but had unnecessary if() conditions. Now they have unnecessary 
=NULL assignment from the safe_free().



In helpers/external_acl/kerberos_ldap_group/support_ldap.cc
* the xfree(attr_value[j]); in for-loop was correct.

I only got as far as that before running out of time today. Can you fix 
those please and go through the rest of the xfree/safe_free changes and 
make sure that the other files are similarly optimized.

As a guide:
 * xfree() is faster and should be preferred over safe_free() when 
possible.
 * but safe_free() is required if the variable or member is possibly 
going to be read later in the code without being set to a new value.


Also, FYI in C++ variables may be declared at point of first use or 
inside any {} to increase compiler checks usefulness. We are making use 
of that property extensively in new Squid code to harden local variables 
and assist with ensuring guarantees like variables with undefined 
contents not being re-used accidentally outside their intended scope. 
You may want to consider polishing up some of the long functions in 
support_*.cc to make use of the sub-scopes.


Amos




Build failed in Jenkins: 3.HEAD-amd64-ubuntu-precise #467

2013-09-21 Thread noc
See 

Changes:

[Amos Jeffries] Bug 3914: partial: make squidclient tool build cleanly with 
-Wconversion

--
[...truncated 7205 lines...]
Testing ../../src/neighbors.h ...Ok.
Testing ../../src/NeighborTypeDomainList.h ...Ok.
Testing ../../src/Notes.h ...Ok.
Testing ../../src/NullDelayId.h ...Ok.
Testing ../../src/Packer.h ...Ok.
Testing ../../src/Parsing.h ...Ok.
Testing ../../src/pconn.h ...Ok.
Testing ../../src/PeerDigest.h ...Ok.
Testing ../../src/peer_proxy_negotiate_auth.h ...Ok.
Testing ../../src/PeerSelectState.h ...Ok.
Testing ../../src/peer_sourcehash.h ...Ok.
Testing ../../src/peer_userhash.h ...Ok.
Testing ../../src/PingData.h ...Ok.
Testing ../../src/protos.h ...Ok.
Testing ../../src/redirect.h ...Ok.
Testing ../../src/refresh.h ...Ok.
Testing ../../src/RefreshPattern.h ...Ok.
Testing ../../src/RegexList.h ...Ok.
Testing ../../src/RemovalPolicy.h ...Ok.
Testing ../../src/repl_modules.h ...Ok.
Testing ../../src/RequestFlags.h ...Ok.
Testing ../../src/send-announce.h ...Ok.
Testing ../../src/Server.h ...Ok.
Testing ../../src/snmp_agent.h ...Ok.
Testing ../../src/snmp_core.h ...Ok.
Testing ../../src/SnmpRequest.h ...Ok.
Testing ../../src/SquidConfig.h ...Ok.
Testing ../../src/SquidDns.h ...Ok.
Testing ../../src/SquidIpc.h ...Ok.
Testing ../../src/SquidList.h ...Ok.
Testing ../../src/SquidMath.h ...Ok.
Testing ../../src/SquidString.h ...Ok.
Testing ../../src/SquidTime.h ...Ok.
Testing ../../src/StatCounters.h ...Ok.
Testing ../../src/stat.h ...Ok.
Testing ../../src/StatHist.h ...Ok.
Testing ../../src/stmem.h ...Ok.
Testing ../../src/StoreClient.h ...Ok.
Testing ../../src/store_digest.h ...Ok.
Testing ../../src/StoreEntryStream.h ...Ok.
Testing ../../src/StoreFileSystem.h ...Ok.
Testing ../../src/Store.h ...Ok.
Testing ../../src/StoreHashIndex.h ...Ok.
Testing ../../src/StoreIOBuffer.h ...Ok.
Testing ../../src/StoreIOState.h ...Ok.
Testing ../../src/store_key_md5.h ...Ok.
Testing ../../src/store_log.h ...Ok.
Testing ../../src/StoreMeta.h ...Ok.
Testing ../../src/StoreMetaMD5.h ...Ok.
Testing ../../src/StoreMetaObjSize.h ...Ok.
Testing ../../src/StoreMetaSTD.h ...Ok.
Testing ../../src/StoreMetaSTDLFS.h ...Ok.
Testing ../../src/StoreMetaUnpacker.h ...Ok.
Testing ../../src/StoreMetaURL.h ...Ok.
Testing ../../src/StoreMetaVary.h ...Ok.
Testing ../../src/store_rebuild.h ...Ok.
Testing ../../src/StoreSearch.h ...Ok.
Testing ../../src/StoreStats.h ...Ok.
Testing ../../src/store_swapin.h ...Ok.
Testing ../../src/StoreSwapLogData.h ...Ok.
Testing ../../src/StrList.h ...Ok.
Testing ../../src/SwapDir.h ...Ok.
Testing ../../src/swap_log_op.h ...Ok.
Testing ../../src/TimeOrTag.h ...Ok.
Testing ../../src/tools.h ...Ok.
Testing ../../src/typedefs.h ...Ok.
Testing ../../src/unlinkd.h ...Ok.
Testing ../../src/URL.h ...Ok.
Testing ../../src/URLScheme.h ...Ok.
Testing ../../src/urn.h ...Ok.
Testing ../../src/wccp2.h ...Ok.
Testing ../../src/wccp.h ...Ok.
Testing ../../src/whois.h ...Ok.
Testing ../../src/win32.h ...Ok.
Testing ../../src/WinSvc.h ...Ok.
Testing ../../src/wordlist.h ...Ok.
Testing ../../src/YesNoNone.h ...Ok.
Testing ../../src/DiskIO/DiskFile.h ...Ok.
Testing ../../src/DiskIO/DiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskIOStrategy.h ...Ok.
Testing ../../src/DiskIO/IORequestor.h ...Ok.
Testing ../../src/DiskIO/ReadRequest.h ...Ok.
Testing ../../src/DiskIO/WriteRequest.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskFile.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskIOModule.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskIOStrategy.h ...Ok.
Testing ../../src/DiskIO/AIO/aio_win32.h ...Ok.
Testing ../../src/DiskIO/AIO/async_io.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingFile.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingIOStrategy.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/diomsg.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdAction.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskDaemonDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdFile.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdIOStrategy.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/CommIO.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsDiskFile.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreads.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsIOStrategy.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoFile.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoIOStrategy.h ...Ok.
Testing ../../src/DiskIO/Mmapped/MmappedDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/Mmapped/MmappedFile.h ...Ok.
Testing ../../src/DiskIO/Mmapped/MmappedIOStrategy.h ...Ok.
..
OK (2)
PASS: tests/testACLMaxUserIP
.
OK (1)
PASS: tests/testBoilerplate
/bin/bash: line 5: 26427 Illegal instruction (core dumped) ${dir}$tst
FAI

Build failed in Jenkins: 3.HEAD-amd64-opensuse #586

2013-09-21 Thread noc
See 

Changes:

[Amos Jeffries] Bug 3914: partial: make squidclient tool build cleanly with 
-Wconversion

--
[...truncated 7172 lines...]
Testing ../../src/store_rebuild.h ...Ok.
Testing ../../src/StoreMetaURL.h ...Ok.
Testing ../../src/MemObject.h ...Ok.
Testing ../../src/SwapDir.h ...Ok.
Testing ../../src/HelperChildConfig.h ...Ok.
Testing ../../src/StoreMetaUnpacker.h ...Ok.
Testing ../../src/err_detail_type.h ...Ok.
Testing ../../src/cbdata.h ...Ok.
Testing ../../src/snmp_agent.h ...Ok.
Testing ../../src/clientStream.h ...Ok.
Testing ../../src/snmp_core.h ...Ok.
Testing ../../src/tools.h ...Ok.
Testing ../../src/URL.h ...Ok.
Testing ../../src/ClientRequestContext.h ...Ok.
Testing ../../src/wordlist.h ...Ok.
Testing ../../src/SquidString.h ...Ok.
Testing ../../src/AccessLogEntry.h ...Ok.
Testing ../../src/EventLoop.h ...Ok.
Testing ../../src/CommCalls.h ...Ok.
Testing ../../src/SquidDns.h ...Ok.
Testing ../../src/send-announce.h ...Ok.
Testing ../../src/disk.h ...Ok.
Testing ../../src/ETag.h ...Ok.
Testing ../../src/PeerSelectState.h ...Ok.
Testing ../../src/IoStats.h ...Ok.
Testing ../../src/peer_sourcehash.h ...Ok.
Testing ../../src/SquidTime.h ...Ok.
Testing ../../src/DelayPools.h ...Ok.
Testing ../../src/ChunkedCodingParser.h ...Ok.
Testing ../../src/Store.h ...Ok.
Testing ../../src/StoreMetaMD5.h ...Ok.
Testing ../../src/HttpHeaderMask.h ...Ok.
Testing ../../src/StoreIOState.h ...Ok.
Testing ../../src/StoreHashIndex.h ...Ok.
Testing ../../src/DelayConfig.h ...Ok.
Testing ../../src/SquidIpc.h ...Ok.
Testing ../../src/hier_code.h ...Ok.
Testing ../../src/fqdncache.h ...Ok.
Testing ../../src/NeighborTypeDomainList.h ...Ok.
Testing ../../src/RegexList.h ...Ok.
Testing ../../src/gopher.h ...Ok.
Testing ../../src/DelayUser.h ...Ok.
Testing ../../src/MemBlob.h ...Ok.
Testing ../../src/icp_opcode.h ...Ok.
Testing ../../src/refresh.h ...Ok.
Testing ../../src/int.h ...Ok.
Testing ../../src/DelayVector.h ...Ok.
Testing ../../src/helper.h ...Ok.
Testing ../../src/http.h ...Ok.
Testing ../../src/ExternalACLEntry.h ...Ok.
Testing ../../src/CompletionDispatcher.h ...Ok.
Testing ../../src/HttpHdrScTarget.h ...Ok.
Testing ../../src/comm_err_t.h ...Ok.
Testing ../../src/wccp2.h ...Ok.
Testing ../../src/PingData.h ...Ok.
Testing ../../src/DelayId.h ...Ok.
Testing ../../src/SquidMath.h ...Ok.
Testing ../../src/HierarchyLogEntry.h ...Ok.
Testing ../../src/HttpBody.h ...Ok.
Testing ../../src/StoreMetaSTD.h ...Ok.
Testing ../../src/fde.h ...Ok.
Testing ../../src/neighbors.h ...Ok.
Testing ../../src/StoreFileSystem.h ...Ok.
Testing ../../src/comm.h ...Ok.
Testing ../../src/store_digest.h ...Ok.
Testing ../../src/LoadableModules.h ...Ok.
Testing ../../src/URLScheme.h ...Ok.
Testing ../../src/stmem.h ...Ok.
Testing ../../src/CommRead.h ...Ok.
Testing ../../src/HttpRequest.h ...Ok.
Testing ../../src/Server.h ...Ok.
Testing ../../src/wccp.h ...Ok.
Testing ../../src/DelayTagged.h ...Ok.
Testing ../../src/swap_log_op.h ...Ok.
Testing ../../src/repl_modules.h ...Ok.
Testing ../../src/carp.h ...Ok.
Testing ../../src/DelayPool.h ...Ok.
Testing ../../src/ClientDelayConfig.h ...Ok.
Testing ../../src/Parsing.h ...Ok.
Testing ../../src/unlinkd.h ...Ok.
Testing ../../src/SnmpRequest.h ...Ok.
Testing ../../src/store_log.h ...Ok.
Testing ../../src/TimeOrTag.h ...Ok.
Testing ../../src/defines.h ...Ok.
Testing ../../src/multicast.h ...Ok.
Testing ../../src/HttpHeaderTools.h ...Ok.
Testing ../../src/RemovalPolicy.h ...Ok.
Testing ../../src/mem_node.h ...Ok.
Testing ../../src/Packer.h ...Ok.
Testing ../../src/DelaySpec.h ...Ok.
Testing ../../src/Notes.h ...Ok.
Testing ../../src/event.h ...Ok.
Testing ../../src/StoreSwapLogData.h ...Ok.
Testing ../../src/client_side_request.h ...Ok.
Testing ../../src/HttpMsg.h ...Ok.
Testing ../../src/mime_header.h ...Ok.
Testing ../../src/DnsLookupDetails.h ...Ok.
Testing ../../src/peer_userhash.h ...Ok.
Testing ../../src/ftp.h ...Ok.
Testing ../../src/FileMap.h ...Ok.
Testing ../../src/CpuAffinityMap.h ...Ok.
Testing ../../src/HttpRequestMethod.h ...Ok.
Testing ../../src/SquidConfig.h ...Ok.
Testing ../../src/StoreMetaVary.h ...Ok.
Testing ../../src/Generic.h ...Ok.
Testing ../../src/HttpHeaderRange.h ...Ok.
Testing ../../src/HttpHdrSc.h ...Ok.
Testing ../../src/SquidList.h ...Ok.
Testing ../../src/StoreMetaObjSize.h ...Ok.
Testing ../../src/NullDelayId.h ...Ok.
Testing ../../src/DelayBucket.h ...Ok.
Testing ../../src/fd.h ...Ok.
Testing ../../src/StoreClient.h ...Ok.
Testing ../../src/ExternalACL.h ...Ok.
Testing ../../src/HttpParser.h ...Ok.
Testing ../../src/MasterXaction.h ...Ok.
Testing ../../src/whois.h ...Ok.
Testing ../../src/YesNoNone.h ...Ok.
Testing ../../src/DiskIO/DiskFile.h ...Ok.
Testing ../../src/DiskIO/ReadRequest.h ...Ok.
Testing ../../src/DiskIO/DiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskIOStrategy.h ...Ok.
Testing ../../src/DiskIO/WriteRequest.h ...Ok.
Testing ../../src/Di

Build failed in Jenkins: 3.HEAD-x64-debian-unstable #349

2013-09-21 Thread noc
See 

--
[...truncated 8156 lines...]
Testing ../../src/send-announce.h ...Ok.
Testing ../../src/Server.h ...Ok.
Testing ../../src/snmp_agent.h ...Ok.
Testing ../../src/snmp_core.h ...Ok.
Testing ../../src/SnmpRequest.h ...Ok.
Testing ../../src/SquidConfig.h ...Ok.
Testing ../../src/SquidDns.h ...Ok.
Testing ../../src/SquidIpc.h ...Ok.
Testing ../../src/SquidList.h ...Ok.
Testing ../../src/SquidMath.h ...Ok.
Testing ../../src/SquidString.h ...Ok.
Testing ../../src/SquidTime.h ...Ok.
Testing ../../src/StatCounters.h ...Ok.
Testing ../../src/stat.h ...Ok.
Testing ../../src/StatHist.h ...Ok.
Testing ../../src/stmem.h ...Ok.
Testing ../../src/StoreClient.h ...Ok.
Testing ../../src/store_digest.h ...Ok.
Testing ../../src/StoreEntryStream.h ...Ok.
Testing ../../src/StoreFileSystem.h ...Ok.
Testing ../../src/Store.h ...Ok.
Testing ../../src/StoreHashIndex.h ...Ok.
Testing ../../src/StoreIOBuffer.h ...Ok.
Testing ../../src/StoreIOState.h ...Ok.
Testing ../../src/store_key_md5.h ...Ok.
Testing ../../src/store_log.h ...Ok.
Testing ../../src/StoreMeta.h ...Ok.
Testing ../../src/StoreMetaMD5.h ...Ok.
Testing ../../src/StoreMetaObjSize.h ...Ok.
Testing ../../src/StoreMetaSTD.h ...Ok.
Testing ../../src/StoreMetaSTDLFS.h ...Ok.
Testing ../../src/StoreMetaUnpacker.h ...Ok.
Testing ../../src/StoreMetaURL.h ...Ok.
Testing ../../src/StoreMetaVary.h ...Ok.
Testing ../../src/store_rebuild.h ...Ok.
Testing ../../src/StoreSearch.h ...Ok.
Testing ../../src/StoreStats.h ...Ok.
Testing ../../src/store_swapin.h ...Ok.
Testing ../../src/StoreSwapLogData.h ...Ok.
Testing ../../src/StrList.h ...Ok.
Testing ../../src/SwapDir.h ...Ok.
Testing ../../src/swap_log_op.h ...Ok.
Testing ../../src/TimeOrTag.h ...Ok.
Testing ../../src/tools.h ...Ok.
Testing ../../src/typedefs.h ...Ok.
Testing ../../src/unlinkd.h ...Ok.
Testing ../../src/URL.h ...Ok.
Testing ../../src/URLScheme.h ...Ok.
Testing ../../src/urn.h ...Ok.
Testing ../../src/wccp2.h ...Ok.
Testing ../../src/wccp.h ...Ok.
Testing ../../src/whois.h ...Ok.
Testing ../../src/win32.h ...Ok.
Testing ../../src/WinSvc.h ...Ok.
Testing ../../src/wordlist.h ...Ok.
Testing ../../src/YesNoNone.h ...Ok.
Testing ../../src/DiskIO/DiskFile.h ...Ok.
Testing ../../src/DiskIO/DiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskIOStrategy.h ...Ok.
Testing ../../src/DiskIO/IORequestor.h ...Ok.
Testing ../../src/DiskIO/ReadRequest.h ...Ok.
Testing ../../src/DiskIO/WriteRequest.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskFile.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskIOModule.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskIOStrategy.h ...Ok.
Testing ../../src/DiskIO/AIO/aio_win32.h ...Ok.
Testing ../../src/DiskIO/AIO/async_io.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingFile.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingIOStrategy.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/diomsg.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdAction.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskDaemonDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdFile.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdIOStrategy.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/CommIO.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsDiskFile.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreads.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsIOStrategy.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoFile.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoIOStrategy.h ...Ok.
Testing ../../src/DiskIO/Mmapped/MmappedDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/Mmapped/MmappedFile.h ...Ok.
Testing ../../src/DiskIO/Mmapped/MmappedIOStrategy.h ...Ok.
PASS: testHeaders
make[7]: Entering directory 
`
make[7]: Nothing to be done for `tests/testRock.log'.
make[7]: Nothing to be done for `tests/testUfs.log'.
make[7]: Leaving directory 
`
fatal: making test-suite.log: failed to create tests/testRock.trs
fatal: making test-suite.log: failed to create tests/testRock.log
fatal: making test-suite.log: failed to create tests/testUfs.trs
fatal: making test-suite.log: failed to create tests/testUfs.log
make[6]: *** [test-suite.log] Error 1
make[6]: Leaving directory 
`
make[5]: *** [check-TESTS] Error 2
make[5]: Leaving directory 
`
make[4]: *** [check-am] Error 2
make[4]: Leaving dire

Re: [PATCH] Fix leaks and check for newer libraries in Kerberos related helpers

2013-09-21 Thread Amos Jeffries

On 26/08/2013 3:17 a.m., Markus Moeller wrote:

Hi
 please find a patch for squid 3.4 trunk for:

peer_proxy_negotiate_auth.cc
negotiate_auth/kerberos
external_acl/kerberos_ldap_group

Please ignore my previous patch.

Thank you
Markus


In helpers/external_acl/kerberos_ldap_group/kerberos_ldap_group.cc
* There are some if-conditions which look like thay are wrongly being 
converted to safe_free().

 The first is:
-if (p == gdsp) {
-xfree(gdsp);
-gdsp = NULL;
-}
+safe_free(gdsp);
p = gdsp;

  these will cause the loop to exit after freeing only one entry as 
gdsp gets unconditionally free+NULL'd and p set to NULL via the 
resulting gdsp value.


* The same issue exists in the ndsp and lssp blocks below that.


In helpers/external_acl/kerberos_ldap_group/support_group.cc
* there are still a number of unnecessary safe_free() conversions done 
on local variables before return statements.



In helpers/external_acl/kerberos_ldap_group/support_krb5.cc
* the xfree(service) can stay as xfree(service) but without the 
if(service) conditional.
* The tgt_creds and creds code for krb5_free*() should look like this 
(note the {} positioning to allow optimized skipping of the z=NULL 
assignment):


+if (tgt_creds) {
+krb5_free_creds(kparam.context, tgt_creds);
+tgt_creds = NULL;
+}

++ the tgt_creds appears like it can be made local to the "if 
(!principal_name) {" code block and does not need setting to NULL after 
free.


* in the krb5_create_cache() "cleanup:" section most of the xfree() were 
correct, but had unnecessary if() conditions. Now they have unnecessary 
=NULL assignment from the safe_free().



In helpers/external_acl/kerberos_ldap_group/support_ldap.cc
* the xfree(attr_value[j]); in for-loop was correct.

I only got as far as that before running out of time today. Can you fix 
those please and go through the rest of the xfree/safe_free changes and 
make sure that the other files are similarly optimized.

As a guide:
 * xfree() is faster and should be preferred over safe_free() when 
possible.
 * but safe_free() is required if the variable or member is possibly 
going to be read later in the code without being set to a new value.


Also, FYI in C++ variables may be declared at point of first use or 
inside any {} to increase compiler checks usefulness. We are making use 
of that property extensively in new Squid code to harden local variables 
and assist with ensuring guarantees like variables with undefined 
contents not being re-used accidentally outside their intended scope. 
You may want to consider polishing up some of the long functions in 
support_*.cc to make use of the sub-scopes.


Amos



Build failed in Jenkins: 3.HEAD-amd64-ubuntu-precise #466

2013-09-21 Thread noc
See 

Changes:

[Amos Jeffries] Bug 3923: cbdata and undefined behavior due to dynamic runtime 
enumeration

--
[...truncated 7205 lines...]
Testing ../../src/neighbors.h ...Ok.
Testing ../../src/NeighborTypeDomainList.h ...Ok.
Testing ../../src/Notes.h ...Ok.
Testing ../../src/NullDelayId.h ...Ok.
Testing ../../src/Packer.h ...Ok.
Testing ../../src/Parsing.h ...Ok.
Testing ../../src/pconn.h ...Ok.
Testing ../../src/PeerDigest.h ...Ok.
Testing ../../src/peer_proxy_negotiate_auth.h ...Ok.
Testing ../../src/PeerSelectState.h ...Ok.
Testing ../../src/peer_sourcehash.h ...Ok.
Testing ../../src/peer_userhash.h ...Ok.
Testing ../../src/PingData.h ...Ok.
Testing ../../src/protos.h ...Ok.
Testing ../../src/redirect.h ...Ok.
Testing ../../src/refresh.h ...Ok.
Testing ../../src/RefreshPattern.h ...Ok.
Testing ../../src/RegexList.h ...Ok.
Testing ../../src/RemovalPolicy.h ...Ok.
Testing ../../src/repl_modules.h ...Ok.
Testing ../../src/RequestFlags.h ...Ok.
Testing ../../src/send-announce.h ...Ok.
Testing ../../src/Server.h ...Ok.
Testing ../../src/snmp_agent.h ...Ok.
Testing ../../src/snmp_core.h ...Ok.
Testing ../../src/SnmpRequest.h ...Ok.
Testing ../../src/SquidConfig.h ...Ok.
Testing ../../src/SquidDns.h ...Ok.
Testing ../../src/SquidIpc.h ...Ok.
Testing ../../src/SquidList.h ...Ok.
Testing ../../src/SquidMath.h ...Ok.
Testing ../../src/SquidString.h ...Ok.
Testing ../../src/SquidTime.h ...Ok.
Testing ../../src/StatCounters.h ...Ok.
Testing ../../src/stat.h ...Ok.
Testing ../../src/StatHist.h ...Ok.
Testing ../../src/stmem.h ...Ok.
Testing ../../src/StoreClient.h ...Ok.
Testing ../../src/store_digest.h ...Ok.
Testing ../../src/StoreEntryStream.h ...Ok.
Testing ../../src/StoreFileSystem.h ...Ok.
Testing ../../src/Store.h ...Ok.
Testing ../../src/StoreHashIndex.h ...Ok.
Testing ../../src/StoreIOBuffer.h ...Ok.
Testing ../../src/StoreIOState.h ...Ok.
Testing ../../src/store_key_md5.h ...Ok.
Testing ../../src/store_log.h ...Ok.
Testing ../../src/StoreMeta.h ...Ok.
Testing ../../src/StoreMetaMD5.h ...Ok.
Testing ../../src/StoreMetaObjSize.h ...Ok.
Testing ../../src/StoreMetaSTD.h ...Ok.
Testing ../../src/StoreMetaSTDLFS.h ...Ok.
Testing ../../src/StoreMetaUnpacker.h ...Ok.
Testing ../../src/StoreMetaURL.h ...Ok.
Testing ../../src/StoreMetaVary.h ...Ok.
Testing ../../src/store_rebuild.h ...Ok.
Testing ../../src/StoreSearch.h ...Ok.
Testing ../../src/StoreStats.h ...Ok.
Testing ../../src/store_swapin.h ...Ok.
Testing ../../src/StoreSwapLogData.h ...Ok.
Testing ../../src/StrList.h ...Ok.
Testing ../../src/SwapDir.h ...Ok.
Testing ../../src/swap_log_op.h ...Ok.
Testing ../../src/TimeOrTag.h ...Ok.
Testing ../../src/tools.h ...Ok.
Testing ../../src/typedefs.h ...Ok.
Testing ../../src/unlinkd.h ...Ok.
Testing ../../src/URL.h ...Ok.
Testing ../../src/URLScheme.h ...Ok.
Testing ../../src/urn.h ...Ok.
Testing ../../src/wccp2.h ...Ok.
Testing ../../src/wccp.h ...Ok.
Testing ../../src/whois.h ...Ok.
Testing ../../src/win32.h ...Ok.
Testing ../../src/WinSvc.h ...Ok.
Testing ../../src/wordlist.h ...Ok.
Testing ../../src/YesNoNone.h ...Ok.
Testing ../../src/DiskIO/DiskFile.h ...Ok.
Testing ../../src/DiskIO/DiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskIOStrategy.h ...Ok.
Testing ../../src/DiskIO/IORequestor.h ...Ok.
Testing ../../src/DiskIO/ReadRequest.h ...Ok.
Testing ../../src/DiskIO/WriteRequest.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskFile.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskIOModule.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskIOStrategy.h ...Ok.
Testing ../../src/DiskIO/AIO/aio_win32.h ...Ok.
Testing ../../src/DiskIO/AIO/async_io.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingFile.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingIOStrategy.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/diomsg.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdAction.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskDaemonDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdFile.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdIOStrategy.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/CommIO.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsDiskFile.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreads.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsIOStrategy.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoFile.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoIOStrategy.h ...Ok.
Testing ../../src/DiskIO/Mmapped/MmappedDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/Mmapped/MmappedFile.h ...Ok.
Testing ../../src/DiskIO/Mmapped/MmappedIOStrategy.h ...Ok.
..
OK (2)
PASS: tests/testACLMaxUserIP
.
OK (1)
PASS: tests/testBoilerplate
/bin/bash: line 5:  4854 Illegal instruction (core dumped) ${dir}$tst
F

Build failed in Jenkins: 3.HEAD-amd64-opensuse #585

2013-09-21 Thread noc
See 

Changes:

[Amos Jeffries] Bug 3923: cbdata and undefined behavior due to dynamic runtime 
enumeration

--
[...truncated 7170 lines...]
Testing ../../src/CpuAffinity.h ...Ok.
Testing ../../src/store_rebuild.h ...Ok.
Testing ../../src/StoreMetaURL.h ...Ok.
Testing ../../src/MemObject.h ...Ok.
Testing ../../src/SwapDir.h ...Ok.
Testing ../../src/HelperChildConfig.h ...Ok.
Testing ../../src/StoreMetaUnpacker.h ...Ok.
Testing ../../src/err_detail_type.h ...Ok.
Testing ../../src/cbdata.h ...Ok.
Testing ../../src/snmp_agent.h ...Ok.
Testing ../../src/clientStream.h ...Ok.
Testing ../../src/snmp_core.h ...Ok.
Testing ../../src/tools.h ...Ok.
Testing ../../src/URL.h ...Ok.
Testing ../../src/ClientRequestContext.h ...Ok.
Testing ../../src/wordlist.h ...Ok.
Testing ../../src/SquidString.h ...Ok.
Testing ../../src/AccessLogEntry.h ...Ok.
Testing ../../src/EventLoop.h ...Ok.
Testing ../../src/CommCalls.h ...Ok.
Testing ../../src/SquidDns.h ...Ok.
Testing ../../src/send-announce.h ...Ok.
Testing ../../src/disk.h ...Ok.
Testing ../../src/ETag.h ...Ok.
Testing ../../src/PeerSelectState.h ...Ok.
Testing ../../src/IoStats.h ...Ok.
Testing ../../src/peer_sourcehash.h ...Ok.
Testing ../../src/SquidTime.h ...Ok.
Testing ../../src/DelayPools.h ...Ok.
Testing ../../src/ChunkedCodingParser.h ...Ok.
Testing ../../src/Store.h ...Ok.
Testing ../../src/StoreMetaMD5.h ...Ok.
Testing ../../src/HttpHeaderMask.h ...Ok.
Testing ../../src/StoreIOState.h ...Ok.
Testing ../../src/StoreHashIndex.h ...Ok.
Testing ../../src/DelayConfig.h ...Ok.
Testing ../../src/SquidIpc.h ...Ok.
Testing ../../src/hier_code.h ...Ok.
Testing ../../src/fqdncache.h ...Ok.
Testing ../../src/NeighborTypeDomainList.h ...Ok.
Testing ../../src/RegexList.h ...Ok.
Testing ../../src/gopher.h ...Ok.
Testing ../../src/DelayUser.h ...Ok.
Testing ../../src/MemBlob.h ...Ok.
Testing ../../src/icp_opcode.h ...Ok.
Testing ../../src/refresh.h ...Ok.
Testing ../../src/int.h ...Ok.
Testing ../../src/DelayVector.h ...Ok.
Testing ../../src/helper.h ...Ok.
Testing ../../src/http.h ...Ok.
Testing ../../src/ExternalACLEntry.h ...Ok.
Testing ../../src/CompletionDispatcher.h ...Ok.
Testing ../../src/HttpHdrScTarget.h ...Ok.
Testing ../../src/comm_err_t.h ...Ok.
Testing ../../src/wccp2.h ...Ok.
Testing ../../src/PingData.h ...Ok.
Testing ../../src/DelayId.h ...Ok.
Testing ../../src/SquidMath.h ...Ok.
Testing ../../src/HierarchyLogEntry.h ...Ok.
Testing ../../src/HttpBody.h ...Ok.
Testing ../../src/StoreMetaSTD.h ...Ok.
Testing ../../src/fde.h ...Ok.
Testing ../../src/neighbors.h ...Ok.
Testing ../../src/StoreFileSystem.h ...Ok.
Testing ../../src/comm.h ...Ok.
Testing ../../src/store_digest.h ...Ok.
Testing ../../src/LoadableModules.h ...Ok.
Testing ../../src/URLScheme.h ...Ok.
Testing ../../src/stmem.h ...Ok.
Testing ../../src/CommRead.h ...Ok.
Testing ../../src/HttpRequest.h ...Ok.
Testing ../../src/Server.h ...Ok.
Testing ../../src/wccp.h ...Ok.
Testing ../../src/DelayTagged.h ...Ok.
Testing ../../src/swap_log_op.h ...Ok.
Testing ../../src/repl_modules.h ...Ok.
Testing ../../src/carp.h ...Ok.
Testing ../../src/DelayPool.h ...Ok.
Testing ../../src/ClientDelayConfig.h ...Ok.
Testing ../../src/Parsing.h ...Ok.
Testing ../../src/unlinkd.h ...Ok.
Testing ../../src/SnmpRequest.h ...Ok.
Testing ../../src/store_log.h ...Ok.
Testing ../../src/TimeOrTag.h ...Ok.
Testing ../../src/defines.h ...Ok.
Testing ../../src/multicast.h ...Ok.
Testing ../../src/HttpHeaderTools.h ...Ok.
Testing ../../src/RemovalPolicy.h ...Ok.
Testing ../../src/mem_node.h ...Ok.
Testing ../../src/Packer.h ...Ok.
Testing ../../src/DelaySpec.h ...Ok.
Testing ../../src/Notes.h ...Ok.
Testing ../../src/event.h ...Ok.
Testing ../../src/StoreSwapLogData.h ...Ok.
Testing ../../src/client_side_request.h ...Ok.
Testing ../../src/HttpMsg.h ...Ok.
Testing ../../src/mime_header.h ...Ok.
Testing ../../src/DnsLookupDetails.h ...Ok.
Testing ../../src/peer_userhash.h ...Ok.
Testing ../../src/ftp.h ...Ok.
Testing ../../src/FileMap.h ...Ok.
Testing ../../src/CpuAffinityMap.h ...Ok.
Testing ../../src/HttpRequestMethod.h ...Ok.
Testing ../../src/SquidConfig.h ...Ok.
Testing ../../src/StoreMetaVary.h ...Ok.
Testing ../../src/Generic.h ...Ok.
Testing ../../src/HttpHeaderRange.h ...Ok.
Testing ../../src/HttpHdrSc.h ...Ok.
Testing ../../src/SquidList.h ...Ok.
Testing ../../src/StoreMetaObjSize.h ...Ok.
Testing ../../src/NullDelayId.h ...Ok.
Testing ../../src/DelayBucket.h ...Ok.
Testing ../../src/fd.h ...Ok.
Testing ../../src/StoreClient.h ...Ok.
Testing ../../src/ExternalACL.h ...Ok.
Testing ../../src/HttpParser.h ...Ok.
Testing ../../src/MasterXaction.h ...Ok.
Testing ../../src/whois.h ...Ok.
Testing ../../src/YesNoNone.h ...Ok.
Testing ../../src/DiskIO/DiskFile.h ...Ok.
Testing ../../src/DiskIO/ReadRequest.h ...Ok.
Testing ../../src/DiskIO/DiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskIOStrategy.h ...Ok.
Testing ../../src/DiskIO/W

Build failed in Jenkins: 3.HEAD-x64-debian-unstable #348

2013-09-21 Thread noc
See 

Changes:

[Amos Jeffries] Bug 3923: cbdata and undefined behavior due to dynamic runtime 
enumeration

[Amos Jeffries] Bug 3918: Squid 3.3.9 Self Test Failures on Mac OS X 10.8

[Amos Jeffries] Bug 3929: request_header_add not working for tunnel requests

[Amos Jeffries] Fix typo in rev.13004

[Amos Jeffries] Polish: report bytes received when bad content-length detected 
by quick-abort

[Amos Jeffries] Fix pinning hierarchy log information

[Amos Jeffries] Prep for 3.3.9

--
[...truncated 8166 lines...]
Testing ../../src/send-announce.h ...Ok.
Testing ../../src/Server.h ...Ok.
Testing ../../src/snmp_agent.h ...Ok.
Testing ../../src/snmp_core.h ...Ok.
Testing ../../src/SnmpRequest.h ...Ok.
Testing ../../src/SquidConfig.h ...Ok.
Testing ../../src/SquidDns.h ...Ok.
Testing ../../src/SquidIpc.h ...Ok.
Testing ../../src/SquidList.h ...Ok.
Testing ../../src/SquidMath.h ...Ok.
Testing ../../src/SquidString.h ...Ok.
Testing ../../src/SquidTime.h ...Ok.
Testing ../../src/StatCounters.h ...Ok.
Testing ../../src/stat.h ...Ok.
Testing ../../src/StatHist.h ...Ok.
Testing ../../src/stmem.h ...Ok.
Testing ../../src/StoreClient.h ...Ok.
Testing ../../src/store_digest.h ...Ok.
Testing ../../src/StoreEntryStream.h ...Ok.
Testing ../../src/StoreFileSystem.h ...Ok.
Testing ../../src/Store.h ...Ok.
Testing ../../src/StoreHashIndex.h ...Ok.
Testing ../../src/StoreIOBuffer.h ...Ok.
Testing ../../src/StoreIOState.h ...Ok.
Testing ../../src/store_key_md5.h ...Ok.
Testing ../../src/store_log.h ...Ok.
Testing ../../src/StoreMeta.h ...Ok.
Testing ../../src/StoreMetaMD5.h ...Ok.
Testing ../../src/StoreMetaObjSize.h ...Ok.
Testing ../../src/StoreMetaSTD.h ...Ok.
Testing ../../src/StoreMetaSTDLFS.h ...Ok.
Testing ../../src/StoreMetaUnpacker.h ...Ok.
Testing ../../src/StoreMetaURL.h ...Ok.
Testing ../../src/StoreMetaVary.h ...Ok.
Testing ../../src/store_rebuild.h ...Ok.
Testing ../../src/StoreSearch.h ...Ok.
Testing ../../src/StoreStats.h ...Ok.
Testing ../../src/store_swapin.h ...Ok.
Testing ../../src/StoreSwapLogData.h ...Ok.
Testing ../../src/StrList.h ...Ok.
Testing ../../src/SwapDir.h ...Ok.
Testing ../../src/swap_log_op.h ...Ok.
Testing ../../src/TimeOrTag.h ...Ok.
Testing ../../src/tools.h ...Ok.
Testing ../../src/typedefs.h ...Ok.
Testing ../../src/unlinkd.h ...Ok.
Testing ../../src/URL.h ...Ok.
Testing ../../src/URLScheme.h ...Ok.
Testing ../../src/urn.h ...Ok.
Testing ../../src/wccp2.h ...Ok.
Testing ../../src/wccp.h ...Ok.
Testing ../../src/whois.h ...Ok.
Testing ../../src/win32.h ...Ok.
Testing ../../src/WinSvc.h ...Ok.
Testing ../../src/wordlist.h ...Ok.
Testing ../../src/YesNoNone.h ...Ok.
Testing ../../src/DiskIO/DiskFile.h ...Ok.
Testing ../../src/DiskIO/DiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskIOStrategy.h ...Ok.
Testing ../../src/DiskIO/IORequestor.h ...Ok.
Testing ../../src/DiskIO/ReadRequest.h ...Ok.
Testing ../../src/DiskIO/WriteRequest.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskFile.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskIOModule.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskIOStrategy.h ...Ok.
Testing ../../src/DiskIO/AIO/aio_win32.h ...Ok.
Testing ../../src/DiskIO/AIO/async_io.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingFile.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingIOStrategy.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/diomsg.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdAction.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskDaemonDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdFile.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdIOStrategy.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/CommIO.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsDiskFile.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreads.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsIOStrategy.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoFile.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoIOStrategy.h ...Ok.
Testing ../../src/DiskIO/Mmapped/MmappedDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/Mmapped/MmappedFile.h ...Ok.
Testing ../../src/DiskIO/Mmapped/MmappedIOStrategy.h ...Ok.
PASS: testHeaders
make[7]: Entering directory 
`
make[7]: Nothing to be done for `tests/testRock.log'.
make[7]: Nothing to be done for `tests/testUfs.log'.
make[7]: Leaving directory 
`
fatal: making test-suite.log: failed to create tests/testRock.trs
fatal: making test-suite.log: failed to create tests/testRock.log
fatal: making test-suite.log: failed to create tests/te

Jenkins build is back to normal : 3.HEAD-coadvisor #56

2013-09-21 Thread noc
See 



Build failed in Jenkins: 3.HEAD-amd64-ubuntu-precise #465

2013-09-21 Thread noc
See 

Changes:

[Amos Jeffries] Bug 3918: Squid 3.3.9 Self Test Failures on Mac OS X 10.8

[Amos Jeffries] Bug 3929: request_header_add not working for tunnel requests

[Amos Jeffries] Fix typo in rev.13004

[Amos Jeffries] Polish: report bytes received when bad content-length detected 
by quick-abort

[Amos Jeffries] Fix pinning hierarchy log information

[Amos Jeffries] Prep for 3.3.9

--
[...truncated 7212 lines...]
Testing ../../src/neighbors.h ...Ok.
Testing ../../src/NeighborTypeDomainList.h ...Ok.
Testing ../../src/Notes.h ...Ok.
Testing ../../src/NullDelayId.h ...Ok.
Testing ../../src/Packer.h ...Ok.
Testing ../../src/Parsing.h ...Ok.
Testing ../../src/pconn.h ...Ok.
Testing ../../src/PeerDigest.h ...Ok.
Testing ../../src/peer_proxy_negotiate_auth.h ...Ok.
Testing ../../src/PeerSelectState.h ...Ok.
Testing ../../src/peer_sourcehash.h ...Ok.
Testing ../../src/peer_userhash.h ...Ok.
Testing ../../src/PingData.h ...Ok.
Testing ../../src/protos.h ...Ok.
Testing ../../src/redirect.h ...Ok.
Testing ../../src/refresh.h ...Ok.
Testing ../../src/RefreshPattern.h ...Ok.
Testing ../../src/RegexList.h ...Ok.
Testing ../../src/RemovalPolicy.h ...Ok.
Testing ../../src/repl_modules.h ...Ok.
Testing ../../src/RequestFlags.h ...Ok.
Testing ../../src/send-announce.h ...Ok.
Testing ../../src/Server.h ...Ok.
Testing ../../src/snmp_agent.h ...Ok.
Testing ../../src/snmp_core.h ...Ok.
Testing ../../src/SnmpRequest.h ...Ok.
Testing ../../src/SquidConfig.h ...Ok.
Testing ../../src/SquidDns.h ...Ok.
Testing ../../src/SquidIpc.h ...Ok.
Testing ../../src/SquidList.h ...Ok.
Testing ../../src/SquidMath.h ...Ok.
Testing ../../src/SquidString.h ...Ok.
Testing ../../src/SquidTime.h ...Ok.
Testing ../../src/StatCounters.h ...Ok.
Testing ../../src/stat.h ...Ok.
Testing ../../src/StatHist.h ...Ok.
Testing ../../src/stmem.h ...Ok.
Testing ../../src/StoreClient.h ...Ok.
Testing ../../src/store_digest.h ...Ok.
Testing ../../src/StoreEntryStream.h ...Ok.
Testing ../../src/StoreFileSystem.h ...Ok.
Testing ../../src/Store.h ...Ok.
Testing ../../src/StoreHashIndex.h ...Ok.
Testing ../../src/StoreIOBuffer.h ...Ok.
Testing ../../src/StoreIOState.h ...Ok.
Testing ../../src/store_key_md5.h ...Ok.
Testing ../../src/store_log.h ...Ok.
Testing ../../src/StoreMeta.h ...Ok.
Testing ../../src/StoreMetaMD5.h ...Ok.
Testing ../../src/StoreMetaObjSize.h ...Ok.
Testing ../../src/StoreMetaSTD.h ...Ok.
Testing ../../src/StoreMetaSTDLFS.h ...Ok.
Testing ../../src/StoreMetaUnpacker.h ...Ok.
Testing ../../src/StoreMetaURL.h ...Ok.
Testing ../../src/StoreMetaVary.h ...Ok.
Testing ../../src/store_rebuild.h ...Ok.
Testing ../../src/StoreSearch.h ...Ok.
Testing ../../src/StoreStats.h ...Ok.
Testing ../../src/store_swapin.h ...Ok.
Testing ../../src/StoreSwapLogData.h ...Ok.
Testing ../../src/StrList.h ...Ok.
Testing ../../src/SwapDir.h ...Ok.
Testing ../../src/swap_log_op.h ...Ok.
Testing ../../src/TimeOrTag.h ...Ok.
Testing ../../src/tools.h ...Ok.
Testing ../../src/typedefs.h ...Ok.
Testing ../../src/unlinkd.h ...Ok.
Testing ../../src/URL.h ...Ok.
Testing ../../src/URLScheme.h ...Ok.
Testing ../../src/urn.h ...Ok.
Testing ../../src/wccp2.h ...Ok.
Testing ../../src/wccp.h ...Ok.
Testing ../../src/whois.h ...Ok.
Testing ../../src/win32.h ...Ok.
Testing ../../src/WinSvc.h ...Ok.
Testing ../../src/wordlist.h ...Ok.
Testing ../../src/YesNoNone.h ...Ok.
Testing ../../src/DiskIO/DiskFile.h ...Ok.
Testing ../../src/DiskIO/DiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskIOStrategy.h ...Ok.
Testing ../../src/DiskIO/IORequestor.h ...Ok.
Testing ../../src/DiskIO/ReadRequest.h ...Ok.
Testing ../../src/DiskIO/WriteRequest.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskFile.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskIOModule.h ...Ok.
Testing ../../src/DiskIO/AIO/AIODiskIOStrategy.h ...Ok.
Testing ../../src/DiskIO/AIO/aio_win32.h ...Ok.
Testing ../../src/DiskIO/AIO/async_io.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingFile.h ...Ok.
Testing ../../src/DiskIO/Blocking/BlockingIOStrategy.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/diomsg.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdAction.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskDaemonDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdFile.h ...Ok.
Testing ../../src/DiskIO/DiskDaemon/DiskdIOStrategy.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/CommIO.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsDiskFile.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreads.h ...Ok.
Testing ../../src/DiskIO/DiskThreads/DiskThreadsIOStrategy.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoDiskIOModule.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoFile.h ...Ok.
Testing ../../src/DiskIO/IpcIo/IpcIoIOStrategy.h ...Ok.
Testing ../../src/DiskIO/Mmapped/MmappedDiskI

Build failed in Jenkins: 3.HEAD-amd64-opensuse #584

2013-09-21 Thread noc
See 

Changes:

[Amos Jeffries] Bug 3918: Squid 3.3.9 Self Test Failures on Mac OS X 10.8

[Amos Jeffries] Bug 3929: request_header_add not working for tunnel requests

[Amos Jeffries] Fix typo in rev.13004

[Amos Jeffries] Polish: report bytes received when bad content-length detected 
by quick-abort

[Amos Jeffries] Fix pinning hierarchy log information

[Amos Jeffries] Prep for 3.3.9

--
[...truncated 7179 lines...]
Testing ../../src/store_rebuild.h ...Ok.
Testing ../../src/StoreMetaURL.h ...Ok.
Testing ../../src/MemObject.h ...Ok.
Testing ../../src/SwapDir.h ...Ok.
Testing ../../src/HelperChildConfig.h ...Ok.
Testing ../../src/StoreMetaUnpacker.h ...Ok.
Testing ../../src/err_detail_type.h ...Ok.
Testing ../../src/cbdata.h ...Ok.
Testing ../../src/snmp_agent.h ...Ok.
Testing ../../src/clientStream.h ...Ok.
Testing ../../src/snmp_core.h ...Ok.
Testing ../../src/tools.h ...Ok.
Testing ../../src/URL.h ...Ok.
Testing ../../src/ClientRequestContext.h ...Ok.
Testing ../../src/wordlist.h ...Ok.
Testing ../../src/SquidString.h ...Ok.
Testing ../../src/AccessLogEntry.h ...Ok.
Testing ../../src/EventLoop.h ...Ok.
Testing ../../src/CommCalls.h ...Ok.
Testing ../../src/SquidDns.h ...Ok.
Testing ../../src/send-announce.h ...Ok.
Testing ../../src/disk.h ...Ok.
Testing ../../src/ETag.h ...Ok.
Testing ../../src/PeerSelectState.h ...Ok.
Testing ../../src/IoStats.h ...Ok.
Testing ../../src/peer_sourcehash.h ...Ok.
Testing ../../src/SquidTime.h ...Ok.
Testing ../../src/DelayPools.h ...Ok.
Testing ../../src/ChunkedCodingParser.h ...Ok.
Testing ../../src/Store.h ...Ok.
Testing ../../src/StoreMetaMD5.h ...Ok.
Testing ../../src/HttpHeaderMask.h ...Ok.
Testing ../../src/StoreIOState.h ...Ok.
Testing ../../src/StoreHashIndex.h ...Ok.
Testing ../../src/DelayConfig.h ...Ok.
Testing ../../src/SquidIpc.h ...Ok.
Testing ../../src/hier_code.h ...Ok.
Testing ../../src/fqdncache.h ...Ok.
Testing ../../src/NeighborTypeDomainList.h ...Ok.
Testing ../../src/RegexList.h ...Ok.
Testing ../../src/gopher.h ...Ok.
Testing ../../src/DelayUser.h ...Ok.
Testing ../../src/MemBlob.h ...Ok.
Testing ../../src/icp_opcode.h ...Ok.
Testing ../../src/refresh.h ...Ok.
Testing ../../src/int.h ...Ok.
Testing ../../src/DelayVector.h ...Ok.
Testing ../../src/helper.h ...Ok.
Testing ../../src/http.h ...Ok.
Testing ../../src/ExternalACLEntry.h ...Ok.
Testing ../../src/CompletionDispatcher.h ...Ok.
Testing ../../src/HttpHdrScTarget.h ...Ok.
Testing ../../src/comm_err_t.h ...Ok.
Testing ../../src/wccp2.h ...Ok.
Testing ../../src/PingData.h ...Ok.
Testing ../../src/DelayId.h ...Ok.
Testing ../../src/SquidMath.h ...Ok.
Testing ../../src/HierarchyLogEntry.h ...Ok.
Testing ../../src/HttpBody.h ...Ok.
Testing ../../src/StoreMetaSTD.h ...Ok.
Testing ../../src/fde.h ...Ok.
Testing ../../src/neighbors.h ...Ok.
Testing ../../src/StoreFileSystem.h ...Ok.
Testing ../../src/comm.h ...Ok.
Testing ../../src/store_digest.h ...Ok.
Testing ../../src/LoadableModules.h ...Ok.
Testing ../../src/URLScheme.h ...Ok.
Testing ../../src/stmem.h ...Ok.
Testing ../../src/CommRead.h ...Ok.
Testing ../../src/HttpRequest.h ...Ok.
Testing ../../src/Server.h ...Ok.
Testing ../../src/wccp.h ...Ok.
Testing ../../src/DelayTagged.h ...Ok.
Testing ../../src/swap_log_op.h ...Ok.
Testing ../../src/repl_modules.h ...Ok.
Testing ../../src/carp.h ...Ok.
Testing ../../src/DelayPool.h ...Ok.
Testing ../../src/ClientDelayConfig.h ...Ok.
Testing ../../src/Parsing.h ...Ok.
Testing ../../src/unlinkd.h ...Ok.
Testing ../../src/SnmpRequest.h ...Ok.
Testing ../../src/store_log.h ...Ok.
Testing ../../src/TimeOrTag.h ...Ok.
Testing ../../src/defines.h ...Ok.
Testing ../../src/multicast.h ...Ok.
Testing ../../src/HttpHeaderTools.h ...Ok.
Testing ../../src/RemovalPolicy.h ...Ok.
Testing ../../src/mem_node.h ...Ok.
Testing ../../src/Packer.h ...Ok.
Testing ../../src/DelaySpec.h ...Ok.
Testing ../../src/Notes.h ...Ok.
Testing ../../src/event.h ...Ok.
Testing ../../src/StoreSwapLogData.h ...Ok.
Testing ../../src/client_side_request.h ...Ok.
Testing ../../src/HttpMsg.h ...Ok.
Testing ../../src/mime_header.h ...Ok.
Testing ../../src/DnsLookupDetails.h ...Ok.
Testing ../../src/peer_userhash.h ...Ok.
Testing ../../src/ftp.h ...Ok.
Testing ../../src/FileMap.h ...Ok.
Testing ../../src/CpuAffinityMap.h ...Ok.
Testing ../../src/HttpRequestMethod.h ...Ok.
Testing ../../src/SquidConfig.h ...Ok.
Testing ../../src/StoreMetaVary.h ...Ok.
Testing ../../src/Generic.h ...Ok.
Testing ../../src/HttpHeaderRange.h ...Ok.
Testing ../../src/HttpHdrSc.h ...Ok.
Testing ../../src/SquidList.h ...Ok.
Testing ../../src/StoreMetaObjSize.h ...Ok.
Testing ../../src/NullDelayId.h ...Ok.
Testing ../../src/DelayBucket.h ...Ok.
Testing ../../src/fd.h ...Ok.
Testing ../../src/StoreClient.h ...Ok.
Testing ../../src/ExternalACL.h ...Ok.
Testing ../../src/HttpParser.h ...Ok.
Testing ../../src/MasterXaction.h ...Ok.
Testing ../../src/whois.h ...Ok.
Testi

Jenkins build is back to normal : 3.HEAD-amd64-CentOS-5.3 #2537

2013-09-21 Thread noc
See 



Re: Problems compiling squid 3.3.8

2013-09-21 Thread Amos Jeffries

On 10/09/2013 7:18 a.m., Kinkie wrote:

Another [debatable] flaw is that Squid build fails on harmless warnings.
All of that is not important though.

This is an interesting point; let's debate :)

Now that our CI infrastructure has grown quite a bit, we may have to
rely less on outside reporting of trivial issues. If that is the case,
what do you think about dropping the default level of paranoia in the
build flags, leaving that as optional for the build farm to use?


I consider that improved testing setup a good reason to *keep* the 
strict error checking enabled by default. Our setup still cannot test 
everything conclusively and while the need for user feedback is lessened 
it has not gone away. Certainly it is still very present in the more 
closed-source of the downstream build systems which we do not or cannot 
test for. The later user experience building Squid is better for the 
small amount of pain early-adopters are (knowingly) faced with.


Amos



Re: steady peer connection pool

2013-09-21 Thread Kinkie
Amos already answered very fully.
To me, this just seems a worthwile optimization.
Background neighbor probe with dummy request and cache_peer idle=num
seems reasonable in terms of effectiveness and implementation effort;
happy-eyeballs tcp and server-side pipelining have a lower ROE (Return
On Effort) and RONU (Return on Network Unfriendliness), so I'd
postpone them at a later stage, or just not do them.

Notice that IMO the solution to Alex' specific needs, can be more
easily addressed via an udp-based openvpn network (unless the topology
is very very complex) (tcp may work too but it'd need to be verified).

  Kinkie