<!-- doc/src/sgml/release-3.1.sgml -->
<!-- See header comment in release.sgml about typical markup -->

<sect1 id="release-3-1-21">
 <title>Release 3.1.21</title>

 <note>
  <title>Release Date</title>
  <simpara>2016-12-26</simpara>
 </note>

 <sect2>
  <title>Bug fixes</title>

  <itemizedlist>

   <listitem>
    <!--
    2016-10-27 [f37c592]
    -->
    <para>
     Do not cancel a query when the query resulted in an error other than in native replication mode. (Tatsuo Ishii)
    </para>
    <para>
     It was intended to keep the consistency, but there's no point in other
     than native replication mode.
    </para>
   </listitem>

   <listitem>
    <!--
    2016-09-09 [8231f65]
    -->
    <para>
     Do not use random() while generating MD5 salt. (Tatsuo Ishii)
    </para>
    <para>
     random() should not be used in security related applications.  To
     replace random(), import PostmasterRandom() from PostgreSQL.  Also
     store current time at the start up of Pgpool-II main process for later
     use.
    </para>
   </listitem>

   <listitem>
    <!--
    2016-09-06 [891ce0f]
    -->
    <para>
     Don't ignore sync message from frontend when query cache is enabled. (Tatsuo Ishii)
    </para>
   </listitem>

  </itemizedlist>

 </sect2>

</sect1>
