[squid-dev] Build failed in Jenkins: trunk-x64-freebsd-72 #2355

2015-01-21 Thread noc
See http://build.squid-cache.org/job/trunk-x64-freebsd-72/2355/

--
[...truncated 3278 lines...]
libtool: compile:  /usr/local/bin/ccache g++ -DHAVE_CONFIG_H -I../../.. 
-I../../../include -I../../../lib -I../../../src -I../../include 
-I/usr/local/include -I/usr/include -I/usr/include -I../../../libltdl -Wall 
-Wpointer-arith -Wwrite-strings -Wcomments -Wshadow -Werror -pipe -D_REENTRANT 
-g -O2 -march=native -I/usr/local/include -MT Eui64.lo -MD -MP -MF 
.deps/Eui64.Tpo -c ../../../src/eui/Eui64.cc  -fPIC -DPIC -o .libs/Eui64.o
libtool: compile:  /usr/local/bin/ccache g++ -DHAVE_CONFIG_H -I../../.. 
-I../../../include -I../../../lib -I../../../src -I../../include 
-I/usr/local/include -I/usr/include -I/usr/include -I../../../libltdl -Wall 
-Wpointer-arith -Wwrite-strings -Wcomments -Wshadow -Werror -pipe -D_REENTRANT 
-g -O2 -march=native -I/usr/local/include -MT Config.lo -MD -MP -MF 
.deps/Config.Tpo -c ../../../src/eui/Config.cc -o Config.o /dev/null 21
mv -f .deps/Config.Tpo .deps/Config.Plo
libtool: compile:  /usr/local/bin/ccache g++ -DHAVE_CONFIG_H -I../../.. 
-I../../../include -I../../../lib -I../../../src -I../../include 
-I/usr/local/include -I/usr/include -I/usr/include -I../../../libltdl -Wall 
-Wpointer-arith -Wwrite-strings -Wcomments -Wshadow -Werror -pipe -D_REENTRANT 
-g -O2 -march=native -I/usr/local/include -MT Eui64.lo -MD -MP -MF 
.deps/Eui64.Tpo -c ../../../src/eui/Eui64.cc -o Eui64.o /dev/null 21
libtool: compile:  /usr/local/bin/ccache g++ -DHAVE_CONFIG_H -I../../.. 
-I../../../include -I../../../lib -I../../../src -I../../include 
-I/usr/local/include -I/usr/include -I/usr/include -I../../../libltdl -Wall 
-Wpointer-arith -Wwrite-strings -Wcomments -Wshadow -Werror -pipe -D_REENTRANT 
-g -O2 -march=native -I/usr/local/include -MT Eui48.lo -MD -MP -MF 
.deps/Eui48.Tpo -c ../../../src/eui/Eui48.cc -o Eui48.o /dev/null 21
mv -f .deps/Eui64.Tpo .deps/Eui64.Plo
mv -f .deps/Eui48.Tpo .deps/Eui48.Plo
/usr/local/bin/bash ../../libtool --tag=CXX--mode=link 
/usr/local/bin/ccache g++ -Wall -Wpointer-arith -Wwrite-strings -Wcomments 
-Wshadow -Werror -pipe -D_REENTRANT -g -O2 -march=native -I/usr/local/include   
-g -L/usr/local/lib -Wl,-R/usr/local/lib -pthread -o libeui.la  Config.lo 
Eui48.lo Eui64.lo  
libtool: link: /usr/bin/ar cru .libs/libeui.a .libs/Config.o .libs/Eui48.o 
.libs/Eui64.o 
libtool: link: ranlib .libs/libeui.a
libtool: link: ( cd .libs  rm -f libeui.la  ln -s ../libeui.la 
libeui.la )
Making all in acl
/usr/local/bin/bash ../../libtool --tag=CXX--mode=compile 
/usr/local/bin/ccache g++ -DHAVE_CONFIG_H-I../../.. -I../../../include  
-I../../../lib -I../../../src  -I../../include -I/usr/local/include 
-I/usr/include  -I/usr/include  -I../../../libltdl  -Wall -Wpointer-arith 
-Wwrite-strings -Wcomments -Wshadow -Werror -pipe -D_REENTRANT -g -O2 
-march=native -I/usr/local/include -MT Acl.lo -MD -MP -MF .deps/Acl.Tpo -c -o 
Acl.lo ../../../src/acl/Acl.cc
/usr/local/bin/bash ../../libtool --tag=CXX--mode=compile 
/usr/local/bin/ccache g++ -DHAVE_CONFIG_H-I../../.. -I../../../include  
-I../../../lib -I../../../src  -I../../include -I/usr/local/include 
-I/usr/include  -I/usr/include  -I../../../libltdl  -Wall -Wpointer-arith 
-Wwrite-strings -Wcomments -Wshadow -Werror -pipe -D_REENTRANT -g -O2 
-march=native -I/usr/local/include -MT BoolOps.lo -MD -MP -MF .deps/BoolOps.Tpo 
-c -o BoolOps.lo ../../../src/acl/BoolOps.cc
/usr/local/bin/bash ../../libtool --tag=CXX--mode=compile 
/usr/local/bin/ccache g++ -DHAVE_CONFIG_H-I../../.. -I../../../include  
-I../../../lib -I../../../src  -I../../include -I/usr/local/include 
-I/usr/include  -I/usr/include  -I../../../libltdl  -Wall -Wpointer-arith 
-Wwrite-strings -Wcomments -Wshadow -Werror -pipe -D_REENTRANT -g -O2 
-march=native -I/usr/local/include -MT Checklist.lo -MD -MP -MF 
.deps/Checklist.Tpo -c -o Checklist.lo ../../../src/acl/Checklist.cc
/usr/local/bin/bash ../../libtool --tag=CXX--mode=compile 
/usr/local/bin/ccache g++ -DHAVE_CONFIG_H-I../../.. -I../../../include  
-I../../../lib -I../../../src  -I../../include -I/usr/local/include 
-I/usr/include  -I/usr/include  -I../../../libltdl  -Wall -Wpointer-arith 
-Wwrite-strings -Wcomments -Wshadow -Werror -pipe -D_REENTRANT -g -O2 
-march=native -I/usr/local/include -MT InnerNode.lo -MD -MP -MF 
.deps/InnerNode.Tpo -c -o InnerNode.lo ../../../src/acl/InnerNode.cc
libtool: compile:  /usr/local/bin/ccache g++ -DHAVE_CONFIG_H -I../../.. 
-I../../../include -I../../../lib -I../../../src -I../../include 
-I/usr/local/include -I/usr/include -I/usr/include -I../../../libltdl -Wall 
-Wpointer-arith -Wwrite-strings -Wcomments -Wshadow -Werror -pipe -D_REENTRANT 
-g -O2 -march=native -I/usr/local/include -MT BoolOps.lo -MD -MP -MF 
.deps/BoolOps.Tpo -c ../../../src/acl/BoolOps.cc  -fPIC -DPIC -o .libs/BoolOps.o
libtool: compile:  /usr/local/bin/ccache g++ -DHAVE_CONFIG_H -I../../.. 
-I../../../include 

