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

<body>

<summary objsummary='localtoc'/>

<section title="Windows Security Update">

<p>Windows users of Resin 3.0.17 or 3.0.18 should upgrade to 3.0.19
as soon as possible.</p>

</section>

<section title="Quercus: New PHP Applications">

<p>Quercus now starts up <a href="http://www.wordpress.com">Wordpress</a> and
<a href="http://gallery.menalto.com">Gallery</a>.</p>

</section>

<section title="AccessLog shared-buffer">

<p>The access-log has a new attribute, shared-buffer.  The default
behavior is to use the shared buffer (the current behavior.)  If
shared-buffer is disabled, each request will use its own buffer
for logging requests.  In some situations, the separate buffer may
reduce locking times.</p>

</section>

<section title="LdapAuthenticator">

<p>dn-prefix, dn-suffix, jndi-dnv, user-attribute, password-attribute</p>

</section>
<section title="connection-error-page">

<p>The server block now accepts &lt;connection-error-page> for IIS.</p>

</section>

<section title="wrap-statements">

<p>The &lt;database> tag now has a &lt;wrap-statements> tag (default true)
allowing applications to use the native statement class.</p>

</section>

<section title="prologue">

<p>Added a &lt;prologue> tag to the &lt;web-app>. The prologue is
web-app configuration which is applied before any &lt;web-app-default>.</p>

<p>The &lt;prologue> lets applications define custom &lt;class-loader>
in the &lt;web-app> and lets it be applied before the &lt;web-app-default>
or web.xml.</p>

</section>

<section title="resource-default">

<p>Added &lt;resource-default> tag as a default configuration
for .rar files, e.g. classpaths.</p>

</section>

<section title="redeploy-check-interval">

<p>Added a redeploy-check-interval to configure how long Resin should
wait to restart a failed web-app.</p>

</section>

<section title="JaasAuthenticator">

<p>The JaasAuthenticator will now look for <code>isUserInRole</code> and
<code>getRoles</code> in the Principal returned by the authenticator
to support the servlet <code>isUserInRole</code> call.

</section>

<section title="log/rollover-count">

<p>rollover-count is now allowed for &lt;log></p>

</section>

<section title="log/path-format">

<p>The path-format option to the logs, including access-log can now
accept .gz extensions.  The logs will be compressed as they are written.</p>

</section>

<section title="select-manager">

<p>The &lt;select-manager> tag replaces the &lt;enable-select-manager/>
introduced in 3.0.18.</p>

</section>

<section title="JspServlet">

<p>The number of JSP .class files cached can now be configured in the JSP
servlet.  This affects the memory usage in the permanent memory space.</p>

<example>
&lt;servlet servlet-name="resin-jsp"
            servlet-class="com.caucho.jsp.JspServlet">
  &lt;init>
    &lt;load-tld-on-init>false&lt;/load-tld-on-init>
    &lt;page-cache-max>1024&lt;/page-cache-max>
  &lt;/init>
  &lt;load-on-startup/>
&lt;/servlet>
</example>

<p>This fix is related to the OOM/PermMax issues some people have been
running into with large numbers of JSP files.</p>

</section>

</body>
</document>
