Modified: websites/production/db/content/derby/releases/release-10.3.3.0.html
==============================================================================
--- websites/production/db/content/derby/releases/release-10.3.3.0.html 
(original)
+++ websites/production/db/content/derby/releases/release-10.3.3.0.html Sat Oct 
14 18:58:50 2017
@@ -3,8 +3,9 @@
 <head>
 <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <meta content="Apache Forrest" name="Generator">
-<meta name="Forrest-version" content="0.9">
+<meta name="Forrest-version" content="0.8">
 <meta name="Forrest-skin-name" content="pelt">
+<meta name="generator" content="">
 <title>Apache Derby 10.3.3.0 Release</title>
 <link type="text/css" href="../skin/basic.css" rel="stylesheet">
 <link media="screen" type="text/css" href="../skin/screen.css" 
rel="stylesheet">
@@ -484,7 +485,6 @@ document.write("Last Published: " + docu
                  &nbsp;<input value="+a" class="biggerfont" title="Enlarge 
text" onclick="ndeSetTextSize('incr'); return false;" type="button">
 </div>
 <h1>Apache Derby 10.3.3.0 Release</h1>
-<div id="front-matter">
 <div id="minitoc-area">
 <ul class="minitoc">
 <li>
@@ -523,8 +523,7 @@ document.write("Last Published: " + docu
 </li>
 </ul>
 </div>
-</div>
-<a name="IMPORTANT+NOTICE"></a>
+<a name="N10010"></a><a name="IMPORTANT+NOTICE"></a>
 <h2 class="boxed">IMPORTANT NOTICE</h2>
 <div class="section">
 <p>If you are currently using Derby 10.3.1.4 or Derby 10.3.2.1, it is 
strongly<br> recommended that you upgrade to Derby 10.4.1.3 or 10.3.3.0 to 
avoid<br> any chance of database corruption due to an issue with multiple 
threads<br> accessing a database that is documented in <a class="external" 
href="http://issues.apache.org/jira/browse/DERBY-3347";>DERBY-3347</a>.<br>
@@ -548,7 +547,7 @@ document.write("Last Published: " + docu
 <br> http://db.apache.org/derby/derby_mail.html<br>
 </p>
 </div>
-<a name="Distributions"></a>
+<a name="N10076"></a><a name="Distributions"></a>
 <h2 class="boxed">Distributions</h2>
 <div class="section">
 <p>Use the links below to download a distribution of Apache Derby from one of 
our mirrors. You should <strong>always</strong> <a 
href="#Verifying+releases">verify the integrity</a> of distribution files 
downloaded from a mirror.</p>
@@ -581,7 +580,7 @@ document.write("Last Published: " + docu
 <a class="external" 
href="http://archive.apache.org/dist/db/derby/db-derby-10.3.3.0/derby_ui_plugin_1.1.1.zip";>derby_ui_plugin_1.1.1.zip</a>
 [<a class="external" 
href="http://archive.apache.org/dist/db/derby/db-derby-10.3.3.0/derby_ui_plugin_1.1.1.zip.asc";>PGP</a>]
 [<a class="external" 
href="http://archive.apache.org/dist/db/derby/db-derby-10.3.3.0/derby_ui_plugin_1.1.1.zip.md5";>MD5</a>]</p>
 <p>Please note: both plugins must be installed for full functionality. For 
information on installing and using the Derby plugins for Eclipse, please see 
the <a href="http://db.apache.org/derby/integrate/plugin_howto.html";>Using the 
10 Core and 1.1 UI Derby plug-ins</a> page.</p>
 </div>
-<a name="Release Notes for Derby 10.3.3.0"></a>
+<a name="N10122"></a><a name="Release Notes for Derby 10.3.3.0"></a>
 <h2 class="boxed">Release Notes for Derby 10.3.3.0</h2>
 <div class="section">
 <p>These notes describe the difference between Derby release 10.3.3.0 and the 
preceding release 10.3.2.1.</p>
@@ -599,7 +598,7 @@ document.write("Last Published: " + docu
 <a href="#Build Environment">Build Environment</a>
 </li>
 </ul>
-<a name="Overview"></a>
+<a name="N1013B"></a><a name="Overview"></a>
 <h3 class="boxed">Overview</h3>
 <p>Derby is a pure Java relational database engine using standard SQL and JDBC 
as its APIs.</p>
 <p>Derby functionality includes:</p>
@@ -609,7 +608,7 @@ document.write("Last Published: " + docu
 <li>Network client JDBC drivers</li>
 <li>Command line tools: ij (SQL scripting), dblook (schema dump) and sysinfo 
(system info)</li>
 </ul>
-<a name="Issues"></a>
+<a name="N1014E"></a><a name="Issues"></a>
 <h3 class="boxed">Issues</h3>
 <p>The following issues are addressed by Derby release 10.3.3.0. These issues 
are not addressed in the preceding 10.3.2.1 release.</p>
 <table class="ForrestTable" cellspacing="1" cellpadding="4" border="2">
@@ -807,12 +806,12 @@ document.write("Last Published: " + docu
 </li>
 </ul>
 <hr>
-<a name="Note+for+DERBY-3347"></a>
+<a name="N10308"></a><a name="Note+for+DERBY-3347"></a>
 <h4>Note for DERBY-3347</h4>
-<a name="Summary+of+Change"></a>
+<a name="N1030E"></a><a name="Summary+of+Change"></a>
 <h5>Summary of Change</h5>
 <p>A bug that could cause unrecoverable database corruption has been fixed.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change"></a>
+<a name="N10314"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>A bug that could cause database corruption was introduced in the 10.3 
codeline and affects the following releases:</p>
 <ul>
@@ -826,42 +825,42 @@ ERROR XSDG2: Invalid checksum on Page Pa
 ERROR XSDG3: Meta-data for Container 
org.apache.derby.impl.store.raw.data.RAFContainer4@1afb0c7 could not be accessed
 ERROR XSLA1: Log Record has been sent to the stream, but it cannot be applied 
to the store (Object null). This may cause recovery problems also.
 </pre>
-<a name="Incompatibilities+with+Previous+Release"></a>
+<a name="N10323"></a><a name="Incompatibilities+with+Previous+Release"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>None.</p>
-<a name="Rationale+for+Change"></a>
+<a name="N10329"></a><a name="Rationale+for+Change"></a>
 <h5>Rationale for Change</h5>
 <p>Database corruption is bad.</p>
-<a name="Application+Changes+Required"></a>
+<a name="N1032F"></a><a name="Application+Changes+Required"></a>
 <h5>Application Changes Required</h5>
 <p>No changes are required. However, since the database corruption may go 
unnoticed for a while, users may want to check the consistency of their 
databases after upgrading Derby. The process is described on the following wiki 
page: <a class="external" 
href="http://wiki.apache.org/db-derby/DatabaseConsistencyCheck";>http://wiki.apache.org/db-derby/DatabaseConsistencyCheck</a>
 . If a corruption is detected, restoring the database from backup is the only 
reliable way to recover.</p>
 <hr>
-<a name="Note+for+DERBY-3301"></a>
+<a name="N1033A"></a><a name="Note+for+DERBY-3301"></a>
 <h4>Note for DERBY-3301</h4>
-<a name="Summary+of+Change-N10337"></a>
+<a name="N10340"></a><a name="Summary+of+Change-N10340"></a>
 <h5>Summary of Change</h5>
 <p>Queries with nested EXIST, ANY or IN clauses now return correct results.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N1033D"></a>
+<a name="N10346"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N10346"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>In the previous release, applications that executed SQL statements 
containing nested EXISTS, ANY or IN clauses could see fewer rows than those 
satisfying the query. In particular, rows that had the same value for one of 
the selected columns as another row might not have been returned.</p>
-<a name="Incompatibilities+with+Previous+Release-N10343"></a>
+<a name="N1034C"></a><a 
name="Incompatibilities+with+Previous+Release-N1034C"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>None.</p>
-<a name="Rationale+for+Change-N10349"></a>
+<a name="N10352"></a><a name="Rationale+for+Change-N10352"></a>
 <h5>Rationale for Change</h5>
 <p>The previous behavior violated the ANSI SQL standard. The new behavior is 
correct.</p>
-<a name="Application+Changes+Required-N1034F"></a>
+<a name="N10358"></a><a name="Application+Changes+Required-N10358"></a>
 <h5>Application Changes Required</h5>
 <p>Typically none, but applications must handle that the correct results are 
now returned.</p>
 <hr>
-<a name="Note+for+DERBY-2351"></a>
+<a name="N1035F"></a><a name="Note+for+DERBY-2351"></a>
 <h4>Note for DERBY-2351</h4>
-<a name="Summary+of+Change-N1035C"></a>
+<a name="N10365"></a><a name="Summary+of+Change-N10365"></a>
 <h5>Summary of Change</h5>
 <p>An ORDER BY clause of a DISTINCT query which specifies to order by a column 
which was not in the DISTINCT list is now rejected, because the intent of the 
query is ambiguous. Previously, Derby instead produced non-distinct results. 
Also, an ORDER BY clause which specifies a table-name-qualified column alias is 
now rejected as invalid, where previously it was accepted.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N10362"></a>
+<a name="N1036B"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N1036B"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
-<a name="New+rules+for+DISTINCT+and+ORDER+BY"></a>
+<a name="N1036F"></a><a name="New+rules+for+DISTINCT+and+ORDER+BY"></a>
 <h5>New rules for DISTINCT and ORDER BY</h5>
 <p>Applications which specify certain combinations of SELECT DISTINCT with 
ORDER BY will now receive an error message, whereas formerly such applications 
received non-distinct results.</p>
 <p>As an example, take the following:</p>
@@ -870,7 +869,7 @@ ERROR XSLA1: Log Record has been sent to
 </p>
 <p>The query above is now rejected, with the error message:</p>
 <p>If the AGE column is included in the DISTINCT list in the above query, 
there is no ambiguity</p>
-<a name="New+column+alias+rules"></a>
+<a name="N10387"></a><a name="New+column+alias+rules"></a>
 <h5>New column alias rules</h5>
 <p>Applications which specify a column alias for a column in the SELECT 
statement, and which specify an ORDER BY clause which specifies that column 
alias qualified by the table name, will now receive an error indicating that 
the ORDER BY clause is invalid.</p>
 <p>As an example, take the following:</p>
@@ -880,7 +879,7 @@ ERROR XSLA1: Log Record has been sent to
 <p>select t1.id as idcolumn1, t1.id as idcolumn2 from t1 order by idcolumn1, 
idcolumn2;</p>
 <p>or</p>
 <p>select t1.id as idcolumn1, t1.id as idcolumn2 from t1 order by t1.id, 
t1.id;</p>
-<a name="Rationale+for+Change-N10394"></a>
+<a name="N1039D"></a><a name="Rationale+for+Change-N1039D"></a>
 <h5>Rationale for Change</h5>
 <p>When the query ambiguously specifies both DISTINCT and ORDER BY, Derby was 
unsure whether to return the rows properly ordered, but non-distinct, or to 
return a distinct set of rows, but in an unknown order. Since no clear 
resolution of the ambiguity could be found, we chose instead to reject the 
query.</p>
 <p>The rules for resolving column references in ORDER BY clauses have been 
enhanced to consider column aliases and column names more fully. Derby now uses 
different resolution rules depending on whether the ORDER BY column reference 
is table.column, or just column:</p>
@@ -890,11 +889,11 @@ ERROR XSLA1: Log Record has been sent to
 </ul>
 <br>
 <br>
-<a name="Application+Changes+Required-N103A3"></a>
+<a name="N103AC"></a><a name="Application+Changes+Required-N103AC"></a>
 <h5>Application Changes Required</h5>
 <p>A query which specifies ordering by a non-distinct column should instead 
include the ORDER BY column in the DISTINCT list, to resolve the ambiguity 
about which values of that column should be used to distinctly identify the 
resulting rows.</p>
 <p>A query which specifies table-name.alias-name should be rewritten to 
specify either simply alias-name, or table-name.column-name.</p>
-<a name="Build+Environment"></a>
+<a name="N103B4"></a><a name="Build+Environment"></a>
 <h3 class="boxed">Build Environment</h3>
 <p>Derby release 10.3.3.0 was built using the following environment:</p>
 <ul>
@@ -916,7 +915,7 @@ ERROR XSLA1: Log Record has been sent to
 <strong>JSR 169</strong> - Java ME support was built using Java ME 
CDC/Foundation Specification 1.1 libraries from IBM WebSphere Everyplace Micro 
Environment 6.1</li>
 </ul>
 </div>
-<a name="Verifying+releases"></a>
+<a name="N103DD"></a><a name="Verifying+releases"></a>
 <h2 class="boxed">Verifying releases</h2>
 <div class="section">
 <p>It is essential that you verify the integrity of the downloaded files using 
the PGP and MD5 signatures. MD5 verification ensures the file was not corrupted 
during the download process. PGP verification ensures that the file came from a 
certain person.</p>
@@ -955,7 +954,7 @@ document.write("Last Published: " + docu
 </div>
 <div class="copyright">
         Copyright &copy;
-         2004-2015 Apache, Apache DB, Apache Derby, Apache Torque, Apache JDO, 
Apache DDLUtils, the Derby hat logo, the Apache JDO logo, and the Apache 
feather logo are trademarks of The Apache Software Foundation. All other marks 
mentioned may be trademarks or registered trademarks of their respective 
owners.</div>
+         2004-2017 Apache, Apache DB, Apache Derby, Apache Torque, Apache JDO, 
Apache DDLUtils, the Derby hat logo, the Apache JDO logo, and the Apache 
feather logo are trademarks of The Apache Software Foundation. All other marks 
mentioned may be trademarks or registered trademarks of their respective 
owners.</div>
 <div id="feedback">
     Send feedback about the website to:
   <a id="feedbackto" 
href="mailto:[email protected]?subject=Feedback%C2%A0releases/release-10.3.3.0.html";>[email protected]</a>

Modified: websites/production/db/content/derby/releases/release-10.4.1.3.html
==============================================================================
--- websites/production/db/content/derby/releases/release-10.4.1.3.html 
(original)
+++ websites/production/db/content/derby/releases/release-10.4.1.3.html Sat Oct 
14 18:58:50 2017
@@ -3,8 +3,9 @@
 <head>
 <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <meta content="Apache Forrest" name="Generator">
-<meta name="Forrest-version" content="0.9">
+<meta name="Forrest-version" content="0.8">
 <meta name="Forrest-skin-name" content="pelt">
+<meta name="generator" content="">
 <title>Apache Derby 10.4.1.3 Release</title>
 <link type="text/css" href="../skin/basic.css" rel="stylesheet">
 <link media="screen" type="text/css" href="../skin/screen.css" 
rel="stylesheet">
@@ -484,7 +485,6 @@ document.write("Last Published: " + docu
                  &nbsp;<input value="+a" class="biggerfont" title="Enlarge 
text" onclick="ndeSetTextSize('incr'); return false;" type="button">
 </div>
 <h1>Apache Derby 10.4.1.3 Release</h1>
-<div id="front-matter">
 <div id="minitoc-area">
 <ul class="minitoc">
 <li>
@@ -538,8 +538,7 @@ document.write("Last Published: " + docu
 </li>
 </ul>
 </div>
-</div>
-<a name="Distributions"></a>
+<a name="N10010"></a><a name="Distributions"></a>
 <h2 class="boxed">Distributions</h2>
 <div class="section">
 <p>Use the links below to download a distribution of Apache Derby from one of 
our mirrors. You should <strong>always</strong> <a 
href="#Verifying+releases">verify the integrity</a> of distribution files 
downloaded from a mirror.</p>
@@ -572,11 +571,11 @@ document.write("Last Published: " + docu
 <a class="external" 
href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/derby_ui_plugin_1.1.2.zip";>derby_ui_plugin_1.1.2.zip</a>
 [<a class="external" 
href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/derby_ui_plugin_1.1.2.zip.asc";>PGP</a>]
 [<a class="external" 
href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/derby_ui_plugin_1.1.2.zip.md5";>MD5</a>]</p>
 <p>Please note: both plugins must be installed for full functionality. For 
information on installing and using the Derby plugins for Eclipse, please see 
the <a href="http://db.apache.org/derby/integrate/plugin_howto.html";>Using the 
10 Core and 1.1 UI Derby plug-ins</a> page.</p>
 </div>
-<a name="Release Notes for Derby 10.4.1.3"></a>
+<a name="N100BC"></a><a name="Release Notes for Derby 10.4.1.3"></a>
 <h2 class="boxed">Release Notes for Derby 10.4.1.3</h2>
 <div class="section">
 <p>These notes describe the difference between Derby release 10.4.1.3 and the 
preceding release 10.3.2.1.</p>
-<a name="Overview"></a>
+<a name="N100C4"></a><a name="Overview"></a>
 <h3 class="boxed">Overview</h3>
 <p>Derby is a pure Java relational database engine using standard SQL and JDBC 
as its APIs.</p>
 <p>Derby functionality includes:</p>
@@ -586,7 +585,7 @@ document.write("Last Published: " + docu
 <li>Network client JDBC drivers</li>
 <li>Command line tools: ij (SQL scripting), dblook (schema dump) and sysinfo 
(system info)</li>
 </ul>
-<a name="New+Features"></a>
+<a name="N100D7"></a><a name="New+Features"></a>
 <h3 class="boxed">New Features</h3>
 <p>This is a feature release. The following new features were added:</p>
 <ul>
@@ -601,7 +600,7 @@ document.write("Last Published: " + docu
 <li>Caching of the isolation level and the current schema in the client 
driver.</li>
 <li>Implement a new multi-threaded buffer manager to get better scalability on 
machines with multiple CPUs or multiple cores.</li>
 </ul>
-<a name="Bug+Fixes"></a>
+<a name="N100F7"></a><a name="Bug+Fixes"></a>
 <h3 class="boxed">Bug Fixes</h3>
 <p>The following issues are addressed by Derby release 10.4.1.3. These issues 
are not addressed in the preceding 10.3.2.1 release.</p>
 <table class="ForrestTable" cellspacing="1" cellpadding="4" border="2">
@@ -822,7 +821,7 @@ document.write("Last Published: " + docu
 <td><a class="external" 
href="http://issues.apache.org/jira/browse/DERBY-1573";>DERBY-1573</a></td><td>Unsafe
 synchronization in NetworkServerControlImpl</td>
 </tr>
 </table>
-<a name="Issues"></a>
+<a name="N102F9"></a><a name="Issues"></a>
 <h3 class="boxed">Issues</h3>
 <p>Compared with the previous release (10.3.2.1), Derby release 10.4.1.3 
introduces the following new features and incompatibilities. These merit your 
special attention.</p>
 <ul>
@@ -856,12 +855,12 @@ document.write("Last Published: " + docu
 </li>
 </ul>
 <hr>
-<a name="Note+for+DERBY-3585"></a>
+<a name="N1032F"></a><a name="Note+for+DERBY-3585"></a>
 <h4>Note for DERBY-3585</h4>
-<a name="Summary+of+Change"></a>
+<a name="N10335"></a><a name="Summary+of+Change"></a>
 <h5>Summary of Change</h5>
 <p>Shutting down the Network Server now supports user authentication, and in 
fact requires credentials when authentication is enabled.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change"></a>
+<a name="N1033B"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>Previously, a network server running with user authentication didn't check 
for user credentials for server shutdown. Any client could shut down the server 
by calling NetworkServerControl with a shutdown command-line argument or by 
invoking the shutdown() method (provided the shutdown was initiated on the host 
running the server). While this generated a console warning (Connection refused 
: Invalid authentication.), the server shutdown proceeded and could also result 
in open databases not being properly closed.</p>
 <p>Now, class NetworkServerControl supports user and password information as 
command-line and constructor arguments. When running a network server with user 
authentication, a server shutdown now requires user credentials; if the user 
authentication check fails, the client sees an authentication error and the 
running server remains intact. Note that Derby does not yet restrict the 
shutdown privilege to specific users: the server can be shut down by any user 
on the server machine who presents valid credentials.</p>
@@ -876,7 +875,7 @@ document.write("Last Published: " + docu
 </ul>
 <br>
 <br>
-<a name="Incompatibilities+with+Previous+Release"></a>
+<a name="N10351"></a><a name="Incompatibilities+with+Previous+Release"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>If running a network server without user authentication (the default) no 
command-line or API incompatibilities will be experienced.</p>
 <p>However, some incompatibilities were introduced if running a network server 
with user authentication:</p>
@@ -893,90 +892,90 @@ document.write("Last Published: " + docu
 </ol>
 <br>
 <br>
-<a name="Rationale+for+Change"></a>
+<a name="N10394"></a><a name="Rationale+for+Change"></a>
 <h5>Rationale for Change</h5>
 <p>The previous behavior represented a security issue, because any client 
could shut down a network server running with user authentication from the same 
host without needing to provide user credentials.</p>
-<a name="Application+Changes+Required"></a>
+<a name="N1039A"></a><a name="Application+Changes+Required"></a>
 <h5>Application Changes Required</h5>
 <p>Application code and scripts will need to be adjusted to provide user 
credentials for shutting down a network server that runs with user 
authentication.</p>
 <hr>
-<a name="Note+for+DERBY-3460"></a>
+<a name="N103A1"></a><a name="Note+for+DERBY-3460"></a>
 <h4>Note for DERBY-3460</h4>
-<a name="Summary+of+Change-N1039E"></a>
+<a name="N103A7"></a><a name="Summary+of+Change-N103A7"></a>
 <h5>Summary of Change</h5>
 <p>The two following reserved keywords are introduced: <span 
class="codefrag">NONE</span> and <span class="codefrag">CURRENT_ROLE</span>.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N103AA"></a>
+<a name="N103B3"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N103B3"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
-<a name="Incompatibilities+with+Previous+Release-N103AE"></a>
+<a name="N103B7"></a><a 
name="Incompatibilities+with+Previous+Release-N103B7"></a>
 <h5>Incompatibilities with Previous Release</h5>
-<a name="Rationale+for+Change-N103B2"></a>
+<a name="N103BB"></a><a name="Rationale+for+Change-N103BB"></a>
 <h5>Rationale for Change</h5>
-<a name="Application+Changes+Required-N103B6"></a>
+<a name="N103BF"></a><a name="Application+Changes+Required-N103BF"></a>
 <h5>Application Changes Required</h5>
 <hr>
-<a name="Note+for+DERBY-3301"></a>
+<a name="N103C4"></a><a name="Note+for+DERBY-3301"></a>
 <h4>Note for DERBY-3301</h4>
-<a name="Summary+of+Change-N103C1"></a>
+<a name="N103CA"></a><a name="Summary+of+Change-N103CA"></a>
 <h5>Summary of Change</h5>
 <p>Queries with nested EXIST, ANY or IN clauses now return correct results.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N103C7"></a>
+<a name="N103D0"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N103D0"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>In the previous release, applications that executed SQL statements 
containing nested EXISTS, ANY or IN clauses could see fewer rows than those 
satisfying the query. In particular, rows that had the same value for one of 
the selected columns as another row might not have been returned.</p>
-<a name="Incompatibilities+with+Previous+Release-N103CD"></a>
+<a name="N103D6"></a><a 
name="Incompatibilities+with+Previous+Release-N103D6"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>None.</p>
-<a name="Rationale+for+Change-N103D3"></a>
+<a name="N103DC"></a><a name="Rationale+for+Change-N103DC"></a>
 <h5>Rationale for Change</h5>
 <p>The previous behavior violated the ANSI SQL standard. The new behavior is 
correct.</p>
-<a name="Application+Changes+Required-N103D9"></a>
+<a name="N103E2"></a><a name="Application+Changes+Required-N103E2"></a>
 <h5>Application Changes Required</h5>
 <p>Typically none, but applications must handle that the correct results are 
now returned.</p>
 <hr>
-<a name="Note+for+DERBY-3026"></a>
+<a name="N103E9"></a><a name="Note+for+DERBY-3026"></a>
 <h4>Note for DERBY-3026</h4>
-<a name="Summary+of+Change-N103E6"></a>
+<a name="N103EF"></a><a name="Summary+of+Change-N103EF"></a>
 <h5>Summary of Change</h5>
 <p>The <span class="codefrag">frameworks</span> directory (and its contents) 
has been removed.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N103EF"></a>
+<a name="N103F8"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N103F8"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p></p>
-<span class="codefrag">frameworks</span><a 
name="Incompatibilities+with+Previous+Release-N103F6"></a>
+<span class="codefrag">frameworks</span><a name="N103FF"></a><a 
name="Incompatibilities+with+Previous+Release-N103FF"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>Applications or commands referencing files in the <span 
class="codefrag">frameworks</span> directory will fail.</p>
-<a name="Rationale+for+Change-N103FF"></a>
+<a name="N10408"></a><a name="Rationale+for+Change-N10408"></a>
 <h5>Rationale for Change</h5>
 <p>In the 10.2.1.6 release, new and improved scripts were added in a new <span 
class="codefrag">bin</span> directory, intended to replace the scripts in the 
<span class="codefrag">frameworks</span> directory. The new scripts follow 
Apache conventions, and all scripts are located in a single directory, making 
them easier to find. Removing the old and deprecated scripts and the <span 
class="codefrag">frameworks</span> directory itself will eliminate a potential 
source of confusion and annoyance among users.</p>
 <p>The <span class="codefrag">frameworks</span> directory has been deprecated 
since the 10.2.1.6 release, and has not been maintained since then. The 
10.2.1.6 release notes announced the deprecation of the scripts in the <span 
class="codefrag">frameworks</span> directory, and an additional file (<span 
class="codefrag">frameworks.DEPRECATED.txt</span>) was added in the top-level 
directory of the 10.3.1.4 release, with the purpose of alerting users about 
this change. A warning message was also added to the scripts in the <span 
class="codefrag">frameworks</span> directory at the same time.</p>
-<a name="Application+Changes+Required-N1041C"></a>
+<a name="N10425"></a><a name="Application+Changes+Required-N10425"></a>
 <h5>Application Changes Required</h5>
 <p>All references to the <span class="codefrag">frameworks</span> directory or 
its contents must be updated. The scripts in the <span 
class="codefrag">bin</span> directory may be used instead of the old 
scripts.</p>
 <hr>
-<a name="Note+for+DERBY-3013"></a>
+<a name="N10432"></a><a name="Note+for+DERBY-3013"></a>
 <h4>Note for DERBY-3013</h4>
-<a name="Summary+of+Change-N1042F"></a>
+<a name="N10438"></a><a name="Summary+of+Change-N10438"></a>
 <h5>Summary of Change</h5>
 <p>The column default value can now also be specified as CURRENT_USER or 
SESSION_USER.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N10435"></a>
+<a name="N1043E"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N1043E"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>None</p>
-<a name="Incompatibilities+with+Previous+Release-N1043B"></a>
+<a name="N10444"></a><a 
name="Incompatibilities+with+Previous+Release-N10444"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>None</p>
-<a name="Rationale+for+Change-N10441"></a>
+<a name="N1044A"></a><a name="Rationale+for+Change-N1044A"></a>
 <h5>Rationale for Change</h5>
 <p>Extend Derby's support for standard SQL constructions.</p>
-<a name="Application+Changes+Required-N10447"></a>
+<a name="N10450"></a><a name="Application+Changes+Required-N10450"></a>
 <h5>Application Changes Required</h5>
 <p>None.</p>
 <hr>
-<a name="Note+for+DERBY-2351"></a>
+<a name="N10457"></a><a name="Note+for+DERBY-2351"></a>
 <h4>Note for DERBY-2351</h4>
-<a name="Summary+of+Change-N10454"></a>
+<a name="N1045D"></a><a name="Summary+of+Change-N1045D"></a>
 <h5>Summary of Change</h5>
 <p>An ORDER BY clause of a DISTINCT query which specifies to order by a column 
which was not in the DISTINCT list is now rejected, because the intent of the 
query is ambiguous. Previously, Derby instead produced non-distinct results. 
Also, an ORDER BY clause which specifies a table-name-qualified column alias is 
now rejected as invalid, where previously it was accepted.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N1045A"></a>
+<a name="N10463"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N10463"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
-<a name="New+rules+for+DISTINCT+and+ORDER+BY"></a>
+<a name="N10467"></a><a name="New+rules+for+DISTINCT+and+ORDER+BY"></a>
 <h5>New rules for DISTINCT and ORDER BY</h5>
 <p>Applications which specify certain combinations of SELECT DISTINCT with 
ORDER BY will now receive an error message, whereas formerly such applications 
received non-distinct results.</p>
 <p>As an example, take the following:</p>
@@ -985,7 +984,7 @@ document.write("Last Published: " + docu
 </p>
 <p>The query above is now rejected, with the error message:</p>
 <p>If the AGE column is included in the DISTINCT list in the above query, 
there is no ambiguity</p>
-<a name="New+column+alias+rules"></a>
+<a name="N1047F"></a><a name="New+column+alias+rules"></a>
 <h5>New column alias rules</h5>
 <p>Applications which specify a column alias for a column in the SELECT 
statement, and which specify an ORDER BY clause which specifies that column 
alias qualified by the table name, will now receive an error indicating that 
the ORDER BY clause is invalid.</p>
 <p>As an example, take the following:</p>
@@ -995,7 +994,7 @@ document.write("Last Published: " + docu
 <p>select t1.id as idcolumn1, t1.id as idcolumn2 from t1 order by idcolumn1, 
idcolumn2;</p>
 <p>or</p>
 <p>select t1.id as idcolumn1, t1.id as idcolumn2 from t1 order by t1.id, 
t1.id;</p>
-<a name="Rationale+for+Change-N1048C"></a>
+<a name="N10495"></a><a name="Rationale+for+Change-N10495"></a>
 <h5>Rationale for Change</h5>
 <p>When the query ambiguously specifies both DISTINCT and ORDER BY, Derby was 
unsure whether to return the rows properly ordered, but non-distinct, or to 
return a distinct set of rows, but in an unknown order. Since no clear 
resolution of the ambiguity could be found, we chose instead to reject the 
query.</p>
 <p>The rules for resolving column references in ORDER BY clauses have been 
enhanced to consider column aliases and column names more fully. Derby now uses 
different resolution rules depending on whether the ORDER BY column reference 
is table.column, or just column:</p>
@@ -1005,29 +1004,29 @@ document.write("Last Published: " + docu
 </ul>
 <br>
 <br>
-<a name="Application+Changes+Required-N1049B"></a>
+<a name="N104A4"></a><a name="Application+Changes+Required-N104A4"></a>
 <h5>Application Changes Required</h5>
 <p>A query which specifies ordering by a non-distinct column should instead 
include the ORDER BY column in the DISTINCT list, to resolve the ambiguity 
about which values of that column should be used to distinctly identify the 
resulting rows.</p>
 <p>A query which specifies table-name.alias-name should be rewritten to 
specify either simply alias-name, or table-name.column-name.</p>
 <hr>
-<a name="Note+for+DERBY-2065"></a>
+<a name="N104AD"></a><a name="Note+for+DERBY-2065"></a>
 <h4>Note for DERBY-2065</h4>
-<a name="Summary+of+Change-N104AA"></a>
+<a name="N104B3"></a><a name="Summary+of+Change-N104B3"></a>
 <h5>Summary of Change</h5>
 <p>Error code changed for embedded connection when a connection with an open 
transaction is attempted closed.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N104B0"></a>
+<a name="N104B9"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N104B9"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>In the previous release, calling Connection.close() on a connection with an 
open transaction raised an error with error code 25001 with the client driver, 
whereas the embedded driver raised error code 25000. The embedded driver has 
now been changed to raise the same error code as the client driver, i.e. 25001, 
as specified by the SQL standard.</p>
-<a name="Incompatibilities+with+Previous+Release-N104B6"></a>
+<a name="N104BF"></a><a 
name="Incompatibilities+with+Previous+Release-N104BF"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>Embedded applications that are dependent on the error code <em>ever</em> 
being "25000" could start failing. Embedded applications that are dependent on 
the error code <em>never</em> being "25001" could start failing.</p>
-<a name="Rationale+for+Change-N104C2"></a>
+<a name="N104CB"></a><a name="Rationale+for+Change-N104CB"></a>
 <h5>Rationale for Change</h5>
 <p>Harmonize error codes raised by the client and embedded drivers, thereby 
also making the embedded driver compatible with the SQL standard.</p>
-<a name="Application+Changes+Required-N104C8"></a>
+<a name="N104D1"></a><a name="Application+Changes+Required-N104D1"></a>
 <h5>Application Changes Required</h5>
 <p>Applications that are dependent on the error code must be changed to expect 
the new code.</p>
-<a name="Build+Environment"></a>
+<a name="N104D7"></a><a name="Build+Environment"></a>
 <h3 class="boxed">Build Environment</h3>
 <p>Derby release 10.4.1.3 was built using the following environment:</p>
 <ul>
@@ -1049,7 +1048,7 @@ document.write("Last Published: " + docu
 <strong>JSR 169</strong> - J2ME support was built using java.sun.com/j2me 
(cdc-1_1-fr-ri, jdbc_cdc1.0).</li>
 </ul>
 </div>
-<a name="Verifying+releases"></a>
+<a name="N10500"></a><a name="Verifying+releases"></a>
 <h2 class="boxed">Verifying releases</h2>
 <div class="section">
 <p>It is essential that you verify the integrity of the downloaded files using 
the PGP and MD5 signatures. MD5 verification ensures the file was not corrupted 
during the download process. PGP verification ensures that the file came from a 
certain person.</p>
@@ -1088,7 +1087,7 @@ document.write("Last Published: " + docu
 </div>
 <div class="copyright">
         Copyright &copy;
-         2004-2015 Apache, Apache DB, Apache Derby, Apache Torque, Apache JDO, 
Apache DDLUtils, the Derby hat logo, the Apache JDO logo, and the Apache 
feather logo are trademarks of The Apache Software Foundation. All other marks 
mentioned may be trademarks or registered trademarks of their respective 
owners.</div>
+         2004-2017 Apache, Apache DB, Apache Derby, Apache Torque, Apache JDO, 
Apache DDLUtils, the Derby hat logo, the Apache JDO logo, and the Apache 
feather logo are trademarks of The Apache Software Foundation. All other marks 
mentioned may be trademarks or registered trademarks of their respective 
owners.</div>
 <div id="feedback">
     Send feedback about the website to:
   <a id="feedbackto" 
href="mailto:[email protected]?subject=Feedback%C2%A0releases/release-10.4.1.3.html";>[email protected]</a>

Modified: websites/production/db/content/derby/releases/release-10.4.2.0.html
==============================================================================
--- websites/production/db/content/derby/releases/release-10.4.2.0.html 
(original)
+++ websites/production/db/content/derby/releases/release-10.4.2.0.html Sat Oct 
14 18:58:50 2017
@@ -3,8 +3,9 @@
 <head>
 <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <meta content="Apache Forrest" name="Generator">
-<meta name="Forrest-version" content="0.9">
+<meta name="Forrest-version" content="0.8">
 <meta name="Forrest-skin-name" content="pelt">
+<meta name="generator" content="">
 <title>Apache Derby 10.4.2.0 Release</title>
 <link type="text/css" href="../skin/basic.css" rel="stylesheet">
 <link media="screen" type="text/css" href="../skin/screen.css" 
rel="stylesheet">
@@ -484,7 +485,6 @@ document.write("Last Published: " + docu
                  &nbsp;<input value="+a" class="biggerfont" title="Enlarge 
text" onclick="ndeSetTextSize('incr'); return false;" type="button">
 </div>
 <h1>Apache Derby 10.4.2.0 Release</h1>
-<div id="front-matter">
 <div id="minitoc-area">
 <ul class="minitoc">
 <li>
@@ -523,8 +523,7 @@ document.write("Last Published: " + docu
 </li>
 </ul>
 </div>
-</div>
-<a name="Distributions"></a>
+<a name="N10010"></a><a name="Distributions"></a>
 <h2 class="boxed">Distributions</h2>
 <div class="section">
 <p>Use the links below to download a distribution of Apache Derby from one of 
our mirrors. You should <strong>always</strong> <a 
href="#Verifying+releases">verify the integrity</a> of distribution files 
downloaded from a mirror.</p>
@@ -557,11 +556,11 @@ document.write("Last Published: " + docu
 <a class="external" 
href="http://archive.apache.org/dist/db/derby/db-derby-10.4.2.0/derby_ui_plugin_1.1.2.zip";>derby_ui_plugin_1.1.2.zip</a>
 [<a class="external" 
href="http://archive.apache.org/dist/db/derby/db-derby-10.4.2.0/derby_ui_plugin_1.1.2.zip.asc";>PGP</a>]
 [<a class="external" 
href="http://archive.apache.org/dist/db/derby/db-derby-10.4.2.0/derby_ui_plugin_1.1.2.zip.md5";>MD5</a>]</p>
 <p>Please note: both plugins must be installed for full functionality. For 
information on installing and using the Derby plugins for Eclipse, please see 
the <a href="http://db.apache.org/derby/integrate/plugin_howto.html";>Using the 
10 Core and 1.1 UI Derby plug-ins</a> page.</p>
 </div>
-<a name="Release Notes for Derby 10.4.2.0"></a>
+<a name="N100BC"></a><a name="Release Notes for Derby 10.4.2.0"></a>
 <h2 class="boxed">Release Notes for Derby 10.4.2.0</h2>
 <div class="section">
 <p>These notes describe the difference between Derby release 10.4.2.0 and the 
preceding release 10.4.1.3.</p>
-<a name="Overview"></a>
+<a name="N100C4"></a><a name="Overview"></a>
 <h3 class="boxed">Overview</h3>
 <p>Derby is a pure Java relational database engine using standard SQL and JDBC 
as its APIs.</p>
 <p>Derby functionality includes:</p>
@@ -571,10 +570,10 @@ document.write("Last Published: " + docu
 <li>Network client JDBC drivers</li>
 <li>Command line tools: ij (SQL scripting), dblook (schema dump), and sysinfo 
(system info)</li>
 </ul>
-<a name="New+Features"></a>
+<a name="N100D7"></a><a name="New+Features"></a>
 <h3 class="boxed">New Features</h3>
 <p>This is a maintenance release. No new features were added.</p>
-<a name="Bug+Fixes"></a>
+<a name="N100DF"></a><a name="Bug+Fixes"></a>
 <h3 class="boxed">Bug Fixes</h3>
 <p>The following issues are addressed by Derby release 10.4.2.0. These issues 
are not addressed in the preceding 10.4.1.3 release.</p>
 <table class="ForrestTable" cellspacing="1" cellpadding="4" border="2">
@@ -792,7 +791,7 @@ document.write("Last Published: " + docu
 <td><a class="external" 
href="http://issues.apache.org/jira/browse/DERBY-48";>DERBY-48</a></td><td>A 
connection request that has a default schema that is being created by another 
transaction will fail to connect</td>
 </tr>
 </table>
-<a name="Issues"></a>
+<a name="N102DA"></a><a name="Issues"></a>
 <h3 class="boxed">Issues</h3>
 <p>Compared with the previous release (10.4.1.3), Derby release 10.4.2.0 
introduces the following new features and incompatibilities. These merit your 
special attention.</p>
 <ul>
@@ -806,46 +805,46 @@ document.write("Last Published: " + docu
 </li>
 </ul>
 <hr>
-<a name="Note+for+DERBY-3701"></a>
+<a name="N102F1"></a><a name="Note+for+DERBY-3701"></a>
 <h4>Note for DERBY-3701</h4>
-<a name="Summary+of+Change"></a>
+<a name="N102F7"></a><a name="Summary+of+Change"></a>
 <h5>Summary of Change</h5>
 <p>An error message will be logged to derby.log if the Network Server tracing 
file cannot be created. Starting with version 10.5, the Network Server will 
attempt to create the trace directory if it does not exist. Any intervening 
directories in the given path will also be created if possible.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change"></a>
+<a name="N102FD"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>Before the fix for DERBY-3110, if derby.drda.traceAll was set to true and 
the derby.drda.traceDirectory was set to a non-existent directory, no tracing 
would occur and no error would occur. After the fix for DERBY-3110, an error 
"java.lang.Exception: DRDA_UnableToAccept.S:Unable to accept connections" would 
occur and the client would hang and no tracing would occur. With this fix for 
version 10.5 and higher, the Network Server will attempt to create the trace 
directory if possible. For 10.4.2 (and the next release on the 10.3 branch), 
the Network Server will still not try to create the directory. For all these 
releases the Network Server will print an error on session connect if there is 
any problem creating the trace file, but the Network Server will not cause the 
session connection to fail. Users who have trace turned on and the trace 
directory set to a non-existent directory may now see exceptions in the 
derby.log on connect indicating that the trace file is not found <strong>
 or</strong> with 10.5 or higher they may see tracing occur where it did not 
before.</p>
-<a name="Incompatibilities+with+Previous+Release"></a>
+<a name="N10306"></a><a name="Incompatibilities+with+Previous+Release"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>Tracing properties will not be ignored or cause the client to hang if the 
trace directory is set to a non-existent directory.</p>
-<a name="Rationale+for+Change"></a>
+<a name="N1030C"></a><a name="Rationale+for+Change"></a>
 <h5>Rationale for Change</h5>
 <p>The tracing properties should not be summarily ignored or cause the client 
to hang if the trace directory does not exist.</p>
-<a name="Application+Changes+Required"></a>
+<a name="N10312"></a><a name="Application+Changes+Required"></a>
 <h5>Application Changes Required</h5>
 <p>Applications that counted on the derby.drda.traceAll property being ignored 
if derby.drda.traceDirectory was set to a non-existent directory, need to turn 
tracing off or they may now see many errors in the derby.log or large amounts 
of tracing.</p>
 <hr>
-<a name="Note+for+DERBY-48"></a>
+<a name="N10319"></a><a name="Note+for+DERBY-48"></a>
 <h4>Note for DERBY-48</h4>
-<a name="Summary+of+Change-N10316"></a>
+<a name="N1031F"></a><a name="Summary+of+Change-N1031F"></a>
 <h5>Summary of Change</h5>
 <p>In Derby, a user's <strong>initial default schema</strong> is named the 
same as the user name, or APP if a user is not provided at connect time. This 
schema is implicitly auto-created the first time a schema object is created in 
that schema.</p>
 <p>Previously, this auto-creation would be performed as part of the user 
transaction. This would sometimes lead to locking issues as described in this 
issue. With this change, the auto-creation is now performed and committed 
immediately in a separate sub-transaction.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N10321"></a>
+<a name="N1032A"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N1032A"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>The initial default schema will be present in cases where it previously 
would not yet have been created: If the user transaction that creates a schema 
object leading to auto-creation of the initial default schema rolls back for 
some reason after having created the schema, up till now the auto-creation of 
the initial default schema would be rolled back as well. Since it is now 
created and committed in a sub-transaction, the schema creation will not be 
rolled back: the default schema will persist.</p>
-<a name="Incompatibilities+with+Previous+Release-N10327"></a>
+<a name="N10330"></a><a 
name="Incompatibilities+with+Previous+Release-N10330"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>Most applications should not be impacted by this change, but there are some 
corner cases as described below:</p>
 <p>If the application tests for the existence of the initial default schema by 
querying Derby system tables, the results could now be different than in 
earlier releases, if the test is made after a rollback as described in the 
previous section.</p>
 <p>Since the initial default schema will now potentially exist in cases where 
it would previously not exist, schema operations may be impacted, e.g. where 
before a DROP SCHEMA &lt;default schema name&gt; RESTRICT would fail due to it 
not yet existing, it could now work (if empty), depending on when the drop 
attempt is made.</p>
-<a name="Rationale+for+Change-N10331"></a>
+<a name="N1033A"></a><a name="Rationale+for+Change-N1033A"></a>
 <h5>Rationale for Change</h5>
 <p>Implicit schema creation is now performed in its own transaction to avoid 
deadlocks with other connections accessing the same schema.</p>
 <p>Doing this is a separate transaction avoids holding dictionary locks longer 
than necessary, cf. <a class="external" 
href="https://issues.apache.org/jira/browse/DERBY-48";>DERBY-48</a> and thus 
reduces the chance for deadlocks.</p>
-<a name="Application+Changes+Required-N1033D"></a>
+<a name="N10346"></a><a name="Application+Changes+Required-N10346"></a>
 <h5>Application Changes Required</h5>
 <p>Verify that the application code does not rely on the initial default 
schema being absent after a rollback.</p>
-<a name="Build+Environment"></a>
+<a name="N1034C"></a><a name="Build+Environment"></a>
 <h3 class="boxed">Build Environment</h3>
 <p>Derby release 10.4.2.0 was built using the following environment:</p>
 <ul>
@@ -867,7 +866,7 @@ document.write("Last Published: " + docu
 <strong>JSR 169</strong> - J2ME libraries were supplied by 
phoneme.dev.java.net (CDC, Foundation Profile, and Personal Basis Profile 
meeting the 1.1.2 specifications). JSR169 libraries were supplied by 
java.sun.com.</li>
 </ul>
 </div>
-<a name="Verifying+releases"></a>
+<a name="N10375"></a><a name="Verifying+releases"></a>
 <h2 class="boxed">Verifying releases</h2>
 <div class="section">
 <p>It is essential that you verify the integrity of the downloaded files using 
the PGP and MD5 signatures. MD5 verification ensures the file was not corrupted 
during the download process. PGP verification ensures that the file came from a 
certain person.</p>
@@ -906,7 +905,7 @@ document.write("Last Published: " + docu
 </div>
 <div class="copyright">
         Copyright &copy;
-         2004-2015 Apache, Apache DB, Apache Derby, Apache Torque, Apache JDO, 
Apache DDLUtils, the Derby hat logo, the Apache JDO logo, and the Apache 
feather logo are trademarks of The Apache Software Foundation. All other marks 
mentioned may be trademarks or registered trademarks of their respective 
owners.</div>
+         2004-2017 Apache, Apache DB, Apache Derby, Apache Torque, Apache JDO, 
Apache DDLUtils, the Derby hat logo, the Apache JDO logo, and the Apache 
feather logo are trademarks of The Apache Software Foundation. All other marks 
mentioned may be trademarks or registered trademarks of their respective 
owners.</div>
 <div id="feedback">
     Send feedback about the website to:
   <a id="feedbackto" 
href="mailto:[email protected]?subject=Feedback%C2%A0releases/release-10.4.2.0.html";>[email protected]</a>

Modified: websites/production/db/content/derby/releases/release-10.5.1.1.html
==============================================================================
--- websites/production/db/content/derby/releases/release-10.5.1.1.html 
(original)
+++ websites/production/db/content/derby/releases/release-10.5.1.1.html Sat Oct 
14 18:58:50 2017
@@ -3,8 +3,9 @@
 <head>
 <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <meta content="Apache Forrest" name="Generator">
-<meta name="Forrest-version" content="0.9">
+<meta name="Forrest-version" content="0.8">
 <meta name="Forrest-skin-name" content="pelt">
+<meta name="generator" content="">
 <title>Apache Derby 10.5.1.1 Release</title>
 <link type="text/css" href="../skin/basic.css" rel="stylesheet">
 <link media="screen" type="text/css" href="../skin/screen.css" 
rel="stylesheet">
@@ -484,7 +485,6 @@ document.write("Last Published: " + docu
                  &nbsp;<input value="+a" class="biggerfont" title="Enlarge 
text" onclick="ndeSetTextSize('incr'); return false;" type="button">
 </div>
 <h1>Apache Derby 10.5.1.1 Release</h1>
-<div id="front-matter">
 <div id="minitoc-area">
 <ul class="minitoc">
 <li>
@@ -562,8 +562,7 @@ document.write("Last Published: " + docu
 </li>
 </ul>
 </div>
-</div>
-<a name="Distributions"></a>
+<a name="N10010"></a><a name="Distributions"></a>
 <h2 class="boxed">Distributions</h2>
 <div class="section">
 <p>Use the links below to download a distribution of Apache Derby. You should 
<strong>always</strong> <a href="#Verifying+releases">verify the integrity</a> 
of distribution files downloaded from a mirror.</p>
@@ -596,11 +595,11 @@ document.write("Last Published: " + docu
 <a class="external" 
href="http://archive.apache.org/dist/db/derby/db-derby-10.5.1.1/derby_ui_doc_plugin_1.1.2.zip";>derby_ui_doc_plugin_1.1.2.zip</a>
 [<a class="external" 
href="http://archive.apache.org/dist/db/derby/db-derby-10.5.1.1/derby_ui_doc_plugin_1.1.2.zip.asc";>PGP</a>]
 [<a class="external" 
href="http://archive.apache.org/dist/db/derby/db-derby-10.5.1.1/derby_ui_doc_plugin_1.1.2.zip.md5";>MD5</a>]</p>
 <p>Please note: both plugins must be installed for full functionality. For 
information on installing and using the Derby plugins for Eclipse, please see 
the <a href="http://db.apache.org/derby/integrate/plugin_howto.html";>Using the 
10 Core and 1.1 UI Derby plug-ins</a> page.</p>
 </div>
-<a name="Release Notes for Derby 10.5.1.1"></a>
+<a name="N100BC"></a><a name="Release Notes for Derby 10.5.1.1"></a>
 <h2 class="boxed">Release Notes for Derby 10.5.1.1</h2>
 <div class="section">
 <p>These notes describe the difference between Derby release 10.5.1.1 and the 
preceding release 10.4.2.0.</p>
-<a name="Overview"></a>
+<a name="N100C4"></a><a name="Overview"></a>
 <h3 class="boxed">Overview</h3>
 <p>Derby is a pure Java relational database engine using standard SQL and JDBC 
as its APIs.</p>
 <p>Derby functionality includes:</p>
@@ -610,7 +609,7 @@ document.write("Last Published: " + docu
 <li>Network client JDBC drivers</li>
 <li>Command line tools: ij (SQL scripting), dblook (schema dump) and sysinfo 
(system info)</li>
 </ul>
-<a name="New+Features"></a>
+<a name="N100D7"></a><a name="New+Features"></a>
 <h3 class="boxed">New Features</h3>
 <p>This is a feature release. The following features were added.</p>
 <ul>
@@ -631,7 +630,7 @@ document.write("Last Published: " + docu
 <li>
 <strong>SYSCS_UTIL.SYSCS_UPDATE_STATISTICS</strong> - New system procedure 
that updates cardinality statistics (or creates them if they do not exist) for 
a table's index or for all the indexes on a table, allowing a user to ensure 
that a query plan based on the most recent state of the table can be 
created.</li>
 </ul>
-<a name="Bug+Fixes"></a>
+<a name="N10104"></a><a name="Bug+Fixes"></a>
 <h3 class="boxed">Bug Fixes</h3>
 <p>The following issues are addressed by Derby release 10.5.1.1. These issues 
are not addressed in the preceding 10.4.2.0 release.</p>
 <table class="ForrestTable" cellspacing="1" cellpadding="4" border="2">
@@ -1743,7 +1742,7 @@ document.write("Last Published: " + docu
 <td><a class="external" 
href="http://issues.apache.org/jira/browse/DERBY-48";>DERBY-48</a></td><td>A 
connection request that has a default schema that is being created by another 
transaction will fail to connect</td>
 </tr>
 </table>
-<a name="Issues"></a>
+<a name="N10B25"></a><a name="Issues"></a>
 <h3 class="boxed">Issues</h3>
 <p>Compared with the previous release (10.4.2.0), Derby release 10.5.1.1 
introduces the following incompatibilities. These merit your special 
attention.</p>
 <ul>
@@ -1809,55 +1808,55 @@ document.write("Last Published: " + docu
 </li>
 </ul>
 <hr>
-<a name="Note+for+DERBY-4073"></a>
+<a name="N10B86"></a><a name="Note+for+DERBY-4073"></a>
 <h4>Note for DERBY-4073</h4>
-<a name="Summary+of+Change"></a>
+<a name="N10B8C"></a><a name="Summary+of+Change"></a>
 <h5>Summary of Change</h5>
 <p>The method <tt>setSsl(int)</tt> has been removed from the client data 
source classes.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change"></a>
+<a name="N10B95"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>The application will either fail to compile, or experience a 
<tt>NoSuchMethodError</tt>. Only applications invoking the removed method are 
affected.</p>
-<a name="Incompatibilities+with+Previous+Release"></a>
+<a name="N10B9E"></a><a name="Incompatibilities+with+Previous+Release"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>The method <tt>setSsl(int)</tt> can no longer be used to configure SSL with 
the client data sources.</p>
-<a name="Rationale+for+Change"></a>
+<a name="N10BA7"></a><a name="Rationale+for+Change"></a>
 <h5>Rationale for Change</h5>
 <p>Having two <tt>setSsl</tt>-methods caused choice problems for some 
applications using Derby data sources and also configuring the data source 
through introspection, since there were two methods called setSsl; 
<tt>setSsl(int)</tt> and <tt>setSsl(String)</tt>.</p>
-<a name="Application+Changes+Required"></a>
+<a name="N10BB6"></a><a name="Application+Changes+Required"></a>
 <h5>Application Changes Required</h5>
 <p>Use <tt>setSsl(String)</tt> instead of <tt>setSsl(int)</tt>.</p>
 <hr>
-<a name="Note+for+DERBY-4050"></a>
+<a name="N10BC3"></a><a name="Note+for+DERBY-4050"></a>
 <h4>Note for DERBY-4050</h4>
-<a name="Summary+of+Change-N10BC0"></a>
+<a name="N10BC9"></a><a name="Summary+of+Change-N10BC9"></a>
 <h5>Summary of Change</h5>
 <p>Table growth may result from multi-threaded Clob updates before the fix for 
DERBY-4050.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N10BC6"></a>
+<a name="N10BCF"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N10BCF"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>Before the fix for DERBY-4050, applications may have seen growth in the 
size of the database, particularly the size of the dat files for Clob tables, 
when doing updates to the Clob tables from multiple threads. The fix for 
DERBY-4050 will prevent future growth but will not reclaim space consumed by 
the bug in the past. To reclaim the space, a full offline compress of the clob 
table is needed. See the Derby documentation for usage of <a 
href="http://db.apache.org/derby/docs/10.4/ref/rrefaltertablecompress.html";>SYSCS_UTIL.SYSCS_COMPRESS_TABLE</a>
 </p>
-<a name="Incompatibilities+with+Previous+Release-N10BCF"></a>
+<a name="N10BD8"></a><a 
name="Incompatibilities+with+Previous+Release-N10BD8"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>none</p>
-<a name="Rationale+for+Change-N10BD5"></a>
+<a name="N10BDE"></a><a name="Rationale+for+Change-N10BDE"></a>
 <h5>Rationale for Change</h5>
 <p>DERBY-4050 fixes a bug in space reclamation.</p>
-<a name="Application+Changes+Required-N10BDB"></a>
+<a name="N10BE4"></a><a name="Application+Changes+Required-N10BE4"></a>
 <h5>Application Changes Required</h5>
 <p>The compress table should only need to be run once if the fix for 
DERBY-4050 has been applied. No application changes should be required.</p>
 <hr>
-<a name="Note+for+DERBY-4042"></a>
+<a name="N10BEB"></a><a name="Note+for+DERBY-4042"></a>
 <h4>Note for DERBY-4042</h4>
-<a name="Summary+of+Change-N10BE8"></a>
+<a name="N10BF1"></a><a name="Summary+of+Change-N10BF1"></a>
 <h5>Summary of Change</h5>
 <p>Format of file name arguments to the import procedures changed for files 
with single quotes (') in their names.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N10BEE"></a>
+<a name="N10BF7"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N10BF7"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>In the previous release, applications that imported data from a file whose 
file name contained a single quote (') character would fail unless they 
replaced each single quote in the file name argument to the import procedure 
with two single quotes. Now this has changed and Derby does not understand the 
file name argument unless it has the same number of single quote characters as 
the actual file name. Applications that worked around the problems in earlier 
releases by adding extra single quotes, will now see exceptions like the 
following:</p>
 <pre>ERROR XIE04: Data file not found: Rock''n''roll.csv
 </pre>
 <p>Applications that do not import files whose names contain single quotes 
will not be affected by this change.</p>
-<a name="Incompatibilities+with+Previous+Release-N10BF8"></a>
+<a name="N10C01"></a><a 
name="Incompatibilities+with+Previous+Release-N10C01"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>Previous releases required file name arguments to the import procedures to 
double each occurrence of a single quote in the file name, like this when 
importing a file called <tt>C:/Chip's/TERMS.dat</tt>:</p>
 <pre>PreparedStatement ps = conn.prepareStatement(
@@ -1874,19 +1873,19 @@ ps.execute();
 ps.setString(1, "C:/Chip's/TERMS.dat");
 ps.execute();
 </pre>
-<a name="Rationale+for+Change-N10C0B"></a>
+<a name="N10C14"></a><a name="Rationale+for+Change-N10C14"></a>
 <h5>Rationale for Change</h5>
 <p>It is more intuitive if the file name arguments match the actual file 
names. Also, in the previous releases there were some combinations of single 
quotes and other special characters (like double quotes) that it was not 
possible to get to work even with the workaround.</p>
-<a name="Application+Changes+Required-N10C11"></a>
+<a name="N10C1A"></a><a name="Application+Changes+Required-N10C1A"></a>
 <h5>Application Changes Required</h5>
 <p>Applications that work around the issue in previous releases by adding 
extra single quotes to the file name arguments, must be changed so that they do 
not add extra single quote characters.</p>
 <hr>
-<a name="Note+for+DERBY-4008"></a>
+<a name="N10C21"></a><a name="Note+for+DERBY-4008"></a>
 <h4>Note for DERBY-4008</h4>
-<a name="Summary+of+Change-N10C1E"></a>
+<a name="N10C27"></a><a name="Summary+of+Change-N10C27"></a>
 <h5>Summary of Change</h5>
 <p>After the change for DERBY-4008, applications may see a different error 
message when attempting to connect a 10.5 client to older revision servers 
(e.g. 10.4 and 10.3) with multibyte database names.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N10C24"></a>
+<a name="N10C2D"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N10C2D"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>In previous releases when attempting to connect to network server using a 
multibyte database name the connect would fail with the the exception:<br> 
 <span class="codefrag">SQLSTATE:22005 java.sql.SQLDataException: Unicode 
string cannot convert to Ebcdic string</span>
@@ -1895,64 +1894,64 @@ ps.execute();
 <br> with a chained SQLException:<br> 
 <span class="codefrag">SQLSTATE:22005 java.sql.SQLDataException: Unicode 
string cannot convert to Ebcdic string</span>
 <br> The protocol error will also show on the server console.</p>
-<a name="Incompatibilities+with+Previous+Release-N10C3C"></a>
+<a name="N10C45"></a><a 
name="Incompatibilities+with+Previous+Release-N10C45"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>The client error message when attempting to connect with multibyte database 
names will change with mixed revision client/server as described in the 
previous section.</p>
-<a name="Rationale+for+Change-N10C42"></a>
+<a name="N10C4B"></a><a name="Rationale+for+Change-N10C4B"></a>
 <h5>Rationale for Change</h5>
 <p>This change was made in preparation for fixing DERBY-728 to allow multibyte 
characters in the database name. The change in error message with back revision 
servers was considered an acceptable change and necessary to fix DERBY-728.</p>
-<a name="Application+Changes+Required-N10C48"></a>
+<a name="N10C51"></a><a name="Application+Changes+Required-N10C51"></a>
 <h5>Application Changes Required</h5>
 <p>To reveert to the previous error message, users can upgrade their server to 
the latest on the 10.3 or 10.4 branch, or upgrade their server to 10.5. 
Otherwise applications expecting the old error message should upon gettting the 
SQLState: 08006 message retrieve the chained exception with 
SQLExcepiton.getNextMessage() and then process the message as before.</p>
 <hr>
-<a name="Note+for+DERBY-3977"></a>
+<a name="N10C58"></a><a name="Note+for+DERBY-3977"></a>
 <h4>Note for DERBY-3977</h4>
-<a name="Summary+of+Change-N10C55"></a>
+<a name="N10C5E"></a><a name="Summary+of+Change-N10C5E"></a>
 <h5>Summary of Change</h5>
 <p>A different exception is thrown by the embedded driver when trying to 
truncate a Clob with a too large length argument.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N10C5B"></a>
+<a name="N10C64"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N10C64"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>In the previous release, the embedded driver would throw an exception with 
SQLState XJ076 when trying to truncate a Clob with a length argument bigger 
than the Clob length. Now, it will throw the same exception as the client 
driver, XJ079. The error messages also differ:</p>
 <pre>Before: XJ076: The position argument '18149' exceeds the size of the 
BLOB/CLOB.
 Now: XJ079: The length specified '18149' exceeds the size of the BLOB/CLOB.
 </pre>
-<a name="Incompatibilities+with+Previous+Release-N10C63"></a>
+<a name="N10C6C"></a><a 
name="Incompatibilities+with+Previous+Release-N10C6C"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>Applications catching a specific exception based on SQLState may behave 
differently. The incompatibility can only be seen if the application calls 
<span class="codefrag">Clob.truncate</span> with the embedded driver.</p>
-<a name="Rationale+for+Change-N10C6C"></a>
+<a name="N10C75"></a><a name="Rationale+for+Change-N10C75"></a>
 <h5>Rationale for Change</h5>
 <p>To make the embedded and the client driver consistent.</p>
-<a name="Application+Changes+Required-N10C72"></a>
+<a name="N10C7B"></a><a name="Application+Changes+Required-N10C7B"></a>
 <h5>Application Changes Required</h5>
 <p>Look for SQLState XJ079 instead of XJ076 when <span 
class="codefrag">Clob.truncate()</span> is called.</p>
 <hr>
-<a name="Note+for+DERBY-3701"></a>
+<a name="N10C85"></a><a name="Note+for+DERBY-3701"></a>
 <h4>Note for DERBY-3701</h4>
-<a name="Summary+of+Change-N10C82"></a>
+<a name="N10C8B"></a><a name="Summary+of+Change-N10C8B"></a>
 <h5>Summary of Change</h5>
 <p>An error message will be logged to derby.log if the Network Server tracing 
file cannot be created. Starting with version 10.5, the Network Server will 
attempt to create the trace directory if it does not exist. Any intervening 
directories in the given path will also be created if possible.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N10C88"></a>
+<a name="N10C91"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N10C91"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>Before the fix for DERBY-3110, if derby.drda.traceAll was set to true and 
the derby.drda.traceDirectory was set to a non-existent directory, no tracing 
would occur and no error would occur. After the fix for DERBY-3110, an error 
"java.lang.Exception: DRDA_UnableToAccept.S:Unable to accept connections" would 
occur and the client would hang and no tracing would occur. With this fix for 
version 10.5 and higher, the Network Server will attempt to create the trace 
directory if possible. For 10.4.2 (and the next release on the 10.3 branch), 
the Network Server will still not try to create the directory. For all these 
releases the Network Server will print an error on session connect if there is 
any problem creating the trace file, but the Network Server will not cause the 
session connection to fail. Users who have trace turned on and the trace 
directory set to a non-existent directory may now see exceptions in the 
derby.log on connect indicating that the trace file is not found <strong>
 or</strong> with 10.5 or higher they may see tracing occur where it did not 
before.</p>
-<a name="Incompatibilities+with+Previous+Release-N10C91"></a>
+<a name="N10C9A"></a><a 
name="Incompatibilities+with+Previous+Release-N10C9A"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>Tracing properties will not be ignored or cause the client to hang if the 
trace directory is set to a non-existent directory.</p>
-<a name="Rationale+for+Change-N10C97"></a>
+<a name="N10CA0"></a><a name="Rationale+for+Change-N10CA0"></a>
 <h5>Rationale for Change</h5>
 <p>The tracing properties should not be summarily ignored or cause the client 
to hang if the trace directory does not exist.</p>
-<a name="Application+Changes+Required-N10C9D"></a>
+<a name="N10CA6"></a><a name="Application+Changes+Required-N10CA6"></a>
 <h5>Application Changes Required</h5>
 <p>Applications that counted on the derby.drda.traceAll property being ignored 
if derby.drda.traceDirectory was set to a non-existent directory, need to turn 
tracing off or they may now see many errors in the derby.log or large amounts 
of tracing.</p>
 <hr>
-<a name="Note+for+DERBY-3652"></a>
+<a name="N10CAD"></a><a name="Note+for+DERBY-3652"></a>
 <h4>Note for DERBY-3652</h4>
-<a name="Summary+of+Change-N10CAA"></a>
+<a name="N10CB3"></a><a name="Summary+of+Change-N10CB3"></a>
 <h5>Summary of Change</h5>
 <p>Derby now follows the SQL Standard rules for matching functions and 
procedures to Java methods.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N10CB0"></a>
+<a name="N10CB9"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N10CB9"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>In previous releases, Derby matched SQL routines to Java methods using an 
irregular set of rules which were hard to describe. At the same time, the user 
documentation falsely claimed that Derby followed the signature matching rules 
in the ANSI/ISO SQL Standard. Derby now conforms to the Standard behavior. In 
general, the Standard behavior is easier to understand and it is now possible 
to be confident that a function or procedure definition will match the desired 
Java method. In certain corner cases, however, methods which used to resolve 
will no longer resolve. The Standard resolution rules are described in the 
Derby Reference Guide.</p>
-<a name="Incompatibilities+with+Previous+Release-N10CB6"></a>
+<a name="N10CBF"></a><a 
name="Incompatibilities+with+Previous+Release-N10CBF"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>Routines may resolve differently. Here are the differences listed in 
declining order of likelihood:</p>
 <ol>
@@ -1980,10 +1979,10 @@ Now: XJ079: The length specified '18149'
 </ul>
 </li>
 </ol>
-<a name="Rationale+for+Change-N10D00"></a>
+<a name="N10D09"></a><a name="Rationale+for+Change-N10D09"></a>
 <h5>Rationale for Change</h5>
 <p>The previous behavior violated the SQL Standard and was very hard to 
explain. The new behavior is correct and easy to describe.</p>
-<a name="Application+Changes+Required-N10D06"></a>
+<a name="N10D0F"></a><a name="Application+Changes+Required-N10D0F"></a>
 <h5>Application Changes Required</h5>
 <p>This release includes a lint tool, <em>SignatureChecker</em>. If your 
application uses SQL functions and/or procedures, you should run this tool 
against your databases in order to find routines which no longer match. To run 
the tool, make sure that your classpath contains the 10.5 jar files, including 
<em>derbytools.jar</em>.</p>
 <p>On a J2SE platform, run the lint tool as follows (where 
CONNECTION_URL_TO_DATABASE is the connection URL you would use in order to 
obtain a connection via <em>DriverManager.getConnection()</em>):</p>
@@ -2020,30 +2019,30 @@ The method might exist but it is not pub
 <strong>Routine</strong> - Drop and recreate your function/procedure so that 
its arguments and return type match your Java method according to the Standard 
rules described in the Reference Guide.</li>
 </ol>
 <hr>
-<a name="Note+for+DERBY-3420"></a>
+<a name="N10D46"></a><a name="Note+for+DERBY-3420"></a>
 <h4>Note for DERBY-3420</h4>
-<a name="Summary+of+Change-N10D43"></a>
+<a name="N10D4C"></a><a name="Summary+of+Change-N10D4C"></a>
 <h5>Summary of Change</h5>
 <p>The <em>-ca</em> command line option has been removed from ij.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N10D4C"></a>
+<a name="N10D55"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N10D55"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>Applications which attempt to pass JDBC connection attributes using the -ca 
flag to ij will be rejected, with a usage message such as: Usage: java 
org.apache.derby.tools.ij -p propertyfile inputfile</p>
-<a name="Incompatibilities+with+Previous+Release-N10D52"></a>
+<a name="N10D5B"></a><a 
name="Incompatibilities+with+Previous+Release-N10D5B"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>Applications which attempt to pass JDBC connection attributes using the -ca 
flag to ij will fail, as that flag is no longer recognized by ij.</p>
-<a name="Rationale+for+Change-N10D58"></a>
+<a name="N10D61"></a><a name="Rationale+for+Change-N10D61"></a>
 <h5>Rationale for Change</h5>
 <p>It used to be that you could not specify both client and embedded 
attributes in the connection URL. Since Derby now supports such combinations of 
attributes in the connection URL, the community decided that the -ca option 
doesn't really add value and so it has been removed.</p>
-<a name="Application+Changes+Required-N10D5E"></a>
+<a name="N10D67"></a><a name="Application+Changes+Required-N10D67"></a>
 <h5>Application Changes Required</h5>
 <p>Applications should include connection attributes in the connection URL. 
For example: connect 
'jdbc:derby:myDB;territory=no_NO;collation=TERRITORY_BASED;create=true';</p>
 <hr>
-<a name="Note+for+DERBY-3347"></a>
+<a name="N10D6E"></a><a name="Note+for+DERBY-3347"></a>
 <h4>Note for DERBY-3347</h4>
-<a name="Summary+of+Change-N10D6B"></a>
+<a name="N10D74"></a><a name="Summary+of+Change-N10D74"></a>
 <h5>Summary of Change</h5>
 <p>A bug that could cause unrecoverable database corruption has been fixed.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N10D71"></a>
+<a name="N10D7A"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N10D7A"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>A bug that could cause database corruption was introduced in the 10.3 
codeline and affects the following releases:</p>
 <ul>
@@ -2057,59 +2056,59 @@ ERROR XSDG2: Invalid checksum on Page Pa
 ERROR XSDG3: Meta-data for Container 
org.apache.derby.impl.store.raw.data.RAFContainer4@1afb0c7 could not be accessed
 ERROR XSLA1: Log Record has been sent to the stream, but it cannot be applied 
to the store (Object null). This may cause recovery problems also.
 </pre>
-<a name="Incompatibilities+with+Previous+Release-N10D80"></a>
+<a name="N10D89"></a><a 
name="Incompatibilities+with+Previous+Release-N10D89"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>None.</p>
-<a name="Rationale+for+Change-N10D86"></a>
+<a name="N10D8F"></a><a name="Rationale+for+Change-N10D8F"></a>
 <h5>Rationale for Change</h5>
 <p>Database corruption is bad.</p>
-<a name="Application+Changes+Required-N10D8C"></a>
+<a name="N10D95"></a><a name="Application+Changes+Required-N10D95"></a>
 <h5>Application Changes Required</h5>
 <p>No changes are required. However, since the database corruption may go 
unnoticed for a while, users may want to check the consistency of their 
databases after upgrading Derby. The process is described on the following wiki 
page: <a class="external" 
href="http://wiki.apache.org/db-derby/DatabaseConsistencyCheck";>http://wiki.apache.org/db-derby/DatabaseConsistencyCheck</a>
 . If a corruption is detected, restoring the database from backup is the only 
reliable way to recover.</p>
 <hr>
-<a name="Note+for+DERBY-3327"></a>
+<a name="N10DA0"></a><a name="Note+for+DERBY-3327"></a>
 <h4>Note for DERBY-3327</h4>
-<a name="Summary+of+Change-N10D9D"></a>
+<a name="N10DA6"></a><a name="Summary+of+Change-N10DA6"></a>
 <h5>Summary of Change</h5>
 <p>The effect of setting the current default schema (<span 
class="codefrag">SET SCHEMA schemaname</span>) inside nested connection of a 
stored procedure or function has been changed to comply with SQL standard 
semantics.</p>
 <p>Previously, setting the schema in a nested connection would have an effect 
on the current default schema also in the SQL connection of the caller. The SQL 
standard requires that the value of the default current schema at the time of 
the call be reestablished when the call is completed. This is now 
implemented.</p>
 <p>If the current schema is dropped by a stored procedure or function, the 
current schema as well as the saved values of the callers will be reset to the 
initial default schema of the root connection.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N10DAA"></a>
+<a name="N10DB3"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N10DB3"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
-<a name="Rationale+for+Change-N10DAE"></a>
+<a name="N10DB7"></a><a name="Rationale+for+Change-N10DB7"></a>
 <h5>Rationale for Change</h5>
 <p>SQL standard compliance.</p>
-<a name="Application+Changes+Required-N10DB4"></a>
+<a name="N10DBD"></a><a name="Application+Changes+Required-N10DBD"></a>
 <h5>Application Changes Required</h5>
 <hr>
-<a name="Note+for+DERBY-3319"></a>
+<a name="N10DC2"></a><a name="Note+for+DERBY-3319"></a>
 <h4>Note for DERBY-3319</h4>
-<a name="Summary+of+Change-N10DBF"></a>
+<a name="N10DC8"></a><a name="Summary+of+Change-N10DC8"></a>
 <h5>Summary of Change</h5>
 <p>Exception is thrown when connection with uncommitted operations is 
closed.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N10DC5"></a>
+<a name="N10DCE"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N10DCE"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>In the previous release, applications could close a connection obtained 
from Derby's implementations of <span 
class="codefrag">javax.sql.DataSource</span> or <span 
class="codefrag">javax.sql.ConnectionPoolDataSource</span>, even if the 
connection had uncommitted operations. Now, Derby raises an <span 
class="codefrag">SQLException</span> when an attempt to close a connection with 
an active transaction is made. The exception will have SQLState 25001, and its 
message will say the following:</p>
 <pre>java.sql.SQLException: Cannot close a connection while a transaction is 
still active.
 </pre>
-<a name="Incompatibilities+with+Previous+Release-N10DD6"></a>
+<a name="N10DDF"></a><a 
name="Incompatibilities+with+Previous+Release-N10DDF"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>Applications that close connections with active transactions now fail.</p>
-<a name="Rationale+for+Change-N10DDC"></a>
+<a name="N10DE5"></a><a name="Rationale+for+Change-N10DE5"></a>
 <h5>Rationale for Change</h5>
 <p>The previous behaviour was not consistent with the behaviour of connection 
objects obtained from <span class="codefrag">java.sql.DriverManager</span>, 
which already raise an exception in such a situation. The previous behaviour 
could also cause resource leaks because there is no way to free the resources 
held by an active transaction once its connection object has been closed.</p>
-<a name="Application+Changes+Required-N10DE5"></a>
+<a name="N10DEE"></a><a name="Application+Changes+Required-N10DEE"></a>
 <h5>Application Changes Required</h5>
 <p>Users must call <span class="codefrag">commit()</span> or <span 
class="codefrag">rollback()</span>, or use auto-commit, before attempting to 
close a connection with uncommitted operations.</p>
 <hr>
-<a name="Note+for+DERBY-2351"></a>
+<a name="N10DFB"></a><a name="Note+for+DERBY-2351"></a>
 <h4>Note for DERBY-2351</h4>
-<a name="Summary+of+Change-N10DF8"></a>
+<a name="N10E01"></a><a name="Summary+of+Change-N10E01"></a>
 <h5>Summary of Change</h5>
 <p>An ORDER BY clause of a DISTINCT query which specifies to order by a column 
which was not in the DISTINCT list is now rejected, because the intent of the 
query is ambiguous. Previously, Derby instead produced non-distinct results. 
Also, an ORDER BY clause which specifies a table-name-qualified column alias is 
now rejected as invalid, where previously it was accepted.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N10DFE"></a>
+<a name="N10E07"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N10E07"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
-<a name="New+rules+for+DISTINCT+and+ORDER+BY"></a>
+<a name="N10E0B"></a><a name="New+rules+for+DISTINCT+and+ORDER+BY"></a>
 <h5>New rules for DISTINCT and ORDER BY</h5>
 <p>Applications which specify certain combinations of SELECT DISTINCT with 
ORDER BY will now receive an error message, whereas formerly such applications 
received non-distinct results.</p>
 <p>As an example, take the following:</p>
@@ -2118,7 +2117,7 @@ ERROR XSLA1: Log Record has been sent to
 </p>
 <p>The query above is now rejected, with the error message:</p>
 <p>If the AGE column is included in the DISTINCT list in the above query, 
there is no ambiguity</p>
-<a name="New+column+alias+rules"></a>
+<a name="N10E23"></a><a name="New+column+alias+rules"></a>
 <h5>New column alias rules</h5>
 <p>Applications which specify a column alias for a column in the SELECT 
statement, and which specify an ORDER BY clause which specifies that column 
alias qualified by the table name, will now receive an error indicating that 
the ORDER BY clause is invalid.</p>
 <p>As an example, take the following:</p>
@@ -2128,7 +2127,7 @@ ERROR XSLA1: Log Record has been sent to
 <p>select t1.id as idcolumn1, t1.id as idcolumn2 from t1 order by idcolumn1, 
idcolumn2;</p>
 <p>or</p>
 <p>select t1.id as idcolumn1, t1.id as idcolumn2 from t1 order by t1.id, 
t1.id;</p>
-<a name="Rationale+for+Change-N10E30"></a>
+<a name="N10E39"></a><a name="Rationale+for+Change-N10E39"></a>
 <h5>Rationale for Change</h5>
 <p>When the query ambiguously specifies both DISTINCT and ORDER BY, Derby was 
unsure whether to return the rows properly ordered, but non-distinct, or to 
return a distinct set of rows, but in an unknown order. Since no clear 
resolution of the ambiguity could be found, we chose instead to reject the 
query.</p>
 <p>The rules for resolving column references in ORDER BY clauses have been 
enhanced to consider column aliases and column names more fully. Derby now uses 
different resolution rules depending on whether the ORDER BY column reference 
is table.column, or just column:</p>
@@ -2138,14 +2137,14 @@ ERROR XSLA1: Log Record has been sent to
 </ul>
 <br>
 <br>
-<a name="Application+Changes+Required-N10E3F"></a>
+<a name="N10E48"></a><a name="Application+Changes+Required-N10E48"></a>
 <h5>Application Changes Required</h5>
 <p>A query which specifies ordering by a non-distinct column should instead 
include the ORDER BY column in the DISTINCT list, to resolve the ambiguity 
about which values of that column should be used to distinctly identify the 
resulting rows.</p>
 <p>A query which specifies table-name.alias-name should be rewritten to 
specify either simply alias-name, or table-name.column-name.</p>
 <hr>
-<a name="Note+for+DERBY-2085"></a>
+<a name="N10E51"></a><a name="Note+for+DERBY-2085"></a>
 <h4>Note for DERBY-2085</h4>
-<a name="Summary+of+Change-N10E4E"></a>
+<a name="N10E57"></a><a name="Summary+of+Change-N10E57"></a>
 <h5>Summary of Change</h5>
 <p>Derby has improved the error message which is issued when an invalid column 
reference is found in a grouped query. Derby now issues message 42Y36 instead 
of 42Y30. Furthermore, the wording of message 42Y36 has been expanded to 
further explain the behavior.</p>
 <p>Consider the table</p>
@@ -2155,53 +2154,53 @@ ERROR XSLA1: Log Record has been sent to
 <p>In Derby releases 10.2, 10.3, and 10.4, this query gives the following 
error message:</p>
 <span class="codefrag">ERROR 42Y30: The SELECT list of a grouped query 
contains at least one invalid expression. If a SELECT list has a GROUP BY, the 
list may only contain valid grouping expressions and valid aggregate 
expressions.</span>
 <p>This is misleading since there is no invalid expression in the SELECT list. 
It is the ORDER BY clause that is wrong. In Derby 10.5, this query will now 
give the following error message, which is a revised version of the message 
issued by 10.1 (that is, Derby 10.5 behaves more like Derby 10.1 in this 
respect):</p>
-<span class="codefrag">ERROR 42Y36: Column reference 'J' is invalid, or is 
part of an invalid expression. For a SELECT list with a GROUP BY, the columns 
and expressions being selected may only contain valid grouping expressions and 
valid aggregate expressions.</span><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N10E64"></a>
+<span class="codefrag">ERROR 42Y36: Column reference 'J' is invalid, or is 
part of an invalid expression. For a SELECT list with a GROUP BY, the columns 
and expressions being selected may only contain valid grouping expressions and 
valid aggregate expressions.</span><a name="N10E6D"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N10E6D"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>An application which issued a grouped select statement with an invalid 
column reference in the order by clause may now receive a different error 
message than it did in 10.4.</p>
-<a name="Rationale+for+Change-N10E6A"></a>
+<a name="N10E73"></a><a name="Rationale+for+Change-N10E73"></a>
 <h5>Rationale for Change</h5>
 <p>We feel that message 42Y36 is more helpful to the user in explaining the 
problem with the invalid query.</p>
 <hr>
-<a name="Note+for+DERBY-1062"></a>
+<a name="N10E7A"></a><a name="Note+for+DERBY-1062"></a>
 <h4>Note for DERBY-1062</h4>
-<a name="Summary+of+Change-N10E77"></a>
+<a name="N10E80"></a><a name="Summary+of+Change-N10E80"></a>
 <h5>Summary of Change</h5>
 <p>Applications will see a different error code and message when they attempt 
to call SYSCS_UTIL.SYSCS_INPLACE_COMPRESS_TABLE on a table that does not 
exist.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N10E7D"></a>
+<a name="N10E86"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N10E86"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>Applications will see a different error code and message when they attempt 
to call SYSCS_UTIL.SYSCS_INPLACE_COMPRESS_TABLE on a table that does not exist. 
The new error code and message will be ERROR 42Y55: 'ALTER TABLE' cannot be 
performed on 'MissingTableName' because it does not exist. The old error code 
and message used to be ERROR 42X05: Table/View 'MissingTableName' does not 
exist.</p>
-<a name="Incompatibilities+with+Previous+Release-N10E83"></a>
+<a name="N10E8C"></a><a 
name="Incompatibilities+with+Previous+Release-N10E8C"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>The SQL exception code in the previous release was 42X05 and error message 
was "Table/View 'MissingTableName' does not exist."</p>
-<a name="Rationale+for+Change-N10E89"></a>
+<a name="N10E92"></a><a name="Rationale+for+Change-N10E92"></a>
 <h5>Rationale for Change</h5>
 <p>To avoid duplication of code, the error handling is now done by a generic 
routine in ALTER TABLE rather than a routine specific to 
SYSCS_UTIL.SYSCS_INPLACE_COMPRESS_TABLE. This change to use ALTER TABLE code to 
implement SYSCS_UTIL.SYSCS_INPLACE_COMPRESS_TABLE was made in 10.5 release and 
that is the reason behind the change in error code behavior.</p>
-<a name="Application+Changes+Required-N10E8F"></a>
+<a name="N10E98"></a><a name="Application+Changes+Required-N10E98"></a>
 <h5>Application Changes Required</h5>
 <p>If the application is looking for 42X05, it should be changed to look for 
42Y55.</p>
 <hr>
-<a name="Note+for+DERBY-48"></a>
+<a name="N10E9F"></a><a name="Note+for+DERBY-48"></a>
 <h4>Note for DERBY-48</h4>
-<a name="Summary+of+Change-N10E9C"></a>
+<a name="N10EA5"></a><a name="Summary+of+Change-N10EA5"></a>
 <h5>Summary of Change</h5>
 <p>In Derby, a user's <strong>initial default schema</strong> is named the 
same as the user name, or APP if a user is not provided at connect time. This 
schema is implicitly auto-created the first time a schema object is created in 
that schema.</p>
 <p>Previously, this auto-creation would be performed as part of the user 
transaction. This would sometimes lead to locking issues as described in this 
issue. With this change, the auto-creation is now performed and committed 
immediately in a separate sub-transaction.</p>
-<a name="Symptoms+Seen+by+Applications+Affected+by+Change-N10EA7"></a>
+<a name="N10EB0"></a><a 
name="Symptoms+Seen+by+Applications+Affected+by+Change-N10EB0"></a>
 <h5>Symptoms Seen by Applications Affected by Change</h5>
 <p>The initial default schema will be present in cases where it previously 
would not yet have been created: If the user transaction that creates a schema 
object leading to auto-creation of the initial default schema rolls back for 
some reason after having created the schema, up till now the auto-creation of 
the initial default schema would be rolled back as well. Since it is now 
created and committed in a sub-transaction, the schema creation will not be 
rolled back: the default schema will persist.</p>
-<a name="Incompatibilities+with+Previous+Release-N10EAD"></a>
+<a name="N10EB6"></a><a 
name="Incompatibilities+with+Previous+Release-N10EB6"></a>
 <h5>Incompatibilities with Previous Release</h5>
 <p>Most applications should not be impacted by this change, but there are some 
corner cases as described below:</p>
 <p>If the application tests for the existence of the initial default schema by 
querying Derby system tables, the results could now be different than in 
earlier releases, if the test is made after a rollback as described in the 
previous section.</p>
 <p>Since the initial default schema will now potentially exist in cases where 
it would previously not exist, schema operations may be impacted, e.g. where 
before a DROP SCHEMA &lt;default schema name&gt; RESTRICT would fail due to it 
not yet existing, it could now work (if empty), depending on when the drop 
attempt is made.</p>
-<a name="Rationale+for+Change-N10EB7"></a>
+<a name="N10EC0"></a><a name="Rationale+for+Change-N10EC0"></a>
 <h5>Rationale for Change</h5>
 <p>Implicit schema creation is now performed in its own transaction to avoid 
deadlocks with other connections accessing the same schema.</p>
 <p>Doing this is a separate transaction avoids holding dictionary locks longer 
than necessary, cf. <a class="external" 
href="https://issues.apache.org/jira/browse/DERBY-48";>DERBY-48</a> and thus 
reduces the chance for deadlocks.</p>
-<a name="Application+Changes+Required-N10EC3"></a>
+<a name="N10ECC"></a><a name="Application+Changes+Required-N10ECC"></a>
 <h5>Application Changes Required</h5>
 <p>Verify that the application code does not rely on the initial default 
schema being absent after a rollback.</p>
-<a name="Build+Environment"></a>
+<a name="N10ED2"></a><a name="Build+Environment"></a>
 <h3 class="boxed">Build Environment</h3>
 <p>Derby release 10.5.1.1 was built using the following environment:</p>
 <ul>
@@ -2221,7 +2220,7 @@ ERROR XSLA1: Log Record has been sent to
 <strong>JSR 169</strong> - J2ME support was built using IBM's j9 jvm from 
WEME6.1</li>
 </ul>
 </div>
-<a name="Verifying+releases"></a>
+<a name="N10EF7"></a><a name="Verifying+releases"></a>
 <h2 class="boxed">Verifying releases</h2>
 <div class="section">
 <p>It is essential that you verify the integrity of the downloaded files using 
the PGP and MD5 signatures. MD5 verification ensures the file was not corrupted 
during the download process. PGP verification ensures that the file came from a 
certain person.</p>
@@ -2260,7 +2259,7 @@ document.write("Last Published: " + docu
 </div>
 <div class="copyright">
         Copyright &copy;
-         2004-2015 Apache, Apache DB, Apache Derby, Apache Torque, Apache JDO, 
Apache DDLUtils, the Derby hat logo, the Apache JDO logo, and the Apache 
feather logo are trademarks of The Apache Software Foundation. All other marks 
mentioned may be trademarks or registered trademarks of their respective 
owners.</div>
+         2004-2017 Apache, Apache DB, Apache Derby, Apache Torque, Apache JDO, 
Apache DDLUtils, the Derby hat logo, the Apache JDO logo, and the Apache 
feather logo are trademarks of The Apache Software Foundation. All other marks 
mentioned may be trademarks or registered trademarks of their respective 
owners.</div>
 <div id="feedback">
     Send feedback about the website to:
   <a id="feedbackto" 
href="mailto:[email protected]?subject=Feedback%C2%A0releases/release-10.5.1.1.html";>[email protected]</a>


Reply via email to