[squid-dev] Build failed in Jenkins: trunk-x64-freebsd-72 #2354

2015-01-21 Thread noc
See http://build.squid-cache.org/job/trunk-x64-freebsd-72/2354/

--
[...truncated 3258 lines...]
libtool: compile:  /usr/local/bin/ccache g++ -DHAVE_CONFIG_H -I../../.. 
-I../../../include -I../../../lib -I../../../src -I../../include 
-I/usr/local/include -I/usr/include -I/usr/include -I../../../libltdl -Wall 
-Wpointer-arith -Wwrite-strings -Wcomments -Wshadow -Werror -pipe -D_REENTRANT 
-g -O2 -march=native -I/usr/local/include -MT ModSelectWin32.lo -MD -MP -MF 
.deps/ModSelectWin32.Tpo -c ../../../src/comm/ModSelectWin32.cc -o 
ModSelectWin32.o /dev/null 21
libtool: compile:  /usr/local/bin/ccache g++ -DHAVE_CONFIG_H -I../../.. 
-I../../../include -I../../../lib -I../../../src -I../../include 
-I/usr/local/include -I/usr/include -I/usr/include -I../../../libltdl -Wall 
-Wpointer-arith -Wwrite-strings -Wcomments -Wshadow -Werror -pipe -D_REENTRANT 
-g -O2 -march=native -I/usr/local/include -MT TcpAcceptor.lo -MD -MP -MF 
.deps/TcpAcceptor.Tpo -c ../../../src/comm/TcpAcceptor.cc -o TcpAcceptor.o 
/dev/null 21
mv -f .deps/ModSelectWin32.Tpo .deps/ModSelectWin32.Plo
mv -f .deps/ModSelect.Tpo .deps/ModSelect.Plo
mv -f .deps/Read.Tpo .deps/Read.Plo
mv -f .deps/TcpAcceptor.Tpo .deps/TcpAcceptor.Plo
/usr/local/bin/bash ../../libtool --tag=CXX--mode=compile 
/usr/local/bin/ccache g++ -DHAVE_CONFIG_H-I../../.. -I../../../include  
-I../../../lib -I../../../src  -I../../include -I/usr/local/include 
-I/usr/include  -I/usr/include  -I../../../libltdl  -Wall -Wpointer-arith 
-Wwrite-strings -Wcomments -Wshadow -Werror -pipe -D_REENTRANT -g -O2 
-march=native -I/usr/local/include -MT Write.lo -MD -MP -MF .deps/Write.Tpo -c 
-o Write.lo ../../../src/comm/Write.cc
libtool: compile:  /usr/local/bin/ccache g++ -DHAVE_CONFIG_H -I../../.. 
-I../../../include -I../../../lib -I../../../src -I../../include 
-I/usr/local/include -I/usr/include -I/usr/include -I../../../libltdl -Wall 
-Wpointer-arith -Wwrite-strings -Wcomments -Wshadow -Werror -pipe -D_REENTRANT 
-g -O2 -march=native -I/usr/local/include -MT Write.lo -MD -MP -MF 
.deps/Write.Tpo -c ../../../src/comm/Write.cc  -fPIC -DPIC -o .libs/Write.o
libtool: compile:  /usr/local/bin/ccache g++ -DHAVE_CONFIG_H -I../../.. 
-I../../../include -I../../../lib -I../../../src -I../../include 
-I/usr/local/include -I/usr/include -I/usr/include -I../../../libltdl -Wall 
-Wpointer-arith -Wwrite-strings -Wcomments -Wshadow -Werror -pipe -D_REENTRANT 
-g -O2 -march=native -I/usr/local/include -MT Write.lo -MD -MP -MF 
.deps/Write.Tpo -c ../../../src/comm/Write.cc -o Write.o /dev/null 21
mv -f .deps/Write.Tpo .deps/Write.Plo
/usr/local/bin/bash ../../libtool --tag=CXX--mode=link 
/usr/local/bin/ccache g++ -Wall -Wpointer-arith -Wwrite-strings -Wcomments 
-Wshadow -Werror -pipe -D_REENTRANT -g -O2 -march=native -I/usr/local/include   
-g -L/usr/local/lib -Wl,-R/usr/local/lib -pthread -o libcomm.la  
AcceptLimiter.lo ConnOpener.lo Connection.lo  IoCallback.lo ModDevPoll.lo 
ModEpoll.lo ModKqueue.lo  ModPoll.lo ModSelect.lo ModSelectWin32.lo Read.lo  
TcpAcceptor.lo Write.lo  
libtool: link: /usr/bin/ar cru .libs/libcomm.a .libs/AcceptLimiter.o 
.libs/ConnOpener.o .libs/Connection.o .libs/IoCallback.o .libs/ModDevPoll.o 
.libs/ModEpoll.o .libs/ModKqueue.o .libs/ModPoll.o .libs/ModSelect.o 
.libs/ModSelectWin32.o .libs/Read.o .libs/TcpAcceptor.o .libs/Write.o 
libtool: link: ranlib .libs/libcomm.a
libtool: link: ( cd .libs  rm -f libcomm.la  ln -s ../libcomm.la 
libcomm.la )
Making all in eui
/usr/local/bin/bash ../../libtool --tag=CXX--mode=compile 
/usr/local/bin/ccache g++ -DHAVE_CONFIG_H-I../../.. -I../../../include  
-I../../../lib -I../../../src  -I../../include -I/usr/local/include 
-I/usr/include  -I/usr/include  -I../../../libltdl  -Wall -Wpointer-arith 
-Wwrite-strings -Wcomments -Wshadow -Werror -pipe -D_REENTRANT -g -O2 
-march=native -I/usr/local/include -MT Config.lo -MD -MP -MF .deps/Config.Tpo 
-c -o Config.lo ../../../src/eui/Config.cc
/usr/local/bin/bash ../../libtool --tag=CXX--mode=compile 
/usr/local/bin/ccache g++ -DHAVE_CONFIG_H-I../../.. -I../../../include  
-I../../../lib -I../../../src  -I../../include -I/usr/local/include 
-I/usr/include  -I/usr/include  -I../../../libltdl  -Wall -Wpointer-arith 
-Wwrite-strings -Wcomments -Wshadow -Werror -pipe -D_REENTRANT -g -O2 
-march=native -I/usr/local/include -MT Eui48.lo -MD -MP -MF .deps/Eui48.Tpo -c 
-o Eui48.lo ../../../src/eui/Eui48.cc
/usr/local/bin/bash ../../libtool --tag=CXX--mode=compile 
/usr/local/bin/ccache g++ -DHAVE_CONFIG_H-I../../.. -I../../../include  
-I../../../lib -I../../../src  -I../../include -I/usr/local/include 
-I/usr/include  -I/usr/include  -I../../../libltdl  -Wall -Wpointer-arith 
-Wwrite-strings -Wcomments -Wshadow -Werror -pipe -D_REENTRANT -g -O2 
-march=native -I/usr/local/include -MT Eui64.lo -MD -MP -MF .deps/Eui64.Tpo -c 
-o Eui64.lo ../../../src/eui/Eui64.cc
libtool: compile:  /usr/local/bin/ccache g++ 

