<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>further analysis indicated that master process created <span style="color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 12.8000001907349px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; display: inline !important; float: none; background-color: rgb(255, 255, 255);">quid-ssl_session_</span><wbr style="color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 12.8000001907349px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255);"><span style="color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 12.8000001907349px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; display: inline !important; float: none; background-color: rgb(255, 255, 255);">cache.shm.<br><br>In other words, it needs a https_port or http_port with ssl-bump in outside any process number to create this shared memeory segment.<br><br>Furthermore, the code  should be simplied like this:<br><br>diff --git a/squid-3.5.6/src/ssl/support.cc b/squid-3.5.6/src/ssl/support.cc<br>index 85305ce..0ce95f9 100644<br>--- a/squid-3.5.6/src/ssl/support.cc<br>+++ b/squid-3.5.6/src/ssl/support.cc<br>@@ -2084,9 +2084,6 @@ SharedSessionCacheRr::useConfig()<br> void<br> SharedSessionCacheRr::create()<br> {<br>-    if (!isSslServer()) //no need to configure ssl session cache.<br>-        return;<br>-<br>     int items;<br>     items = Config.SSL.sessionCacheSize / sizeof(Ipc::MemMap::Slot);<br>     if (items)<br><br><br><br>This code is called in master that may not have configuration to ensure isSsslServer return true.<br><br>Alex<br></span><br /><br /><div><hr id="stopSpelling">From: alex_wu2012@hotmail.com<br>To: squid3@treenet.co.nz; squid-users@lists.squid-cache.org<br>Date: Fri, 24 Jul 2015 15:28:06 -0700<br>Subject: Re: [squid-users] cannot leave empty workers<br><br>

<style><!--
.ExternalClass .ecxhmmessage P {
padding:0px;
}

.ExternalClass body.ecxhmmessage {
font-size:12pt;
font-family:Calibri;
}

--></style>
<div dir=ltr>There is a problem<br><br>The code isSslServer looks for https configuration. If no one found, it will not create /run/shm/ssl_session_cache.shm.<br><br>Late, the code somewhere else can not find it, so the process would not start it self.<br><br>I am not clear which worker is called first to initialize_session_cache.<br><br>We see master and coordinator start properly. so I suspect coordinator might be one to initialze ssl_session_cache?<br><br>Or since all my http_port are listed in worker process 4, so isSllServer cannot find https_port, so it will not initialize ssl_session_cache.shm.<br><br>Somewhere, something is odd.<br><br>THX<br><br>Alex<br><br><br><div>> To: squid-users@lists.squid-cache.org<br>> From: squid3@treenet.co.nz<br>> Date: Sat, 25 Jul 2015 10:07:18 +1200<br>> Subject: Re: [squid-users] cannot leave empty workers<br>> <br>> On 25/07/2015 7:24 a.m., Alex Wu wrote:<br>> > If I define 4 workers, and use the following way to allocate workers:<br>> > <br>> > if ${process_number} = 4<br>> > //do something<br>> > else<br>> > endif<br>> <br>> The "else" means the wrapped config bit applies to *all* workers and<br>> processes of Squid except the one in the if-condition (process #4). It<br>> is optional.<br>> <br>> if ${process_number} = 4<br>>  # do something<br>> endif<br>> <br>> It does not even do anything in the code except invert a bitmask. An<br>> "endif" then erases that bitmask. So an empty "else" is effectively<br>> doing nothing at all.<br>>  Just like one would expect reading that config.<br>> <br>> The bug is elsewhere (sorry for the pun).<br>> <br>> > <br>> > I leave other workers as empty after else, then we encounter this error:<br>> > <br>> > FATAL: Ipc::Mem::Segment::open failed to shm_open(/squid-ssl_session_cache.shm): (2) No such file or directory<br>> > <br>> > If I fill one more workers,especially ${process_number} = 1, then squid can launch workers now,<br>> > <br>> <br>> Was that really the full config?<br>> <br>> I dont see "workers 4" in there at all and something must have been<br>> configured to use the shared memory TLS/SSL session cache.<br>> <br>> Amos<br>> <br>> _______________________________________________<br>> squid-users mailing list<br>> squid-users@lists.squid-cache.org<br>> http://lists.squid-cache.org/listinfo/squid-users<br></div>                                          </div>
<br>_______________________________________________
squid-users mailing list
squid-users@lists.squid-cache.org
http://lists.squid-cache.org/listinfo/squid-users</div>                                         </div></body>
</html>