<document>
  <header>
    <product>resin</product>
    <title>Resin 4.0.23 Release Notes</title>
  </header>

<body>

<localtoc/>

<s1 title="Summary">

<p>4.0.23 continues focus on bug fixes and stability</p>

<p>Thanks to everyone who reported bugs in 4.0.22. We encourage people to
report 4.0.23 bugs at
<a href="http://bugs.caucho.com">http://bugs.caucho.com</a>.</p>

</s1>

<s1 title="Health: PdfReport">

<p>The PdfReport now has a mail-to attribute which can be used to send the
pdf report as an email attachment.</p>

<example title="Example PdfReport">
&lt;resin ...>
  &lt;cluster ...>
  
      &lt;health:PdfReport>
        &lt;path>${resin.home}/php/admin/pdf-gen.php&lt;/path>
        &lt;report>Watchdog&lt;/report>
        &lt;watchdog/>
        &lt;mail-to>user@example.com&lt;/mail-to>
        &lt;health:OnRestart/>
      &lt;/health:PdfReport>
</example>

</s1>

<s1 title="Health: AnomalyAnalysis">

<p>The health check system has some early anomaly analysis. The analyzer will
look at a meter value, checking for deviations from the average value.
So unusual changes like a spike in blocked threads can be detected.</p>

</s1>

<s1 title="Health: Watchdog and Postmortem">

<p>The Postmortem report has been renamed to be the
watchdog restart report, primarily for translation purposes. We're now
describing the watchdog as the entire check/restart/report system, where the
watchdog process is only a part.</p>

</s1>

<s1 title="Command Line Interface">

<p>The "stop" and "kill" commands can be used without the -server option if
the current watchdog has a single server active.</p>

</s1>

<s1 title="WebSocket">

<p>The WebSocket implementation has been upgraded to draft 16.</p>

</s1>

<s1 title="jCache and Performance">

<p>The jCache API has been upgraded (although that's a moving target.)
Performance has been improved, particularly for caches with a low locality
rate. The user key to internal hash key cache has been merged into the
global manager and its size increased.</p>

<p>Experimental testing of Resin's cache used as a memcache server shows
comparable performance with memcached on certain loads.</p>

</s1>

</body>
</document>