[squid-dev] Build failed in Jenkins: trunk-matrix » clang,rs-fbsd-91 #40

2015-01-21 Thread noc
See 
http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=rs-fbsd-91/40/

--
[...truncated 3324 lines...]
libtool: link: ranlib .libs/libstate.a
libtool: link: ( cd .libs  rm -f libstate.la  ln -s ../libstate.la 
libstate.la )
/bin/sh ../../libtool --tag=CXX--mode=compile ccache clang++ 
-DHAVE_CONFIG_H-I../../.. -I../../../include  -I../../../lib -I../../../src 
 -I../../include -I/usr/local/include -I/usr/include  -I/usr/include  
-I../../../libltdl  -Werror -Qunused-arguments  -D_REENTRANT -g -O2 -std=c++11 
-I/usr/local/include -MT IntRange.lo -MD -MP -MF .deps/IntRange.Tpo -c -o 
IntRange.lo ../../../src/acl/IntRange.cc
libtool: compile:  ccache clang++ -DHAVE_CONFIG_H -I../../.. -I../../../include 
-I../../../lib -I../../../src -I../../include -I/usr/local/include 
-I/usr/include -I/usr/include -I../../../libltdl -Werror -Qunused-arguments 
-D_REENTRANT -g -O2 -std=c++11 -I/usr/local/include -MT IntRange.lo -MD -MP -MF 
.deps/IntRange.Tpo -c ../../../src/acl/IntRange.cc  -fPIC -DPIC -o 
.libs/IntRange.o
libtool: compile:  ccache clang++ -DHAVE_CONFIG_H -I../../.. -I../../../include 
-I../../../lib -I../../../src -I../../include -I/usr/local/include 
-I/usr/include -I/usr/include -I../../../libltdl -Werror -Qunused-arguments 
-D_REENTRANT -g -O2 -std=c++11 -I/usr/local/include -MT IntRange.lo -MD -MP -MF 
.deps/IntRange.Tpo -c ../../../src/acl/IntRange.cc -o IntRange.o /dev/null 21
mv -f .deps/IntRange.Tpo .deps/IntRange.Plo
/bin/sh ../../libtool --tag=CXX--mode=compile ccache clang++ 
-DHAVE_CONFIG_H-I../../.. -I../../../include  -I../../../lib -I../../../src 
 -I../../include -I/usr/local/include -I/usr/include  -I/usr/include  
