<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <br>
    -----BEGIN PGP SIGNED MESSAGE----- <br>
    Hash: SHA256 <br>
     <br>
    <br>
    <br>
    29.02.16 23:22, Marcus Kool пишет:<br>
    <span style="white-space: pre;">><br>
      >> * Choices.<br>
      >><br>
      >> Overall, there are three options for handling an
      impossible situation:<br>
      >><br>
      >> 1. Quit Squid process. This is what Squid does today in
      most cases.<br>
      >>     When the impossible happens, you get a crash. Very
      predictable.<br>
      >>     No malformed/corrupted/misleading HTTP messages (some
      are truncated).<br>
      >>     No memory leaks.<br>
      >><br>
      >> 2. Quit the current processing sequence but keep Squid
      process running,<br>
      >>     assuming that [most] other processing sequences are
      not affected.<br>
      >>     [If you are familiar with programming, this is done
      by throwing<br>
      >>     exceptions instead of asserting and catching those
      exceptions at<br>
      >>     "processing sequence" boundaries].<br>
      >><br>
      >> 3. Keep executing the current processing sequence,
      assuming that the<br>
      >>     assertion was wrong or unimportant. This is what you
      might be<br>
      >>     suggesting above. When the impossible happens, you
      may get a crash,<br>
      >>     memory leaks, malformed/corrupted/misleading HTTP
      messages, or normal<br>
      >>     behavior, depending on the assertion and traffic.<br>
      >><br>
      >> IMO, we should make #2 the default, but make the choice
      between all<br>
      >> three options configurable by the admin (without
      recompiling Squid).<br>
      ><br>
      > Let me suggest #4 :<br>
      ><br>
      > immediately execute an external program that calls gdb or any
      other debugger<br>
      > which produces a stack trace of all squid processes and then
      do #1 or #2.<br>
      ><br>
      > The stack dumps will be save in an assertion failure log file
      which admins<br>
      > can send to Squid developers.<br>
      ><br>
      > This will speedup the debugging and fixing procedure.<br>
      ><br>
      > Finally, there must be a mechanism that warns admins that an
      assertion failure<br>
      > happened.  This is not trivial since an admin does not look
      every day<br>
      > in the squid log file.</span><br>
    Hmmmmmmm...... some shell scripting+cron+sendmail can't save the
    giants of thought? ;)<br>
    <span style="white-space: pre;">><br>
      > Marcus<br>
      > _______________________________________________<br>
      > squid-users mailing list<br>
      > <a class="moz-txt-link-abbreviated" href="mailto:squid-users@lists.squid-cache.org">squid-users@lists.squid-cache.org</a><br>
      > <a class="moz-txt-link-freetext" href="http://lists.squid-cache.org/listinfo/squid-users">http://lists.squid-cache.org/listinfo/squid-users</a></span><br>
    <br>
    -----BEGIN PGP SIGNATURE-----
<br>
    Version: GnuPG v2
<br>
     <br>
    iQEcBAEBCAAGBQJW1H/HAAoJENNXIZxhPexGBFoIAJ18PCwyDrYsR0UPuVGSP5xA
<br>
    4rNBiZfjA0WFU2Ug7FFDBkL2XkuLjktt7ftPPLuTIVhCQujk0e99ZaWX2FBGTMts
<br>
    hNtIGIS0rysU0oWvXGl5f9w7WJqKYpiRmEThRGGIinsoqouOmKgv9q7AoFnKsSUi
<br>
    dKD2ISdtX+Gm13m3dZz+MANltChnN37ZXONbO3Vf/YG1l/9g4S6S1xfyiMJiLLTU
<br>
    NOvXFYGCbTTRIH13D9QATVeGpP9fSSLDAUtTd+z5yEDsGpfcXdi+6+1tCvheiLtA
<br>
    0hqCmWqU0sKKLHumD70bGkMTLMx+F6CPSaXGxOONPAjZaLwCXk4PyHxUp/m+ofo=
<br>
    =OlJi
<br>
    -----END PGP SIGNATURE-----
<br>
    <br>
  </body>
</html>