db-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From rhille...@apache.org
Subject svn commit: r843115 [33/44] - in /websites/production/db/content/derby: ./ binaries/ blogs/ blogs/images/ dev/ docs/ images/ integrate/ integrate/plugin_help/ integrate/plugin_help/images/ logo/ manuals/ papers/ papers/DerbyTut/ releases/ skin/ skin/cs...
Date Wed, 19 Dec 2012 18:20:28 GMT
Added: websites/production/db/content/derby/releases/release-10.4.1.3.html
==============================================================================
--- websites/production/db/content/derby/releases/release-10.4.1.3.html (added)
+++ websites/production/db/content/derby/releases/release-10.4.1.3.html Wed Dec 19 18:20:21 2012
@@ -0,0 +1,989 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta content="Apache Forrest" name="Generator">
+<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">
+<link media="print" type="text/css" href="../skin/print.css" rel="stylesheet">
+<link type="text/css" href="../skin/profile.css" rel="stylesheet">
+<script src="../skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="../skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="../skin/fontsize.js" language="javascript" type="text/javascript"></script>
+<link rel="shortcut icon" href="../">
+</head>
+<body onload="init()">
+<script type="text/javascript">ndeSetTextSize();</script>
+<div id="top">
+<!--+
+    |breadtrail
+    +-->
+<div class="breadtrail">
+<a href="http://www.apache.org/">apache</a> &gt; <a href="http://db.apache.org/">db</a><script src="../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
+</div>
+<!--+
+    |header
+    +-->
+<div class="header">
+<!--+
+    |start group logo
+    +-->
+<div class="grouplogo">
+<a href="http://db.apache.org/derby"><img class="logoImage" alt="Apache Derby" src="../images/derby-logo-web.png" title="Derby is a zero-admin Java RDBMS"></a>
+</div>
+<!--+
+    |end group logo
+    +-->
+<!--+
+    |start Project Logo
+    +-->
+<div class="projectlogoA1">
+<a href="http://db.apache.org"><img class="logoImage" alt="Apache DB Project" src="../images/db-logo-white.png" title="Apache DB creates and maintains database solutions."></a>
+</div>
+<!--+
+    |end Project Logo
+    +-->
+<!--+
+    |start Tabs
+    +-->
+<ul id="tabs">
+<li>
+<a class="unselected" href="../index.html">Home</a>
+</li>
+<li>
+<a class="unselected" href="../quick_start.html">Quick Start</a>
+</li>
+<li>
+<a class="unselected" href="../derby_downloads.html">Download</a>
+</li>
+<li>
+<a class="unselected" href="../derby_comm.html">Community</a>
+</li>
+<li>
+<a class="unselected" href="../manuals/index.html">Documentation</a>
+</li>
+<li>
+<a class="unselected" href="../blogs/index.html">Resources</a>
+</li>
+</ul>
+<!--+
+    |end Tabs
+    +-->
+</div>
+</div>
+<div id="main">
+<div id="publishedStrip">
+<!--+
+    |start Subtabs
+    +-->
+<div id="level2tabs"></div>
+<!--+
+    |end Endtabs
+    +-->
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+//  --></script>
+</div>
+<!--+
+    |breadtrail
+    +-->
+<div class="breadtrail">
+
+             &nbsp;
+           </div>
+<!--+
+    |start Menu, mainarea
+    +-->
+<!--+
+    |start Menu
+    +-->
+<div id="menu">
+<div onclick="SwitchMenu('menu_1.1', '../skin/')" id="menu_1.1Title" class="menutitle">Home</div>
+<div id="menu_1.1" class="menuitemgroup">
+<div class="menuitem">
+<a href="../index.html">Apache Derby</a>
+</div>
+<div class="menuitem">
+<a href="../derby_charter.html">Charter</a>
+</div>
+<div class="menuitem">
+<a href="../license.html">License</a>
+</div>
+<div class="menuitem">
+<a href="../faq.html">FAQs</a>
+</div>
+<div class="menuitem">
+<a href="http://wiki.apache.org/db-derby/">Derby Wiki</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.2', '../skin/')" id="menu_1.2Title" class="menutitle">Quick Start</div>
+<div id="menu_1.2" class="menuitemgroup">
+<div class="menuitem">
+<a href="../quick_start.html">Quick Start</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.3', '../skin/')" id="menu_1.3Title" class="menutitle">Download</div>
+<div id="menu_1.3" class="menuitemgroup">
+<div class="menuitem">
+<a href="../derby_downloads.html">Overview</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.4', '../skin/')" id="menu_1.4Title" class="menutitle">Community</div>
+<div id="menu_1.4" class="menuitemgroup">
+<div class="menuitem">
+<a href="../derby_comm.html">Get Involved!</a>
+</div>
+<div class="menuitem">
+<a href="../derby_mail.html">Mailing Lists</a>
+</div>
+<div class="menuitem">
+<a href="../dev/derby_source.html">Source Code</a>
+</div>
+<div class="menuitem">
+<a href="../DerbyBugGuidelines.html">BUGS</a>
+</div>
+<div class="menuitem">
+<a href="../derby_tests.html">Tests</a>
+</div>
+<div class="menuitem">
+<a href="../logo.html">Logo</a>
+</div>
+<div class="menuitem">
+<a href="../papers/derby_web.html">Updating the web site</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.5', '../skin/')" id="menu_1.5Title" class="menutitle">Documentation</div>
+<div id="menu_1.5" class="menuitemgroup">
+<div class="menuitem">
+<a href="../manuals/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../manuals/dita.html">DITA Source</a>
+</div>
+<div class="menuitem">
+<a href="../manuals/guidelines.html">Writing Guidelines</a>
+</div>
+<div class="menuitem">
+<a href="../manuals/messages.html">Documenting Messages</a>
+</div>
+<div class="menuitem">
+<a href="../manuals/docsfaq.html">Writing FAQs</a>
+</div>
+<div class="menuitem">
+<a href="../manuals/docscheck.html">Release Checklist</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.6', '../skin/')" id="menu_1.6Title" class="menutitle">Blogs and Articles About Derby</div>
+<div id="menu_1.6" class="menuitemgroup">
+<div class="menuitem">
+<a href="../blogs/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../blogs/index.html#blogs">Blogs</a>
+</div>
+<div onclick="SwitchMenu('menu_1.6.3', '../skin/')" id="menu_1.6.3Title" class="menutitle">Articles</div>
+<div id="menu_1.6.3" class="menuitemgroup">
+<div onclick="SwitchMenu('menu_1.6.3.1', '../skin/')" id="menu_1.6.3.1Title" class="menutitle">Tutorials, Tips and Tuning</div>
+<div id="menu_1.6.3.1" class="menuitemgroup">
+<div class="menuitem">
+<a href="../blogs/index.html#getstarted">Getting Started</a>
+</div>
+<div class="menuitem">
+<a href="../blogs/index.html#features">Features, Hints and Tips</a>
+</div>
+<div class="menuitem">
+<a href="../blogs/index.html#security">Security</a>
+</div>
+<div class="menuitem">
+<a href="../blogs/index.html#performance">Performance and Tuning</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.6.3.2', '../skin/')" id="menu_1.6.3.2Title" class="menutitle">Tools and Migration</div>
+<div id="menu_1.6.3.2" class="menuitemgroup">
+<div class="menuitem">
+<a href="../blogs/index.html#tools">Tools</a>
+</div>
+<div class="menuitem">
+<a href="../blogs/index.html#migration">Migration</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.6.3.3', '../skin/')" id="menu_1.6.3.3Title" class="menutitle">Applications</div>
+<div id="menu_1.6.3.3" class="menuitemgroup">
+<div class="menuitem">
+<a href="../blogs/index.html#client">Client</a>
+</div>
+<div class="menuitem">
+<a href="../blogs/index.html#middletier">Middle Tier</a>
+</div>
+<div class="menuitem">
+<a href="../blogs/index.html#persistence">Persistence</a>
+</div>
+<div class="menuitem">
+<a href="../blogs/index.html#scalability">Scalability and Failover</a>
+</div>
+</div>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.7', '../skin/')" id="menu_1.7Title" class="menutitle">Integration With Other Products</div>
+<div id="menu_1.7" class="menuitemgroup">
+<div class="menuitem">
+<a href="../integrate/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../integrate/index.html#uses">What works with Derby?</a>
+</div>
+<div class="menuitem">
+<a href="../integrate/index.html#products">Product Writeups</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.8', '../skin/')" id="menu_1.8Title" class="menutitle">Eclipse Plug-ins</div>
+<div id="menu_1.8" class="menuitemgroup">
+<div class="menuitem">
+<a href="../integrate/derby_plugin_info.html">Info</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.9', '../skin/')" id="menu_1.9Title" class="menutitle">Papers and Presentations</div>
+<div id="menu_1.9" class="menuitemgroup">
+<div class="menuitem">
+<a href="../papers/index.html">Overview</a>
+</div>
+<div onclick="SwitchMenu('menu_1.9.2', '../skin/')" id="menu_1.9.2Title" class="menutitle">Derby Engine</div>
+<div id="menu_1.9.2" class="menuitemgroup">
+<div onclick="SwitchMenu('menu_1.9.2.1', '../skin/')" id="menu_1.9.2.1Title" class="menutitle">Javadoc</div>
+<div id="menu_1.9.2.1" class="menuitemgroup">
+<div class="menuitem">
+<a href="http://db.apache.org/derby/javadoc/engine">Engine</a>
+</div>
+<div class="menuitem">
+<a href="http://db.apache.org/derby/javadoc/language">Language</a>
+</div>
+<div class="menuitem">
+<a href="http://db.apache.org/derby/javadoc/tools">Tools</a>
+</div>
+<div class="menuitem">
+<a href="http://db.apache.org/derby/javadoc/publishedapi">API</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../papers/derby_arch.html">Architecture</a>
+</div>
+<div class="menuitem">
+<a href="../papers/btree_package.html">BTree</a>
+</div>
+<div class="menuitem">
+<a href="../papers/pageformats.html">Disk Page Format</a>
+</div>
+<div class="menuitem">
+<a href="../papers/derby_htw.html">How Things Work</a>
+</div>
+<div class="menuitem">
+<a href="../papers/Intersect-design.html">Intersect &amp; Except</a>
+</div>
+<div class="menuitem">
+<a href="../papers/JDBCImplementation.html">JDBC</a>
+</div>
+<div class="menuitem">
+<a href="../papers/logformats.html">Log Format</a>
+</div>
+<div class="menuitem">
+<a href="../papers/recovery.html">Logging &amp; Recovery</a>
+</div>
+<div class="menuitem">
+<a href="../papers/optimizer.html">Optimizer</a>
+</div>
+<div class="menuitem">
+<a href="http://db.apache.org/derby/javadoc/engine/org/apache/derby/iapi/types/package-summary.html#package_description">Type System</a>
+</div>
+<div class="menuitem">
+<a href="../papers/versionupgrade.html">Versioning</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.9.3', '../skin/')" id="menu_1.9.3Title" class="menutitle">Derby Network Client</div>
+<div id="menu_1.9.3" class="menuitemgroup">
+<div class="menuitem">
+<a href="../papers/DerbyClientSpec.html">Functional Spec</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.9.4', '../skin/')" id="menu_1.9.4Title" class="menutitle">Derby Tutorial</div>
+<div id="menu_1.9.4" class="menuitemgroup">
+<div class="menuitem">
+<a href="../papers/DerbyTut/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../papers/DerbyTut/install_software.html">Step 1: Install Software</a>
+</div>
+<div class="menuitem">
+<a href="../papers/DerbyTut/ij_intro.html">Step 2: ij Basics</a>
+</div>
+<div class="menuitem">
+<a href="../papers/DerbyTut/embedded_intro.html">Step 3: Embedded Derby</a>
+</div>
+<div class="menuitem">
+<a href="../papers/DerbyTut/ns_intro.html">Step 4: Derby Network Server</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.9.5', '../skin/')" id="menu_1.9.5Title" class="menutitle">Presentations</div>
+<div id="menu_1.9.5" class="menuitemgroup">
+<div class="menuitem">
+<a href="../papers/ApacheCon.html">ApacheCon</a>
+</div>
+<div class="menuitem">
+<a href="../papers/MiscPresentations.html#Victorian+Java+User+Group">Victorian JUG 2008</a>
+</div>
+<div class="menuitem">
+<a href="../papers/MiscPresentations.html#OSCON+2005">OSCON 2005</a>
+</div>
+<div class="menuitem">
+<a href="../papers/MiscPresentations.html#Colorado+Software+Summit+2004">Colorado 2004</a>
+</div>
+</div>
+</div>
+<!--+
+    |start Search
+    +-->
+<div class="searchbox">
+<hr>
+<form action="http://www.google.com/search" method="get">
+<input value="db.apache.org" name="sitesearch" type="hidden"><input onFocus="getBlank (this, 'Search the site with google');" size="18" name="q" id="query" type="text" value="Search the site with google">&nbsp; 
+                  <input name="Search" value="Search" type="submit">
+</form>
+</div>
+<!--+
+    |end search
+    +-->
+<div id="credit"></div>
+<div id="roundbottom">
+<img style="display: none" class="corner" height="15" width="15" alt="" src="../skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
+<!--+
+  |alternative credits
+  +-->
+<div id="credit2"></div>
+</div>
+<!--+
+    |end Menu
+    +-->
+<!--+
+    |start content
+    +-->
+<div id="content">
+<div class="trail">Font size: 
+	          &nbsp;<input value="Reset" class="resetfont" title="Reset text" onclick="ndeSetTextSize('reset'); return false;" type="button">      
+	          &nbsp;<input value="-a" class="smallerfont" title="Shrink text" onclick="ndeSetTextSize('decr'); return false;" type="button">
+	          &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="minitoc-area">
+<ul class="minitoc">
+<li>
+<a href="#Distributions">Distributions</a>
+</li>
+<li>
+<a href="#Release Notes for Derby 10.4.1.3">Release Notes for Derby 10.4.1.3</a>
+<ul class="minitoc">
+<li>
+<a href="#Overview">Overview</a>
+</li>
+<li>
+<a href="#New+Features">New Features</a>
+</li>
+<li>
+<a href="#Bug+Fixes">Bug Fixes</a>
+</li>
+<li>
+<a href="#Issues">Issues</a>
+<ul class="minitoc">
+<li>
+<a href="#Note+for+DERBY-3585">Note for DERBY-3585</a>
+</li>
+<li>
+<a href="#Note+for+DERBY-3460">Note for DERBY-3460</a>
+</li>
+<li>
+<a href="#Note+for+DERBY-3301">Note for DERBY-3301</a>
+</li>
+<li>
+<a href="#Note+for+DERBY-3026">Note for DERBY-3026</a>
+</li>
+<li>
+<a href="#Note+for+DERBY-3013">Note for DERBY-3013</a>
+</li>
+<li>
+<a href="#Note+for+DERBY-2351">Note for DERBY-2351</a>
+</li>
+<li>
+<a href="#Note+for+DERBY-2065">Note for DERBY-2065</a>
+</li>
+</ul>
+</li>
+<li>
+<a href="#Build+Environment">Build Environment</a>
+</li>
+</ul>
+</li>
+<li>
+<a href="#Verifying+releases">Verifying releases</a>
+</li>
+</ul>
+</div>
+<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>
+<p>There are four different distributions:</p>
+<ul>
+<li>bin distribution - contains the documentation, javadoc, and jar files for Derby.</li>
+<li>lib distribution - contains only the jar files for Derby.</li>
+<li>lib-debug distribution - contains jar files for Derby with source line numbers.</li>
+<li>src distribution - contains the Derby source tree at the point which the binaries were built.</li>
+</ul>
+<p>
+<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-bin.zip">db-derby-10.4.1.3-bin.zip</a> [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-bin.zip.asc">PGP</a>] [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-bin.zip.md5">MD5</a>]<br> 
+<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-bin.tar.gz">db-derby-10.4.1.3-bin.tar.gz</a> [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-bin.tar.gz.asc">PGP</a>] [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-bin.tar.gz.md5">MD5</a>]</p>
+<p>
+<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-lib.zip">db-derby-10.4.1.3-lib.zip</a> [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-lib.zip.asc">PGP</a>] [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-lib.zip.md5">MD5</a>]<br> 
+<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-lib.tar.gz">db-derby-10.4.1.3-lib.tar.gz</a> [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-lib.tar.gz.asc">PGP</a>] [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-lib.tar.gz.md5">MD5</a>]</p>
+<p>
+<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-lib-debug.zip">db-derby-10.4.1.3-lib-debug.zip</a> [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-lib-debug.zip.asc">PGP</a>] [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-lib-debug.zip.md5">MD5</a>]<br> 
+<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-lib-debug.tar.gz">db-derby-10.4.1.3-lib-debug.tar.gz</a> [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-lib-debug.tar.gz.asc">PGP</a>] [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-lib-debug.tar.gz.md5">MD5</a>]</p>
+<p>
+<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-src.zip">db-derby-10.4.1.3-src.zip</a> [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-src.zip.asc">PGP</a>] [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-src.zip.md5">MD5</a>]<br> 
+<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-src.tar.gz">db-derby-10.4.1.3-src.tar.gz</a> [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-src.tar.gz.asc">PGP</a>] [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/db-derby-10.4.1.3-src.tar.gz.md5">MD5</a>] (Note that, due to long filenames, you will need gnu tar to unravel this tarball.)</p>
+<p>There are two separate Eclipse plugins for Derby:</p>
+<ul>
+<li>derby_core_plugin - provides the Derby jar files to other plugins in Eclipse.</li>
+<li>derby_ui_plugin - provides an Apache Derby Nature in Eclipse for easy database application development.</li>
+</ul>
+<p>
+<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/derby_core_plugin_10.4.1.648739.zip">derby_core_plugin_10.4.1.648739.zip</a> [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/derby_core_plugin_10.4.1.648739.zip.asc">PGP</a>] [<a class="external" href="http://archive.apache.org/dist/db/derby/db-derby-10.4.1.3/derby_core_plugin_10.4.1.648739.zip.md5">MD5</a>]<br> 
+<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="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="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>
+<ul>
+<li>Embedded engine with JDBC drivers</li>
+<li>Network Server</li>
+<li>Network client JDBC drivers</li>
+<li>Command line tools: ij (SQL scripting), dblook (schema dump) and sysinfo (system info)</li>
+</ul>
+<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>
+<li>SQL ROW_NUMBER() window function, as described in the SQL 2003 standard section 6.10, for an empty, inlined window specification. The <em>window clause</em>, as described in section 7.11 is not implemented.</li>
+<li>Unique constraints on nullable columns. SQL Feature T591.</li>
+<li>Asynchronous replication with manual fail-over.</li>
+<li>Table Functions. SQL Feature T326. This lets you run queries against any external data source which can be presented as a JDBC ResultSet. Table Functions are useful for data migration and integration. For more information, please consult the "Programming Derby-style table functions" section of the Derby Developer's Guide as well as the functional specification attached to DERBY-716.</li>
+<li>Java Management Extensions (JMX) for Derby, allowing local and remote monitoring and management of a running Derby system (this release includes a basic set of MBeans - it is expected that more JMX functionality will be added in later releases).</li>
+<li>SQL bracketed comments (/*..*/). SQL Feature T351.</li>
+<li>ij continuation marker. Interactive ij shows &gt; prompt until ; is entered.</li>
+<li>A JDBC statement object cache in the client driver. Some limitations imposed by the presence of DERBY-3596.</li>
+<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="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">
+<tr>
+<td><strong>Issue Id</strong></td><td><strong>Description</strong></td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3603">DERBY-3603</a></td><td>'IN' clause ignores valid results, incorrect qualifier handling suspected</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3589">DERBY-3589</a></td><td>AllocPage.createPage() doesn't initialize minimumRecordSize correctly</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3571">DERBY-3571</a></td><td>LOB locators are not released if the LOB columns are not accessed by the client</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3538">DERBY-3538</a></td><td>NullPointerException during execution for query with LEFT OUTER JOIN whose inner table selects all constants.</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3458">DERBY-3458</a></td><td>dblook fails on TERRITORY_BASED databases</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3442">DERBY-3442</a></td><td>Reference Manual doesn't state limit on number of identity columns</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3430">DERBY-3430</a></td><td>Inconsistency in JDBC autogen APIs between Connection.prepareStatement(...) and Statement.execute(...)</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3379">DERBY-3379</a></td><td>"No Current connection" on PooledConnection.getConnection() if pooled connection is reused during connectionClosed processing</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3373">DERBY-3373</a></td><td>SQL "distinct" and "order by" needed together</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3366">DERBY-3366</a></td><td>Various formatting erros in L10N property files</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3354">DERBY-3354</a></td><td>Select from large lob table with embedded gives OutOfMemoryError</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3352">DERBY-3352</a></td><td>truncateTable crashed, Caused by: java.lang.NullPointerException</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3350">DERBY-3350</a></td><td>SQL CAST always marks its type as nullable even if the expression to be cast is not nullable</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3347">DERBY-3347</a></td><td>ERROR XSDB3: Container information cannot change once written</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3343">DERBY-3343</a></td><td>Subsequent calls to PreparedStatement cause SQLIntegrityConstraintViolationException on column that is "Generated always"</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3322">DERBY-3322</a></td><td>Server guide refers to phantom property in template policy file for the Network Server</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3321">DERBY-3321</a></td><td>NullPointerException for 'NOT EXISTS' with nested subquery</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3316">DERBY-3316</a></td><td>Leak in client if ResultSet not closed</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3308">DERBY-3308</a></td><td>Broken synchronization for event handling in ClientPooledConnection40</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3303">DERBY-3303</a></td><td>ArrayIndexOutOfBoundsException at MergeSort.compare</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3302">DERBY-3302</a></td><td>NullPointerException during recovery of database with territory-based collation</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3301">DERBY-3301</a></td><td>Incorrect result from query with nested EXIST</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3299">DERBY-3299</a></td><td>Uniqueness violation error (23505) occurs after dropping a PK constraint if there exists a foreign key on the same columns.</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3298">DERBY-3298</a></td><td>Getting Started manual needs clearer introduction to connection URL</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3288">DERBY-3288</a></td><td>wrong query result in presence of a unique index</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3279">DERBY-3279</a></td><td>Derby 10.3.X ignores ORDER BY DESC when target column has an index and is used in an OR clause or an IN list.</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3278">DERBY-3278</a></td><td>Developer's Guide topic cdevdvlp51654 has duplicate information on connection URL</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3274">DERBY-3274</a></td><td>Developer's Guide has duplicate information on database connections</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3262">DERBY-3262</a></td><td>Documentation is missing cross-references for connection URL attributes</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3260">DERBY-3260</a></td><td>NullPointerException caused by race condition in GenericActivationHolder</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3257">DERBY-3257</a></td><td>SELECT with HAVING clause containing OR conditional incorrectly return 1 row - should return 2 rows - works correctly with 10.2 DB</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3253">DERBY-3253</a></td><td>NullPointer Exception (NPE) from query with IN predicate containing two values and joining a view with a large table. ERROR 38000: The exception 'java.lang.NullPointerException' was thrown while evaluating an expression.</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3247">DERBY-3247</a></td><td>Activation for a dynamic ResultSet created from an Prepared/CallableStatement will not be closed until garbage collection indicates it is unused to the LCC and the LCC closes it</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3244">DERBY-3244</a></td><td>NullPointerException in ....B2IRowLocking3.searchLeftAndLockPreviousKey</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3243">DERBY-3243</a></td><td>(jdbc net client) exception during normal iteration through "ResultSet" of "select * from t"</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3238">DERBY-3238</a></td><td>When table contains large LOB values (&gt; ~32K) trigger execution fails for that row with ERROR XCL30: An IOException was thrown when reading a 'BLOB'</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3231">DERBY-3231</a></td><td>Sorting on COUNT with OR and GROUP BY delivers wrong results.</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3230">DERBY-3230</a></td><td>Selecting data from a Table raises Error XN008: Query processing has been terminated due to an error on the server</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3229">DERBY-3229</a></td><td>testSysinfoLocale fails if derbyTools.jar is first in the classpath</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3226">DERBY-3226</a></td><td>BlobLocatorInputStream.read() and ClobLocatorInputStream.read() don't mask out sign bits</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3221">DERBY-3221</a></td><td>"java.sql.SQLException: The conglomerate (-5) requested does not exist." from Derby 10.3.1.4 embedded within Eclipse 3.3 and RAD 7.0</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3215">DERBY-3215</a></td><td>Potential NullPointerException in CachedPage class</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3214">DERBY-3214</a></td><td>Optimizer can see negative cost estimates when pulling Optimizables from the join order.</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3198">DERBY-3198</a></td><td>Using setQueryTimeout will leak sections</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3194">DERBY-3194</a></td><td>LOCALIZEDDISPLAY of CURRENT_TIMESTAMP returns only the TIME</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3168">DERBY-3168</a></td><td>Reference Manual lacks topics on trace-related connection URL attributes</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3160">DERBY-3160</a></td><td>SYSCS_GET_USER_ACCESS incorrectly treats the passed in user name as a SQL identifier and thus can reports the wrong user information</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3094">DERBY-3094</a></td><td>Grouping of expressions causes NullPointerException</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3084">DERBY-3084</a></td><td>CREATE SCHEMA in refman does not contain material on restrictions in sqlAuthorization mode</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3079">DERBY-3079</a></td><td>Database name is printed twice in derby.log on rollbacks when logStatementText is enabled</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3060">DERBY-3060</a></td><td>Network Server incorrectly assumes that all SQLExceptions with error code 08004 are caused by an authentication failure.</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3044">DERBY-3044</a></td><td>Typos in documentation</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3023">DERBY-3023</a></td><td>Different result rows depending on the sequence of INNER JOIN and OUTER JOIN</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-3001">DERBY-3001</a></td><td>SYSTABLES documentation for TABLETYPE should include 'A' (Synonym)</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-2983">DERBY-2983</a></td><td>The ResultSet returned by DatabaseMetaData.getFunctions() does not contain a required column named FUNCTION_TYPE.</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-2939">DERBY-2939</a></td><td>Log file is flushed every time a log buffer gets full</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-2935">DERBY-2935</a></td><td>DDMReader.readLengthAndCodePoint() decodes long integer incorrectly</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-2815">DERBY-2815</a></td><td>ij doesn't start with J2ME / JSR169 / weme6.1 because attempting to find java.sql.Driver if ij.protocol property is specified</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-2733">DERBY-2733</a></td><td>ij rolls through NullPointerException (NPE) with J2ME/JSR169/WEME 6.1.</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-2683">DERBY-2683</a></td><td>tools and utilities guide: ij.URLCheck's list of checked attributes is not correct</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-2680">DERBY-2680</a></td><td>Reference manual section "Setting attributes.." lacks upgrade=true attribute</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-2592">DERBY-2592</a></td><td>Wrong description of IndexName field in public JavaDoc for LockTable</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-2585">DERBY-2585</a></td><td>Mistaken description in page of CLOB</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-2559">DERBY-2559</a></td><td>recreating a datasource using javax.naming.Reference from a ClientDataSource40 fails</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-2351">DERBY-2351</a></td><td>ORDER BY with expression with distinct in the select list returns incorrect result</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-2270">DERBY-2270</a></td><td>'18 ' (18 followed by four blanks) needs three more blanks</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-2142">DERBY-2142</a></td><td>NullPointerException while using XAConnection/PooledConnection in a heavily contended multithreaded scenario</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-2128">DERBY-2128</a></td><td>The word 'class' appears twice for the message SIF01.V</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-1823">DERBY-1823</a></td><td>Derby Developer's Guide - Issues w/ User authentication and authorization extended examples section/paragraph</td>
+</tr>
+<tr>
+<td><a class="external" href="http://issues.apache.org/jira/browse/DERBY-1585">DERBY-1585</a></td><td>derbylang/procedureInTrigger: not able to create trigger due to an open ResultSet</td>
+</tr>
+<tr>
+<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="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>
+<li>
+<a href="#Note for DERBY-3585"></a>
+<p>Note for DERBY-3585: Shutting down the Network Server now supports user authentication, and in fact requires credentials when authentication is enabled.</p>
+</li>
+<li>
+<a href="#Note for DERBY-3460"></a>
+<p>Note for DERBY-3460: The two following reserved keywords are introduced: <span class="codefrag">NONE</span> and <span class="codefrag">CURRENT_ROLE</span>.</p>
+</li>
+<li>
+<a href="#Note for DERBY-3301"></a>
+<p>Note for DERBY-3301: Queries with nested EXIST, ANY or IN clauses now return correct results.</p>
+</li>
+<li>
+<a href="#Note for DERBY-3026"></a>
+<p>Note for DERBY-3026: The <span class="codefrag">frameworks</span> directory (and its contents) has been removed.</p>
+</li>
+<li>
+<a href="#Note for DERBY-3013"></a>
+<p>Note for DERBY-3013: The column default value can now also be specified as CURRENT_USER or SESSION_USER.</p>
+</li>
+<li>
+<a href="#Note for DERBY-2351"></a>
+<p>Note for DERBY-2351: 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>
+</li>
+<li>
+<a href="#Note for DERBY-2065"></a>
+<p>Note for DERBY-2065: Error code changed for embedded connection when a connection with an open transaction is attempted closed.</p>
+</li>
+</ul>
+<hr>
+<a name="N1032F"></a><a name="Note+for+DERBY-3585"></a>
+<h4>Note for DERBY-3585</h4>
+<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="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>
+<p>In detail, to provide user credentials class org.apache.derby.drda.NetworkServerControl now supports new shutdown command-line options:</p>
+<ul>
+<li>-user &lt;username&gt;</li>
+<li>-password &lt;password&gt;</li>
+</ul>
+<ul>
+<li>NetworkServerControl(String userName, String password)</li>
+<li>NetworkServerControl(InetAddress address, int portNumber, String userName, String password)</li>
+</ul>
+<br>
+<br>
+<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>
+<ol>
+<li>The NetworkServerControl command-line usage changes for shutting down a sever: java org.apache.derby.drda.NetworkServerControl shutdown now results in an exception: 08004:Connection authentication failure occurred. Reason: Invalid authentication. <p>The remedy is to provide credentials: java org.apache.derby.drda.NetworkServerControl shutdown -user &lt;username&gt; -password &lt;password&gt;</p>
+</li>
+<li>The NetworkServerControl API usage to programatically shutdown a server changes: <span class="codefrag">NetworkServerControl nsc = new NetworkServerControl();nsc.shutdown();</span> results in a java.sql.SQLException: Connection authentication failure occurred. Reason: Invalid authentication. <p>The remedy is provide credentials to the NetworkServerControl constructor: <span class="codefrag">NetworkServerControl nsc = new NetworkServerControl(user, password); nsc.shutdown();</span>
+</p>
+</li>
+<li>Note that there is an edge case <span class="codefrag">NetworkServerControl nsc = new NetworkServerControl();nsc.start(console);...nsc.shutdown();</span> which currently fails with the SQLException shown above. <p>A solution is to create the initial NetworkServerControl instance with user credentials: <span class="codefrag">NetworkServerControl nscauth = new NetworkServerControl(user, password);nscauth.start(console);...nscauth.shutdown();</span> Another option is to create a second NetworkServerControl instance with user credential arguments for the purpose of server shutdown: <span class="codefrag">NetworkServerControl nsc = new NetworkServerControl();nsc.start(console);...NetworkServerControl nscauth = new NetworkServerControl(user, password);nscauth.shutdown();</span>
+</p>
+</li>
+<li>If users have their own tests that use Derby's junit test framework, they'll have to use a test decorator that takes user credential arguments.</li>
+</ol>
+<br>
+<br>
+<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="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="N103A1"></a><a name="Note+for+DERBY-3460"></a>
+<h4>Note for DERBY-3460</h4>
+<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="N103B3"></a><a name="Symptoms+Seen+by+Applications+Affected+by+Change-N103B3"></a>
+<h5>Symptoms Seen by Applications Affected by Change</h5>
+<a name="N103B7"></a><a name="Incompatibilities+with+Previous+Release-N103B7"></a>
+<h5>Incompatibilities with Previous Release</h5>
+<a name="N103BB"></a><a name="Rationale+for+Change-N103BB"></a>
+<h5>Rationale for Change</h5>
+<a name="N103BF"></a><a name="Application+Changes+Required-N103BF"></a>
+<h5>Application Changes Required</h5>
+<hr>
+<a name="N103C4"></a><a name="Note+for+DERBY-3301"></a>
+<h4>Note for DERBY-3301</h4>
+<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="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="N103D6"></a><a name="Incompatibilities+with+Previous+Release-N103D6"></a>
+<h5>Incompatibilities with Previous Release</h5>
+<p>None.</p>
+<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="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="N103E9"></a><a name="Note+for+DERBY-3026"></a>
+<h4>Note for DERBY-3026</h4>
+<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="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="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="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="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="N10432"></a><a name="Note+for+DERBY-3013"></a>
+<h4>Note for DERBY-3013</h4>
+<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="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="N10444"></a><a name="Incompatibilities+with+Previous+Release-N10444"></a>
+<h5>Incompatibilities with Previous Release</h5>
+<p>None</p>
+<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="N10450"></a><a name="Application+Changes+Required-N10450"></a>
+<h5>Application Changes Required</h5>
+<p>None.</p>
+<hr>
+<a name="N10457"></a><a name="Note+for+DERBY-2351"></a>
+<h4>Note for DERBY-2351</h4>
+<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="N10463"></a><a name="Symptoms+Seen+by+Applications+Affected+by+Change-N10463"></a>
+<h5>Symptoms Seen by Applications Affected by Change</h5>
+<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>
+<p>create table person (name varchar(10), age int);<br>insert into person values ('John', 10);<br>insert into person values ('John', 30);<br>insert into person values ('Mary', 20);<br>
+<br>SELECT DISTINCT name FROM person ORDER BY age;<br>
+</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="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>
+<p>create table t1 (i int, j int);<br> select t1.id as idcolumn1, t1.id as idcolumn2 from t1 order by t1.idcolumn1, t1.idcolumn2;</p>
+<p>This query is now rejected, as there is no column named 'idcolumn1' in table 't1'. The error message is:</p>
+<p>Valid forms of the query above are:</p>
+<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="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>
+<ul>
+<li>if the table name is provided, we match against the underlying table name, and don't consider any aliases</li>
+<li>if the table name is NOT provided, we first match against the alias name, if present, and if no alias name matches then we match against the underlying source column name.</li>
+</ul>
+<br>
+<br>
+<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="N104AD"></a><a name="Note+for+DERBY-2065"></a>
+<h4>Note for DERBY-2065</h4>
+<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="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="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="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="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="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>
+<li>
+<strong>Branch</strong> - Source code came from the 10.4 branch.</li>
+<li>
+<strong>Machine</strong> - SunOS khepri32 5.10 Generic_127112-01 i86pc i386 i86pc</li>
+<li>
+<strong>Ant</strong> - Apache Ant version 1.7.0 compiled on December 13 2006</li>
+<li>
+<strong>JDK 1.4</strong> - java version "1.4.2_05" Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_05-b04) Java HotSpot(TM) Client VM (build 1.4.2_05-b04, mixed mode)</li>
+<li>
+<strong>Java 6</strong> - java version "1.6.0_04" Java(TM) SE Runtime Environment (build 1.6.0_04-b06) Java HotSpot(TM) Server VM (build 10.0-b18, mixed mode)</li>
+<li>
+<strong>OSGi</strong> - The felix.jar was used to build org.apache.derby.osgi.EmbeddedActivator.</li>
+<li>
+<strong>Compiler</strong> - The 1.6.0_04 javac was used to compile all classes.</li>
+<li>
+<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="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>
+<p>The PGP signatures can be verified using <a class="external" href="http://www.pgpi.org/">PGP</a> or <a class="external" href="http://www.gnupg.org/">GPG</a>. First download the Apache Derby <a class="external" href="http://www.apache.org/dist/db/derby/KEYS">KEYS</a> as well as the <span class="codefrag">asc</span> signature file for the particular distribution. It is important that you get these files from the ultimate trusted source - the main ASF distribution site, rather than from a mirror. Then verify the signatures using ...</p>
+<pre>% pgpk -a KEYS
+% pgpv db-derby-X.Y.tar.gz.asc
+
+<em>or</em>
+
+% pgp -ka KEYS
+% pgp db-derby-X.Y.tar.gz.asc
+
+<em>or</em>
+
+% gpg --import KEYS
+% gpg --verify db-derby-X.Y.tar.gz.asc
+
+</pre>
+<p>To verify the MD5 signature on the files, you need to use a program called <span class="codefrag">md5</span> or <span class="codefrag">md5sum</span>, which is included in many unix distributions. It is also available as part of <a class="external" href="http://www.gnu.org/software/textutils/textutils.html">GNU Textutils</a>. Windows users can get binary md5 programs from <a class="external" href="http://www.fourmilab.ch/md5/">here</a>, <a class="external" href="http://www.pc-tools.net/win32/freeware/console/">here</a>, or <a class="external" href="http://www.slavasoft.com/fsum/">here</a>.</p>
+<p>We strongly recommend you verify your downloads with both PGP and MD5.</p>
+</div>
+</div>
+<!--+
+    |end content
+    +-->
+<div class="clearboth">&nbsp;</div>
+</div>
+<div id="footer">
+<!--+
+    |start bottomstrip
+    +-->
+<div class="lastmodified">
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+//  --></script>
+</div>
+<div class="copyright">
+        Copyright &copy;
+         2004-2012 Apache Software Foundation</div>
+<div id="feedback">
+    Send feedback about the website to:
+  <a id="feedbackto" href="mailto:derby-user@db.apache.org?subject=Feedback%C2%A0releases/release-10.4.1.3.html">derby-user@db.apache.org</a>
+</div>
+<!--+
+    |end bottomstrip
+    +-->
+</div>
+</body>
+</html>



Mime
View raw message