-I../../../libltdl  -Werror -Qunused-arguments  -D_REENTRANT -g -O2 -std=c++11 
-I/usr/local/include -MT RegexData.lo -MD -MP -MF .deps/RegexData.Tpo -c -o 
RegexData.lo ../../../src/acl/RegexData.cc
libtool: compile:  ccache clang++ -DHAVE_CONFIG_H -I../../.. -I../../../include 
-I../../../lib -I../../../src -I../../include -I/usr/local/include 
-I/usr/include -I/usr/include -I../../../libltdl -Werror -Qunused-arguments 
-D_REENTRANT -g -O2 -std=c++11 -I/usr/local/include -MT RegexData.lo -MD -MP 
-MF .deps/RegexData.Tpo -c ../../../src/acl/RegexData.cc  -fPIC -DPIC -o 
.libs/RegexData.o
libtool: compile:  ccache clang++ -DHAVE_CONFIG_H -I../../.. -I../../../include 
-I../../../lib -I../../../src -I../../include -I/usr/local/include 
-I/usr/include -I/usr/include -I../../../libltdl -Werror -Qunused-arguments 
-D_REENTRANT -g -O2 -std=c++11 -I/usr/local/include -MT RegexData.lo -MD -MP 
-MF .deps/RegexData.Tpo -c ../../../src/acl/RegexData.cc -o RegexData.o 
/dev/null 21
mv -f .deps/RegexData.Tpo .deps/RegexData.Plo
/bin/sh ../../libtool --tag=CXX--mode=compile ccache clang++ 
-DHAVE_CONFIG_H-I../../.. -I../../../include  -I../../../lib -I../../../src 
 -I../../include -I/usr/local/include -I/usr/include  -I/usr/include  
-I../../../libltdl  -Werror -Qunused-arguments  -D_REENTRANT -g -O2 -std=c++11 
-I/usr/local/include -MT StringData.lo -MD -MP -MF .deps/StringData.Tpo -c -o 
StringData.lo ../../../src/acl/StringData.cc
libtool: compile:  ccache clang++ -DHAVE_CONFIG_H -I../../.. -I../../../include 
-I../../../lib -I../../../src -I../../include -I/usr/local/include 
-I/usr/include -I/usr/include -I../../../libltdl -Werror -Qunused-arguments 
-D_REENTRANT -g -O2 -std=c++11 -I/usr/local/include -MT StringData.lo -MD -MP 
-MF .deps/StringData.Tpo -c ../../../src/acl/StringData.cc  -fPIC -DPIC -o 
.libs/StringData.o
libtool: compile:  ccache clang++ -DHAVE_CONFIG_H -I../../.. -I../../../include 
-I../../../lib -I../../../src -I../../include -I/usr/local/include 
-I/usr/include -I/usr/include -I../../../libltdl -Werror -Qunused-arguments 
-D_REENTRANT -g -O2 -std=c++11 -I/usr/local/include -MT StringData.lo -MD -MP 
-MF .deps/StringData.Tpo -c ../../../src/acl/StringData.cc -o StringData.o 
/dev/null 21
mv -f .deps/StringData.Tpo .deps/StringData.Plo
/bin/sh ../../libtool --tag=CXX--mode=compile ccache clang++ 
-DHAVE_CONFIG_H-I../../.. -I../../../include  -I../../../lib -I../../../src 
 -I../../include -I/usr/local/include -I/usr/include  -I/usr/include  
-I../../../libltdl  -Werror -Qunused-arguments  -D_REENTRANT -g -O2 -std=c++11 
-I/usr/local/include -MT Time.lo -MD -MP -MF .deps/Time.Tpo -c -o Time.lo 
../../../src/acl/Time.cc
libtool: compile:  ccache clang++ -DHAVE_CONFIG_H -I../../.. -I../../../include 
-I../../../lib -I../../../src -I../../include -I/usr/local/include 
-I/usr/include -I/usr/include -I../../../libltdl -Werror -Qunused-arguments 
-D_REENTRANT -g -O2 -std=c++11 -I/usr/local/include -MT Time.lo -MD -MP -MF 
.deps/Time.Tpo -c ../../../src/acl/Time.cc  -fPIC -DPIC -o .libs/Time.o
libtool: compile:  ccache clang++ -DHAVE_CONFIG_H -I../../.. -I../../../include 
-I../../../lib -I../../../src -I../../include -I/usr/local/include 
-I/usr/include -I/usr/include 

Re: [squid-dev] Moved PID file management from Coordinator to Master

2015-01-21 Thread Tsantilas Christos

On 01/21/2015 12:17 PM, Amos Jeffries wrote:

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 21/01/2015 10:57 p.m., Tsantilas Christos wrote:

On 01/20/2015 02:55 AM, Alex Rousskov wrote:

On 01/16/2015 08:51 AM, Amos Jeffries wrote:

On 16/01/2015 11:29 a.m., Alex Rousskov wrote:

In SMP, there is only one Coordinator process, created by
the Master process.



All SMP kids (Coordinator, workers, and diskers) are started
by the Master process. There are no multiple levels as far as
kid startup and waiting are concerned and, hence, there is no
level deeper than the master can see.




Hmm, okay. Then I have no problem per-se to this change of
esponsibility.


Great, thank you.



I do still think the coordinator needs to remain active until
last out of the kids though, so they can still use it to
coordinate during their shutdowns. Having it be the first up
and last down would solve a few architectural problems where
kids need to to collaborate on things, like log rotations or
broadcasting their availability.


Agreed!



This patch does not prevent coordinator process exit before the
workers, but also current squid does not guarantees that the
coordinator will exit after workers. I agree that we need to
implement it, but looks that this is out of the scope of this
patch.

If there is not any objection I will apply this patch as is for
now.



Okay, lets give it a try.

Can you please though make sure all the new functions use the Squid
coding style instead of the one you keep slipping in. Squid style is
this in .cc files:

  type
  functionName(...)
  {
 ... code ...
  }


Hmm...
I found 1-2 cases... I will fix while applying to trunk 




Cheers
Amos
-BEGIN PGP SIGNATURE-
Version: GnuPG v2.0.22 (MingW32)

iQEcBAEBAgAGBQJUv3zOAAoJELJo5wb/XPRjJtMIAJV3sKXDHeOq+E3HqVGjrDFc
ZlJt7k76LIHCGZmfkh+1fPv4wuUtWKVzW2TfHMGP1HI2bqzq6hBTKe+uVmqi3Xzm
yXWHSymbXJKlWW7/lBLY7innpNjLyiE3Jv46gto1I6R79eXipiVYUehSVhx0FGL6
yB6yli6RTLEqxZlhI/tCHvfVh1Y0Wp3r0+yJJmW4POiF6S9PSnFJE+PzlEsWJ5L1
s6KuMlQ90jHAhLOsfJWrTE1bo/xJskVKkOT6KTTO7DxK0AyFxUvxsXVwT8I1h8oo
8qIHVjPEOYFuoejowH6+rn0nDDcFNyt47O/POIl7KJ1SvO1Vkx6lfDTPmvz7uMA=
=L5r1
-END PGP SIGNATURE-
___
squid-dev mailing list
squid-dev@lists.squid-cache.org
http://lists.squid-cache.org/listinfo/squid-dev



___
squid-dev mailing list
squid-dev@lists.squid-cache.org
http://lists.squid-cache.org/listinfo/squid-dev


Re: [squid-dev] Moved PID file management from Coordinator to Master

2015-01-21 Thread Tsantilas Christos


I am posting a new patch.

This patch include fixes to follow Squid Coding Style but also have a 
fix for a small bug:
 In the previous patches I posted the pid creation done by master 
process but the pid file was not removed by master process. This patch 
fixes master process to remove pid file on exit.





On 01/21/2015 12:17 PM, Amos Jeffries wrote:

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 21/01/2015 10:57 p.m., Tsantilas Christos wrote:

On 01/20/2015 02:55 AM, Alex Rousskov wrote:

On 01/16/2015 08:51 AM, Amos Jeffries wrote:

On 16/01/2015 11:29 a.m., Alex Rousskov wrote:

In SMP, there is only one Coordinator process, created by
the Master process.



All SMP kids (Coordinator, workers, and diskers) are started
by the Master process. There are no multiple levels as far as
kid startup and waiting are concerned and, hence, there is no
level deeper than the master can see.




Hmm, okay. Then I have no problem per-se to this change of
esponsibility.


Great, thank you.



I do still think the coordinator needs to remain active until
last out of the kids though, so they can still use it to
coordinate during their shutdowns. Having it be the first up
and last down would solve a few architectural problems where
kids need to to collaborate on things, like log rotations or
broadcasting their availability.


Agreed!



This patch does not prevent coordinator process exit before the
workers, but also current squid does not guarantees that the
coordinator will exit after workers. I agree that we need to
implement it, but looks that this is out of the scope of this
patch.

If there is not any objection I will apply this patch as is for
now.



Okay, lets give it a try.

Can you please though make sure all the new functions use the Squid
coding style instead of the one you keep slipping in. Squid style is
this in .cc files:

  type
  functionName(...)
  {
 ... code ...
  }

Cheers
Amos


Moved PID file management from Coordinator to Master.

This move is the first step necessary to avoid the following race condition
among PID file deletion and shared segment creation/destruction in SMP Squid:

  O1) The old Squid Coordinator removes its PID file and quits.
  N1) The system script notices Coordinator death and starts the new Squid.
  N2) Shared segments are created by the new Master process.
  O2) Shared segments are removed by the old Master process.
  N3) New worker/disker processes fail due to missing segments.

TODO: The second step (not a part of this change) is to delete shared memory
segments before PID file is deleted (all in the Master process after this
change).


Now the Master process receives signals and is responsible for forwarding them
to the kids.

The kids does not install default signal handler for shudown signals (SIGINT,
SIGTERM) after a signal received. If a second shutdown signal is received then
squid imediatelly terminates the event loop and exits.

When the kill-parent-hack is enabled the kids are sending the kill signal
to master process and master process forward it to other kids too.

Also a small regression added: The PID file can no longer be renamed using
hot reconfiguration. A full Squid restart is now required for that.

This is a Measurement Factory project.

=== modified file 'src/ipc/Kid.cc'
--- src/ipc/Kid.cc	2015-01-13 07:25:36 +
+++ src/ipc/Kid.cc	2015-01-21 11:47:29 +
@@ -33,41 +33,42 @@
 badFailures(0),
 pid(-1),
 startTime(0),
 isRunning(false),
 status(0)
 {
 }
 
 /// called when this kid got started, records PID
 void Kid::start(pid_t cpid)
 {
 assert(!running());
 assert(cpid  0);
 
 isRunning = true;
 pid = cpid;
 time(startTime);
 }
 
 /// called when kid terminates, sets exiting status
-void Kid::stop(status_type theExitStatus)
+void
+Kid::stop(PidStatus const theExitStatus)
 {
 assert(running());
 assert(startTime != 0);
 
 isRunning = false;
 
 time_t stop_time;
 time(stop_time);
 if ((stop_time - startTime)  fastFailureTimeLimit)
 ++badFailures;
 else
 badFailures = 0; // the failures are not frequent [any more]
 
 status = theExitStatus;
 }
 
 /// returns true if tracking of kid is stopped
 bool Kid::running() const
 {
 return isRunning;

=== modified file 'src/ipc/Kid.h'
--- src/ipc/Kid.h	2015-01-13 07:25:36 +
+++ src/ipc/Kid.h	2015-01-13 16:35:58 +
@@ -1,60 +1,56 @@
 /*
  * Copyright (C) 1996-2015 The Squid Software Foundation and contributors
  *
  * Squid software is distributed under GPLv2+ license and includes
  * contributions from numerous individuals and organizations.
  * Please see the COPYING and CONTRIBUTORS files for details.
  */
 
 #ifndef SQUID_IPC_KID_H
 #define SQUID_IPC_KID_H
 
 #include SquidString.h
+#include tools.h
 
 /// Squid child, including current forked process info and
 /// info persistent across restarts
 class Kid
 {
 public:
-#if _SQUID_NEXT_
-typedef union wait status_type;
-#else
-typedef int 

Re: [squid-dev] Moved PID file management from Coordinator to Master

2015-01-21 Thread Tsantilas Christos

On 01/20/2015 02:55 AM, Alex Rousskov wrote:

On 01/16/2015 08:51 AM, Amos Jeffries wrote:

On 16/01/2015 11:29 a.m., Alex Rousskov wrote:

In SMP, there is only one Coordinator process, created by the
Master process.



All SMP kids (Coordinator, workers, and diskers) are started by
the Master process. There are no multiple levels as far as kid
startup and waiting are concerned and, hence, there is no level
deeper than the master can see.




Hmm, okay. Then I have no problem per-se to this change of esponsibility.


Great, thank you.



I do still think the coordinator needs to remain active until last out
of the kids though, so they can still use it to coordinate during
their shutdowns. Having it be the first up and last down would solve a
few architectural problems where kids need to to collaborate on
things, like log rotations or broadcasting their availability.


Agreed!



This patch does not prevent coordinator process exit before the workers, 
but also current squid does not guarantees that the coordinator will 
exit after workers.
I agree that we need to implement it, but looks that this is out of the 
scope of this patch.


If there is not any objection I will apply this patch as is for now.






Alex.
___
squid-dev mailing list
squid-dev@lists.squid-cache.org
http://lists.squid-cache.org/listinfo/squid-dev



___
squid-dev mailing list
squid-dev@lists.squid-cache.org
http://lists.squid-cache.org/listinfo/squid-dev


[squid-dev] Build failed in Jenkins: trunk-matrix » clang,d-debian-wheezy #39

2015-01-21 Thread noc
See 
http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/39/

--
[...truncated 5375 lines...]
depbase=`echo AsyncEngine.o | sed 's|[^/]*$|.deps/|;s|\.o$||'`;\
ccache clang++ -DHAVE_CONFIG_H 
-DDEFAULT_CONFIG_FILE=\http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/etc/squid.conf\;
 
-DDEFAULT_SQUID_DATA_DIR=\http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/share\;
 
-DDEFAULT_SQUID_CONFIG_DIR=\http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/etc\;
   -I../.. -I../../include -I../../lib -I../../src -I../include-I../src
-Werror -Qunused-arguments -Wno-deprecated-register  -D_REENTRANT -g -O2 
-std=c++11 -MT AsyncEngine.o -MD -MP -MF $depbase.Tpo -c -o AsyncEngine.o 
../../src/AsyncEngine.cc \
mv -f $depbase.Tpo $depbase.Po
depbase=`echo YesNoNone.o | sed 's|[^/]*$|.deps/|;s|\.o$||'`;\
ccache clang++ -DHAVE_CONFIG_H 
-DDEFAULT_CONFIG_FILE=\http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/etc/squid.conf\;
 
-DDEFAULT_SQUID_DATA_DIR=\http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/share\;
 
-DDEFAULT_SQUID_CONFIG_DIR=\http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/etc\;
   -I../.. -I../../include -I../../lib -I../../src -I../include-I../src
-Werror -Qunused-arguments -Wno-deprecated-register  -D_REENTRANT -g -O2 
-std=c++11 -MT YesNoNone.o -MD -MP -MF $depbase.Tpo -c -o YesNoNone.o 
../../src/YesNoNone.cc \
mv -f $depbase.Tpo $depbase.Po
depbase=`echo cache_cf.o | sed 's|[^/]*$|.deps/|;s|\.o$||'`;\
ccache clang++ -DHAVE_CONFIG_H 
-DDEFAULT_CONFIG_FILE=\http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/etc/squid.conf\;
 
-DDEFAULT_SQUID_DATA_DIR=\http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/share\;
 
-DDEFAULT_SQUID_CONFIG_DIR=\http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/etc\;
   -I../.. -I../../include -I../../lib -I../../src -I../include-I../src
-Werror -Qunused-arguments -Wno-deprecated-register  -D_REENTRANT -g -O2 
-std=c++11 -MT cache_cf.o -MD -MP -MF $depbase.Tpo -c -o cache_cf.o 
../../src/cache_cf.cc \
mv -f $depbase.Tpo $depbase.Po
depbase=`echo CacheDigest.o | sed 's|[^/]*$|.deps/|;s|\.o$||'`;\
ccache clang++ -DHAVE_CONFIG_H 
-DDEFAULT_CONFIG_FILE=\http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/etc/squid.conf\;
 
-DDEFAULT_SQUID_DATA_DIR=\http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/share\;
 
-DDEFAULT_SQUID_CONFIG_DIR=\http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/etc\;
   -I../.. -I../../include -I../../lib -I../../src -I../include-I../src
-Werror -Qunused-arguments -Wno-deprecated-register  -D_REENTRANT -g -O2 
-std=c++11 -MT CacheDigest.o -MD -MP -MF $depbase.Tpo -c -o CacheDigest.o 
../../src/CacheDigest.cc \
mv -f $depbase.Tpo $depbase.Po
libtool: compile:  ccache clang++ -DHAVE_CONFIG_H 
-DDEFAULT_CONFIG_FILE=\http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/etc/squid.conf\;
 
-DDEFAULT_SQUID_DATA_DIR=\http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/share\;
 
-DDEFAULT_SQUID_CONFIG_DIR=\http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/etc\;
 -I../.. -I../../include -I../../lib -I../../src -I../include -I../src -Werror 
-Qunused-arguments -Wno-deprecated-register -D_REENTRANT -g -O2 -std=c++11 -MT 
comm.lo -MD -MP -MF .deps/comm.Tpo -c ../../src/comm.cc -o comm.o /dev/null 
21
depbase=`echo cache_manager.o | sed 's|[^/]*$|.deps/|;s|\.o$||'`;\
ccache clang++ -DHAVE_CONFIG_H 
-DDEFAULT_CONFIG_FILE=\http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/etc/squid.conf\;
 
-DDEFAULT_SQUID_DATA_DIR=\http://build.squid-cache.org/job/trunk-matrix/compiler=clang,label=d-debian-wheezy/ws/btlayer-00-default/squid-3.HEAD-BZR/_inst/share\;