Return-Path: X-Original-To: apmail-db-derby-commits-archive@www.apache.org Delivered-To: apmail-db-derby-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 5917FC3A2 for ; Tue, 15 May 2012 19:54:13 +0000 (UTC) Received: (qmail 57636 invoked by uid 500); 15 May 2012 19:54:13 -0000 Delivered-To: apmail-db-derby-commits-archive@db.apache.org Received: (qmail 57601 invoked by uid 500); 15 May 2012 19:54:13 -0000 Mailing-List: contact derby-commits-help@db.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: "Derby Development" List-Id: Delivered-To: mailing list derby-commits@db.apache.org Received: (qmail 57593 invoked by uid 99); 15 May 2012 19:54:13 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 15 May 2012 19:54:13 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 15 May 2012 19:54:07 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 1A6D12388A67; Tue, 15 May 2012 19:53:47 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1338866 [2/3] - in /db/derby/code/trunk: RELEASE-NOTES.html releaseSummary.xml Date: Tue, 15 May 2012 19:53:46 -0000 To: derby-commits@db.apache.org From: rhillegas@apache.org X-Mailer: svnmailer-1.0.8-patched Message-Id: <20120515195347.1A6D12388A67@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Modified: db/derby/code/trunk/RELEASE-NOTES.html URL: http://svn.apache.org/viewvc/db/derby/code/trunk/RELEASE-NOTES.html?rev=1338866&r1=1338865&r2=1338866&view=diff ============================================================================== --- db/derby/code/trunk/RELEASE-NOTES.html (original) +++ db/derby/code/trunk/RELEASE-NOTES.html Tue May 15 19:53:46 2012 @@ -1,11 +1,11 @@ - -Release Notes for Apache Derby 10.8.0.0 + +Release Notes for Apache Derby 10.9.0.0

-Release Notes for Apache Derby 10.8.0.0

-
-

These notes describe the difference between Apache Derby release 10.8.0.0 and the preceding release 10.7.1.1.

-
+Release Notes for Apache Derby 10.9.0.0 +
+

These notes describe the difference between Apache Derby release 10.9.0.0 and the preceding release 10.8.2.2.

+

Overview

-
+

@@ -60,6 +60,8 @@ Derby functionality includes:

Java and JDBC versions supported: +

+
  • Java SE 1.4 and higher with @@ -70,12 +72,10 @@ Java and JDBC versions supported:
-

- -
+

New Features

-
+

@@ -87,655 +87,920 @@ This is a feature release. The following

  • -JDBC 4.1 - Derby's JDBC drivers support the new Java 7 methods on the java.sql and javax.sql interfaces. This support works with -the pre-GA OpenJDK 7 build 131 available at http://download.java.net/jdk7/ on March 3, 2011. Derby's implementation of these interfaces may -change in a future release in the highly unlikely event that the actual GA version of these interfaces changes.
  • +NATIVE authentication - Derby now provides better credentials management to replace BUILTIN authentication.
  • -Automatic calculation of index statistics - Derby automatically refreshes statistics to help it pick better query plans.
  • +JDBC 4.1 escape syntax - Most of Derby's JDBC 4.1 support was provided in release 10.8.1.2. This release supplies the remaining bits: object mapping and new escape syntax.
  • -Improved interrupt handling - Interrupting connection threads no longer crashes the Derby engine.
  • +Multi-column EXISTS subqueries - Multi-column SELECT lists are now allowed in EXISTS subqueries. -
  • -MAX optimization - On indexed tables, MAX queries run faster in more cases.
  • - - -
  • -XML operator portability - The xmlparse and xmlserialize operators work out-of-the-box on more platforms.
  • - - -
    +

    Bug Fixes

    -
    -

    The following issues are addressed by Derby release 10.8.0.0. These issues are not addressed in the preceding 10.7.1.1 release.

    +
    +

    The following issues are addressed by Derby release 10.9.0.0. These issues are not addressed in the preceding 10.8.2.2 release.

    - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Issue IdDescription
    DERBY-5162CLOB INOUT arg set to NULL by procedure does not preserve NULL value when re-invokedDERBY-5759Add IndexStatsUtil.release(boolean closeConnection)
    DERBY-5755Minor cleanup of DataDictionaryImpl.getRoutineList()
    DERBY-5753nighly regression test failure in testLeak(org.apache.derbyTesting.functionTests.tests.memory.Derby5730Test) process failed
    DERBY-5751Make TriggerTest less hungry on heap space
    DERBY-5745Remove unused local variables from DataDictionaryImpl
    DERBY-5737Remove GenericDescriptorList.elements and replace Enumerator usage with Iterator
    DERBY-5736NullPointerException in GenericTriggerExecutor.executeSPS() caused by OutOfMemoryError
    DERBY-5734End transaction if CleanDatabaseTestSetup.decorateSQL fails
    DERBY-5733Source file for OrderByAndSortAvoidance contains characters not available in the C locale
    DERBY-5732ProtocolTest doesn't clean up its test resources
    DERBY-5730DataDictionaryImpl leaks references to itself via SYSFUN_AD
    DERBY-5729Replication tests keep references to connections after completion
    DERBY-5727Update POMs to deploy Maven artifacts to repository.apache.org and use ASF parent POM
    DERBY-5726Make it more difficult to forget calling super.tearDown() from BaseJDBCTestCase's subclasses
    DERBY-5725ErrorStreamTest doesn't call super.tearDown()
    DERBY-5724EncryptionKeyTest sometimes keeps reference to connection
    DERBY-5723LongColumnTest doesn't call super.tearDown()
    DERBY-5722InternationalConnectTest forgets to call super.tearDown()
    DERBY-5721ParameterMappingTest lacks call to super.tearDown()
    DERBY-5720UngroupedAggregatesNegativeTest doesn't call super.tearDown()
    DERBY-5719UniqueConstraintMultiThreadedTest doesn't call super.tearDown()
    DERBY-5718UniqueConstraintSetNullTest calls super.tearDown() too early
    DERBY-5717TableFunctionTest keeps reference to connection after completion
    DERBY-5716TimestampArithTest keeps references to statements after completion
    DERBY-5715InbetweenTest holds on to resources after completion
    DERBY-5714ColumnDefaultsTest holds on to resources after completion
    DERBY-5713AlterTableTest holds on to resources after completion
    DERBY-5712CheckConstraintTest holds on to resources after completion
    DERBY-5711NullsTest doesn't call super.tearDown()
    DERBY-5710BigDataTest.tearDown() doesn't call super.tearDown()
    DERBY-5709ResultSetFromPreparedStatementTest keeps references to non-default connections
    DERBY-5708simpleThread test doesn't release connection
    DERBY-5707Clean up statements in CharUTF8Test
    DERBY-5706Clean up statements in CreateTableFromQueryTest
    DERBY-5705Authorization decorators don't null out connections when done
    DERBY-5704Various cleanups in CoalesceTest
    DERBY-5701Make UpdatableResultSetTest less hungry on heap space
    DERBY-5700Delete symlinks to the 10.0 manuals from the web site
    DERBY-5699Disable automatic conversion to star imports in NetBeans project
    DERBY-5698Document performance issue with 2-arg versions of setXXXStream methods for LOBs
    DERBY-5697Doc changes to account for correctness fixes for sequences
    DERBY-5696Documentation on LOBs needs some fixes
    DERBY-5695Speed up population of tables in OrderByAndSortAvoidance
    DERBY-5693BUILTIN should say passwords are hashed not encrypted
    DERBY-5692intermittent test failure in storetests/st_derby715.java
    DERBY-5683BaseJDBCTestCase.getDatabaseProperty() should close resources before returning
    DERBY-5682ProtocolTest failures: Unsupported encoding MacGreek
    DERBY-5678LocalizedDisplayScriptTest fails on JVMs that don't support EUC_JP encoding
    DERBY-5677ClassNotFoundException when running suites.All without derbynet.jar
    DERBY-5671NsTest does not run on trunk do multiple issues stemming from concurrency improvements
    DERBY-5667testReadCommitted(org.apache.derbyTesting.functionTests.tests.store.UpdateLocksTest)junit.framework.AssertionFailedError: Missing rows in ResultSet
    DERBY-5664Include driver tests in jdbcapi suite
    DERBY-5657Message XCY05 for NATIVE authentication is (too?) complex
    DERBY-5655Preformatted text should not be used for graphic
    DERBY-5653We should document that the NetServlet is a testing tool and not appropriate for production use.
    DERBY-5649make improvements to nstest so it's easier to run/analyze/debug
    DERBY-5648Unclear password expiry warning when using separate credentials db
    DERBY-5647NATIVE warns about password expiry for DBO
    DERBY-5646Get upgrade tests to pass on OJEC 1.1
    DERBY-5645Reference manual says setBlob()/setClob()/getBlob()/getClob() are not supported on CallableStatement
    DERBY-5161Cannot rollback after syntax error in internal statementDERBY-5644Typo in error message for NATIVE authentication
    DERBY-5157Incomplete quoting of SQL identifiers in AlterTableConstantActionDERBY-5643Occasional hangs in replication tests on Linux
    DERBY-5152Shutting down db, information that the thread received an interrupt will not be restored to thread's interrupt flagDERBY-5642OutOfMemoryError in OCRecoveryTest on phoneME
    DERBY-5148Fixes for problems with figures in documentationDERBY-5641Remove unused BaseDataFileFactory methods plus minor cleanups
    DERBY-5143Remove unnecessary copying of the map in getTypeMap()DERBY-5640Use <desc> element for table summary
    DERBY-5136Simple accessibility fixes to frames HTML doc outputDERBY-5639Minor code cleanup for NetServlet
    DERBY-5124NPE or assert failure printed when dropping table while statistics are written outDERBY-5637Document Derby's JMX capabilities and how to disable them
    DERBY-5121Data corruption when executing an UPDATE triggerDERBY-5636Improve the overview of Derby's security mechanisms
    DERBY-5119testQualifiers(org.apache.derbyTesting.functionTests.tests.store.AccessTest)java.sql.SQLException: Table/View 'FOO' already exists in Schema 'APP'.DERBY-5635Provide implementation for getMetaData() in VTITemplate
    DERBY-5117ParameterMetaDataJdbc30Test fails with "'DUMMYINT' is not recognized as a function or procedure"DERBY-5633Add tests for state transition and behavior with Lock Timeout in XA Transaction (DERBY-5552 testing task)
    DERBY-5116SequenceTest fails with "Sequence 'MYSEQ1' already exists"DERBY-5631Extend SecurityManagerSetup to add extra privileges to the set of default privileges (merge two policy files)
    DERBY-5115NetworkServerControlApiTest depends on implicit ordering of test casesDERBY-5628Wrong syntax description in DELETE statement doc
    DERBY-5114Assert failure in SavepointJdbc30Test.testReleaseSqlSavepointAndRollbackDERBY-5627Remove unused methods in UUID classes
    DERBY-5113Intermittent failure in BlobSetMethodsTest on Java 7: Unable to set stream: 'Reached EOF prematurely; expected 1,024, got 0.'DERBY-5624System can run out of stack space while processing DropOnCommit requests.
    DERBY-5112ImportExportTest depends on implicit ordering of test casesDERBY-5623Loosen up synchronization in FileMonitor
    DERBY-5107BasicInMemoryDbTest depends on implicit ordering of test casesDERBY-5620Replace illegal characters from test name when creating the failure folder
    DERBY-5106Lacking cleanup in CheckConstraintTest.testJira4282()DERBY-5617Improve process handling in SpawnedProcess
    DERBY-5104InterruptResilienceTest fails to remove tables in tearDown()DERBY-5616demo/vtis/sql/demoFileVtis.sql needs to be adjusted: messages_en.properties has moved
    DERBY-5103ProcedureInTriggerTest depends on implicit ordering of test casesDERBY-5614NullPointerException with INSERT INTO [global temporary table] SELECT ... FROM [VTI]
    DERBY-5102GrantRevokeDDLTest depends on implicit ordering of test casesDERBY-5612Puzzling documentation about the URL to a database on the classpath
    DERBY-5101TruncateTableTest depends on implicit ordering of test casesDERBY-5609Prepare old test harness for running tests on Java 8
    DERBY-5100GetCurrentPropertiesTest depends on implicit ordering of test casesDERBY-5608BaseTestCase.readProcessOutput should read getInputStream() and getErrorStream() in separate threads
    DERBY-5099PrepareStatementTest depends on ordering of test casesDERBY-5604[patch] access static constants with static references
    DERBY-5095Update XML operator documentation to reflect new requirementsDERBY-5603EmbedConnection.clearLOBMapping() incorrectly clears lobFiles causing a ConcurrentModificationException
    DERBY-5093[patch] avoid Integer allocations fetching client meta data infoDERBY-5599readlocks.sql fails with extra locks.
    DERBY-5092[patch] avoid Boolean allocations for rowset data in client cursorDERBY-5598testStartWithPrintWriter(org.apache.derbyTesting.functionTests.tests.derbynet.DerbyNetNewServerTest)junit.framework.AssertionFailedError: Num of log item should add
    DERBY-5089Improve tracing/logging of runtime exceptions raised in the istat threadDERBY-5596TIMESTAMP doc gives wrong precision limitation
    DERBY-5088ShutdownException raised in istat thread during factory callDERBY-5587Due to licensing issues, fix or remove the monohtml docs posted on Derby's documentation page.
    DERBY-5087NPE in istat daemon when encountering critical exception during shutdownDERBY-5586Remove the fo2html.xsl script from the docs repository and fix the docs and release builds so that they don't build monohtml versions of the Derby manuals.
    DERBY-5086Disable istat logging by defaultDERBY-5584Select statement with subqueries with group by and count distinct statements returns wrong number of results
    DERBY-5085After specifying deregister=false on the engine shutdown URL, Derby forgets that the default behavior is deregister=trueDERBY-5580NativeAuthenticationServiceTest getting multiple errors trying to delete files/directories during teardown
    DERBY-5082ShutdownException in ContextManager.checkInterrupt() during shutdownDERBY-5574encryption test in encryption nightly suite test fails with ERROR XBM0S: Unable to rename file error
    DERBY-5079DERBY-4984 caused a regression which will not allow users to drop a table if the table was involved in a trigger action rebind during ALTER TABLE DROP COLUMNDERBY-5568AssertionFailedError: Should not hold locks after commit in ResultSetMiscTest
    DERBY-5078Incorrect list of compatible JRE versions in client traceDERBY-5567AlterTableTest#testDropColumn fails: drop view cannot be performed due to dependency
    DERBY-5076[patch] move instanceof check up above where casts occurDERBY-5564Code does different things depending if derby.locks.deadlockTrace=true is set
    DERBY-5074test failure(s) with IBM 1.4.2 in store.InterruptResilienceTest.testRAFWriteInterrupted: java.sql.SQLException: The exception 'junit.framework.AssertionFailedError: interrupt flag lost' was thrown while evaluating an expression.DERBY-5562An read-only XA transaction that has a timeout never has the timer canceled when the transaction is complete
    DERBY-5069Since Feb 7,2011 weme 6.2 Junit tests have failed to run completely with Failed to invoke suite():java.lang.reflect.InvocationTargetExceptionDERBY-5559AssertFailures (7, or 8) with ibm 1.6 and 1.5 on Windows XP in lang.NativeAuthProcs fixture testAll
    DERBY-5067Performance regression tests should populate tables before creating indexesDERBY-5558NullPointerException in store.RecoveryTest launchRecoveryInsert and failure in testBasicRecovery with weme 6.2
    DERBY-5063Embedded driver allows updateBytes() on BOOLEAN columnDERBY-5557NULLIF topic in reference manual should explain NULLIF
    DERBY-5062[patch] push code assignments down to where they are used - part 2DERBY-5552Derby threads hanging when using ClientXADataSource and a deadlock or lock timeout occurs
    DERBY-5060[patch] use collection apisDERBY-5550Document derby.authentication.builtin.saltLength and derby.authentication.builtin.iterations
    DERBY-5056Incorrect statement in reference manual about memory requirement when streaming columnsDERBY-5547NSSecurityMechanismTest fixture testNetworkServerSecurityMechanism fails intermittentlyt
    DERBY-5055[patch] add visibility to static method callsDERBY-5542Remove checks for Java version being greater than or equal to 1.4
    DERBY-5054[patch] better npe handling in exceptional caseDERBY-5541Remove unnecessary field rwsOK in DirStorageFactory4
    DERBY-5053[patch] reduce superfluous boxing histrionicsDERBY-5540Call initCause() and getCause() without reflection in BaseJDBCTestCase
    DERBY-5052[patch] Bad name collision causes non functional methodDERBY-5539Harden password hashing in the builtin authentication service
    DERBY-5051Update the docs to include the additional information available in derby.log. This information will be useful from product supportability stand pointDERBY-5536Client's ResultSet#getLong does not range check when converting from a DECIMAL column
    DERBY-5050BrokeredConnection could call setHoldability() without using reflectionDERBY-5535Remove unused methods from client's CrossConverters class.
    DERBY-5047Documentation links to java.sun.com should be updatedDERBY-5533Client differs from embedded when rs.updateInt overflows: 22015 vs 22003
    DERBY-5046Intermittent assert failure in AutomaticIndexStatisticsTest.testStatisticsCorrectnessDERBY-5530SQLChar.getCollationKey NPE in index-stat-thread
    DERBY-5045Assert failures in UpdateStatisticsTestDERBY-5529XATransactionTest: Table/View 'DERBY1016' already exists
    DERBY-5043Document the new url attribute deregister to keep the AutoloadedDriver registers in DriverManagerDERBY-5527Documentation problem: 5 - Verifying the copy of the files
    DERBY-5042ResultSet.updateBoolean() on new BOOLEAN type throws exceptionDERBY-5526on upgrade from 10.5 to 10.8.2 , getting ERROR XBM0A: The database directory 'C:\cygwin\home\debugfat\clientdb' exists. However, it does not contain the expected 'service.properties' file.
    DERBY-5040On Windows, cascade of errors after failed test AutomaticIndexStatisticsTestDERBY-5524Speed up clean-up after StatementJdbc30Test.xtestMaxOpenStatementsWithQueryTimeout
    DERBY-5039store/updatelocksJDBC30.sql test failing in tinderbox when background update statistics are enabled.DERBY-5522Document the NATIVE authentication scheme.
    DERBY-5038updatelocks test failing in tinderbox when background update statistics are enabled.DERBY-5521JDBCMBeanTest#testAttributeDriverLevel uses Java assert in lieu of JUnit assert: no real testing happens
    DERBY-5037Assertion failure from index-stat-thread when running AutomaticIndexStatisticsTestDERBY-5519Update code in JVMInfo#derbyVMLevel to give correct results for Java 7 and provisionally for 8.
    DERBY-5036[patch] fix impossible comparison due to sign extensionDERBY-5517testReplication_Local_3_p1_StateNegativeTests failed with connection refused
    DERBY-5034[patch] bad field masking makes non functional rowsInput evaluationDERBY-5516Document the fact that attributes on the connection URL trump attributes specified in a connection Properties object.
    DERBY-5033[patch] System.arraycopy, being native, is more performantDERBY-5515Derby mailing lists should be mentioned in documentation
    DERBY-5032[patch] derived InternalXact attempts (and fails) to override a method from baseDERBY-5514SecureServerTest (and others) don't play nice with EMMA: AccessControlException
    DERBY-5029getParentLogger() won't work after the engine has been shut down onceDERBY-5512emma-single and emma-all don't use the instrumented jars
    DERBY-5028InterruptResilienceTest passes with IBM 1.6 SR9 but creates javacore dumpsDERBY-5509javadoc for NetServlet and NetworkServerControl are missing a few closing tags
    DERBY-5024Document the behavior of interrupt handling.DERBY-5507Orderly shutdown fails if you are using BUILTIN authentication and turn on derby.database.propertiesOnly
    DERBY-5023Cannot find Ant libraries when building from NetBeansDERBY-5505BLOB and CLOB Reference Manual topics could use some fixes
    DERBY-5022[patch] override equals correctlyDERBY-5504SecureServerTest, Driver40UnbootedTest and replication tests not prepared for space in java.home
    DERBY-5021[patch] avoid map look ups in a loop by using entrySetDERBY-5502RestrictiveFilePermissionsTest and RecoveryTest fail with file permission errors on the OpenJDK 7 preview for Mac OS X
    DERBY-5020[patch] remove redundant finalizer methodsDERBY-5501Subquery is only allowed to return a single column - When using derby with hibernate (or JPA) queries are created per JPA spec. For tables with multi-column PK, subqueries are created with two columns in select clause.
    DERBY-5019[patch] quiet the ant build with 1.8.1+DERBY-5498ClosedByInterruptException in AuthenticationTest
    DERBY-5018[patch] remove erroneous throws clauses on non derivable methods that don't throwDERBY-5496The JUnit infrastructure package should be compiled against the small device classpath, not the JDK 1.4 classpath
    DERBY-5017[patch] push code assignments down to where they are usedDERBY-5495Master issue to track fixes to sequence generators
    DERBY-5015Use Arrays.fill() in client/am/ResultSet.javaDERBY-5492Restrictive file permissions: permissions removed also for owner on NTFS if Acl does not contain explicit entry for owner
    DERBY-5013[patch] remove dead allocationDERBY-5491[patch] new String("") or new String() is pointless, and just allocates memory needlessly - removed
    DERBY-5012[patch] bad allocation guard in ResultSet#resetUpdatedColumnsForInsertDERBY-5490Lots of error trying to spawn a JVM in the SecureServerTest and Replication tests when running on the preview JDK 7 on Mac OS X
    DERBY-5011[patch] Client driver lexer to determine statement type: fix bad attempt at incrementing a variableDERBY-5489getBinary() returns incorrect data after getObject() call on BLOB column
    DERBY-5009[patch] RelaseNotesTransformer: make proper string replacements for forrestDERBY-5488Add remaining JDBC 4.1 bits which did not appear in the Java 7 javadoc.
    DERBY-5008[patch] fix npe in error conditionDERBY-5485Simplify PropertySetter so that it is less brittle and easier to maintain.
    DERBY-5005Error when fully qualifying a field from a view in an ORDER BY clauseDERBY-5482Reduce number of jar invocations in the buildjars target
    DERBY-5004Typo in column name "HASH_KEY_COLUMN_NUMBER" in SYSXPLAIN_SCAN_PROPS system table documentationDERBY-5480File handle leak in MessageVetter
    DERBY-5002In case of checksum error, insure correct error reported to user.DERBY-5479Don't run MessageVetter unless messages have changed
    DERBY-5001Intermittent bug in InterruptResilienceTestDERBY-5478Speed up creation of bin scripts
    DERBY-4999Docs build fails under C localeDERBY-5477Switch from scpexe to scp for Maven deployment
    DERBY-4997SysinfoTest version output filtering is fragile with new java versionsDERBY-5476Remove unused parameter in splitmessages
    DERBY-4995Docs build creates extraneous devguide directoryDERBY-5474Speed up message splitting in build
    DERBY-4992Release notes should specify which Java version is needed to run DerbyDERBY-5472Speed up MemoryLeakFixesTest.testRepeatedDatabaseCreationWithAutoStats()
    DERBY-4991The derby security policy in the Admin Guide is stale.DERBY-5469Make it possible to build Derby if you are on Mac OS X and your JDK is JDK 7
    DERBY-4990Documentation should state a custom security policy being required to use LDAP in conjunction with network driverDERBY-5467Copyright notice in the API documentation (generated by the Javadoc tool) is outdated
    DERBY-4988ALTER TABLE DROP COLUMN should make use of information in SYSTRIGGERS to detect column used through REFERENCING clause to find trigger dependenciesDERBY-5465Broken null checks in NsTest
    DERBY-4987BootLockTest can hang reading spawned process outputDERBY-5464Add easier to find links to Derby JavaDoc on the Derby web site
    DERBY-4986Document the new property derby.stream.error.extendedDiagSeverityLevel for thread dump and extend diagnostic informationDERBY-5459Result set metadata are out of sync on client after underlying table is altered
    DERBY-4985BootLockTest can fail with ERROR XCY03: Required property 'derby.serviceProtocol' has not been set with slow configurationsDERBY-5458Add ant target to generate JavaDocs bundle
    DERBY-4983failure in jdbcapi.StatementJdbc20Test:testCompletionClosure_jdbc4_1 with j9 (j2ME/CDC)DERBY-5456Problems running SecureServerTest and replication tests on Open JDK 7 for Mac OS X
    DERBY-4982Retrying after interrupts in store pops a bug in derbyall/storeall/storeunit/T_RawStoreFactory in some casesDERBY-5454ERROR 40001 deadlock in nstest on select max(serialkey)
    DERBY-4980Replication tests lose derby.log for slaveDERBY-5453Remove unused methods in Cursor and NetCursor
    DERBY-4979build.properties in plugins/eclipse/org.apache.derby.ui refers to non-existent file install_plugin.htmlDERBY-544910.8 client with 10.5 server gives java.lang.ClassCastException: java.lang.Boolean incompatible with java.lang.Short in NetStatementRequest.buildFDODTA with CursorTest.testCursorParam()
    DERBY-4978Document the new SQLPermission required by the JDBC 4.1 Connection.abort(Executor) methodDERBY-5442Create documentation for restrictive file permissions feature
    DERBY-4974InterruptResilienceTest fails on Solaris with Sun VMs prior to 1.6DERBY-5440test failure in testBTreeForwardScan_fetchRows_resumeAfterWait_nonUnique_split(org.apache.derbyTesting.functionTests.tests.store.IndexSplitDeadlockTest)junit.framework.AssertionFailedError: expected:<1> but was:<0>
    DERBY-4973NullPointerException in updatelocks.sql encryption tests on IBM 1.6DERBY-5439Remove JRE / JDBC line from sysinfo
    DERBY-4970ClassCastException from getBlob() on string parameterDERBY-5437Load all toursdb tables in one invocation of ij
    DERBY-4968Let query stop execution if an interrupt is seen, at same time as we check the query timeoutDERBY-5436Use helper method to add warning in EmbedResultSet.movePosition()
    DERBY-4967Handle interrupt received while waiting for database lockDERBY-5434On linux with IBM JDK 1.7 suites.All does not run at all failing with java.lang.reflect.InvocationTargetException
    DERBY-4965Boolean to char conversion results in integerDERBY-5427Unauthorized shutdown should not generate thread dump and javacore. AuthenticationTest dumps over 20 javacores with IBM JVM for normal user errors
    DERBY-4964Client driver fails to convert string to boolean with setObject(col, str, Types.BIT)DERBY-5420Regression suite appears locale sensitive: failed in TableLockBasicTest: bug in RealBasicNoPutResultSetStatistics
    DERBY-4963Revert to FileDescriptor#sync from FileChannel#force to improve interrupt resilienceDERBY-5406Intermittent failures in CompressTableTest and TruncateTableTest
    DERBY-4960Race condition in FileContainer#allocCache when reopening RAFContainer after interruptDERBY-5383Add articles and blog links to the site's Resources tab
    DERBY-4959NPE in network server trying to return a null LOB as a procedure output argDERBY-5382Convert existing harness recovery tests to JUnit tests
    DERBY-4958Wrapper types not recognized when resolving procedures with OUT arguments.DERBY-5379testDERBY5120NumRowsInSydependsForTrigger - The number of values assigned is not the same as the number of specified or implied columns.
    DERBY-4951test failure in jdbc4.ResultSetTest:testJDBC4_1 with ibm 1.6 jvmDERBY-5378Update Derby web site copyright notice (2011)
    DERBY-4950AccessControlException when running AssertFailureTest from AntDERBY-5374converted ij5Test fails with weme6.2 (CDC/Foundation): junit.framework.ComparisonFailure: Output at line 1 expected:<CONNECTION0* - jdbc:derby:wombat> but was:<ERROR XJ004: Database '' not found.>
    DERBY-4949Backward, confusing error message when you use the wrong ResultSet.getXXX() method in the client driverDERBY-5370The toSQL method of the org.apache.derby.vti.Restriction class does not output correct constants for VARCHAR, Timestamp, Date, Time, or CHAR FOR BIT DATA types
    DERBY-4948Inconsistent casing of IPv4/IPv6 in admin guideDERBY-5368Convert tools/ij2.sql to junit
    DERBY-4947Missing/broken synchronization in BasicDependencyManager.getDependents()DERBY-5363Tighten permissions of DB files to owner with >= JDK7
    DERBY-4946Derby 10.7 DatabaseMetaData.getTypeInfo() should not return BOOLEAN for a soft upgraded databaseDERBY-5357SQLJ.INSTALL_JAR shouldn't use identifier as file name
    DERBY-4944Embedded Derby does not start when derby.jar is dynamically uploaded / added to the classpathDERBY-5355Remove *.out from svn:eol-style paragraph in docs environment instructions
    DERBY-4943TRUNCATE TABLE docs should state that it doesn't work for temporary tablesDERBY-5349Clean docs build fails to pick up customized map2htmtoc.xsl
    DERBY-4942Describe how to run compatibility tests from JUnit in READMEDERBY-5346ij3Test fails on phoneME
    DERBY-4941Invalid example URL in German help text for dblookDERBY-5345URLCheck fails on phoneME
    DERBY-4939Enable istat daemon and testsDERBY-5343Starting 7/13/2011 weme 6.2 upgrade tests started failing with 213 failures 127 errors with java.lang.IllegalAccessException
    DERBY-4938Implement istat scheduling/triggeringDERBY-5342make ScriptTestCase support "ij.showNoCountForSelect" and "ij.showNoConnectionsAtStart"
    DERBY-4937Enable explicit mode istat daemon code for UPDATE_STATISTICSDERBY-5332Convert tools/ij3.sql to junit
    DERBY-4936Add core istat daemonDERBY-5327Convert tools/ij5.sql to junit
    DERBY-4935Add initial istat testsDERBY-5326Convert tools/ij6.sql to junit
    DERBY-4933Use framework helper methods to check result sets in DatabaseMetaDataTestDERBY-5316Unload old JDBC drivers when done with them in the upgrade tests
    DERBY-4932Move the StringColumnVTI to the public apiDERBY-5311Convert tools/ij4.sql to junit
    DERBY-4929Engine code should not use java/shared/org/apache/derby/shared/common/error/ErrorUtil.javaDERBY-5310PropertySetter prints warning when building with JDK 7
    DERBY-4928Deadlock-prone synchronization in BasicDependencyManagerDERBY-5308Investigate if largeData/LobLimits.java can be run for client
    DERBY-4920suites.All stuck in RAFContainer4.awaitRestoreChannel()DERBY-5306Remove dead methods (June 2011)
    DERBY-4918Minor refactoring of SPSDescriptorDERBY-5305Convert store/updatelocks.sql to JUnit
    DERBY-4915test failure in OSReadOnlyTest in assertDirectoryDeletedDERBY-5303Convert tools/URLCheck.sql to junit
    DERBY-491310.3 to 10.5 upgrade fails with ava.io.StreamCorruptedException: java.lang.ClassCastException: org.apache.derby.catalog.types.OldRoutineType incompatible with org.apache.derby.iapi.types.DataTypeDescriptorDERBY-5302Convert tools/ij(?).sql to junit
    DERBY-4912Instability in Derby2017LayerBTestDERBY-5301Convert store/TableLockBasic.sql to junit
    DERBY-4907EmbeddedXADataSource with ;create=true attribute set in setDatabaseName fails with java.sql.SQLException: Database not availableDERBY-5300Change derby.tests.trace to print the class as well as fixture name
    DERBY-4897Get rid of warning for customized tags in javadoc buildDERBY-5293Replace bubble sort in DataDictionaryImpl and CreateTriggerNode with Collections.sort()
    DERBY-4856Add thread dump information when derby crashDERBY-5286Update tools/ide/netbeans directory
    DERBY-4853log derby.properties location and derby.log location to derby.logDERBY-5283Crash / process termination during SYSCS_DISABLE_LOG_ARCHIVE_MODE can leave service.properties broken
    DERBY-4837Prepare lang.UpdateStatisticsTest for automatic index statistics generationDERBY-5282Convert store/RowLockBasic.sql to junit
    DERBY-4771Continue investigation of automatic creation/update of index statisticsDERBY-5277Intermittent OutOfMemoryErrors in BasicSetup.testTriggersWithLOBcolumns()
    DERBY-4741Make embedded Derby work reliably in the presence of thread interruptsDERBY-5275Remove empty, unused methods in client/am/Lob.java
    DERBY-4727Document derby.stream.error.logBootTrace=true diagnostic propertyDERBY-5269Remove unused methods getSocketAndInputOutputStreams and checkAlternateServerHasEqualOrHigherProductLevel in NetConnection
    DERBY-4713Subclasses of ScriptTestCase can not run correctly with the non-English default localeDERBY-5267Shut down engine for old versions in upgrade tests to save memory
    DERBY-4691The Reference Guide should say that SYSCOLPERMS.COLUMNS and SYSCOLUMNS.COLUMNDEFAULT are not part of Derby's public apiDERBY-5260Remove unused "replace" argument to backup variant of StorageFactoryService#saveServiceProperties
    DERBY-4656eclipse ui/doc plugin 1.1.2 was built with 1.6 jvm, results in "The chosen operation is not currently available" on Add Derby Nature with 1.5 jvmsDERBY-5256Improve error reporting in common.sanity.AssertFailure
    DERBY-4614JDBC metadata gives incorrect lengths for timestampsDERBY-5246Simplify bytecode generation for concatenation operator
    DERBY-4573Reference manual is unclear about the purpose of REFERENCEDCOLUMNS in SYSTRIGGERS table.DERBY-5229Testing README; tstjardir
    DERBY-4540'AssertionFailedError' in 'store.AccessTest.testCS4595B_UniqueIndex(AccessTest.java:1729)' on SUSE Linux / IBM JIT - r9DERBY-5227Put a link to developers' wiki page
    DERBY-3980Conflicting select then update with REPEATABLE_READ gives lock timeout instead of deadlockDERBY-5224[patch] reduce cohesion by removing overzealous casting
    DERBY-3258'Unexpected row count: expected:<0> but was:<3>' in testReleaseCompileLocksDERBY-5210Use java.nio.ByteBuffer in client.net.Request
    DERBY-3009Out of memory error when creating a very large tableDERBY-5202Add colnum attribute to the colspecs generated by MessageBuilder in order to eliminate some severe warnings while building the pdf version of the Derby user guides.
    DERBY-2949AssertionFailedError in testStalePlansOnLargeTableDERBY-5200[patch] embellish build.xml to automatically install junit.jar in the correct directory if it doesn't exist.
    DERBY-2905Shutting down embedded Derby does not remove all code, the AutoloadDriver is left registered in the DriverManager.DERBY-5189PropertySetter should ignore GCJ installations
    DERBY-2739Use DOM interfaces to implement XML operatorsDERBY-5163[patch] fix up sql cleanup handling
    DERBY-2515Network client does not retain the INOUT parameter value change for subsequent executionDERBY-5156convert store/longColumn.sql into junit test case
    DERBY-642SELECT MAX doesn't use indices optimallyDERBY-5155Make testcases pass in non-English locale
    DERBY-5145Provide option to limit compatibility test to combinations that include trunk
    DERBY-5127Convert madhare.sql to JUnit
    DERBY-5096DisconnectException: "Connection was refused because the database DB was not found" when creating db for first time
    DERBY-5090Retrieving BLOB fields sometimes fails
    DERBY-5080Utilize JQL to fetch JIRA issue list for release notes generation
    DERBY-5077[patch] remove non productive instanceof checks
    DERBY-5068Investigate increased CPU usage on client after introduction of UTF-8 CcsidManager
    DERBY-5010[patch] bad equivalence check
    DERBY-4962Create a table function which efficiently migrates data out of foreign databases and which can be used for ongoing data integration
    DERBY-4795Starting network server with -ssl turns SSL off
    DERBY-4533Delete old releases from http://www.apache.org/dist
    DERBY-4532Old download pages should refer to archive.apache.org only
    DERBY-4521Stream passed out to user does not heed close, allowing reads after next ResultSet#getXXX
    DERBY-4466Download page does not have link to KEYS file
    DERBY-4321test nstest generates errors XBM06 re reencryption and 22003 re value outside range for decimal/numeric
    DERBY-4291Intermittent failure in 'store/updatelocks.sql' on Windows Vista
    DERBY-4280Property not documented - derby.language.statementCacheSize
    DERBY-4249Create a simple store recovery test in JUnit
    DERBY-4201SecureServerTest AssertionFailedError: Timed out waiting for network server to start
    DERBY-4089It should be possible to run unit tests right after "ant all"
    DERBY-3913mismatch between error XCL30 and 22003.S.4 and parameters in usage
    DERBY-3823NullPointerException in stress.multi test
    DERBY-3808Convert subquery.sql to junit
    DERBY-3740BlobClob4BlobTest.testLockingWithLongRowBlob fails with .AssertionFailedError: FAIL - statement should timeout
    DERBY-3146Adjust length restriction on user identifiers (authorization ids) to same as other identifiers
    DERBY-2720remove dead code associated with unsupported National Char implementation
    DERBY-2687store/encryptDatabase.sql fails intermittently with ClassNotFoundException, Log Corrupted
    DERBY-2402client ResultSetMetaData for select * after alter table does not return added columns
    DERBY-2066DisconnectException: The DDM object 0x1232 is not supported following shutdown of embedded engine while network server is running
    DERBY-2031Convert derbynet/testProtocol.java to JUnit
    DERBY-1913storetests/st_reclaim_longcol.java fails intermittently
    DERBY-1888Convert LOB tests to Junit
    DERBY-1482Update triggers on tables with blob columns stream blobs into memory even when the blobs are not referenced/accessed.
    DERBY-1256Remove usage of non-portable methods in derby code
    DERBY-1016javax.transaction.xa.forget (Xid) raises XAER_NOTA exception instead of XA_PROTO on a prepared transaction
    DERBY-866Derby User Management Enhancements
    -
    +

    Issues

    -
    -

    Compared with the previous release (10.7.1.1), Derby release 10.8.0.0 introduces the following new features and incompatibilities. These merit your special attention.

    +
    +

    Compared with the previous release (10.8.2.2), Derby release 10.9.0.0 introduces the following new features and incompatibilities. These merit your special attention.


    -Note for DERBY-5121

    -
    +Note for DERBY-5564 +

    Summary of Change

    -In Derby 10.7.1.1, update triggers with REFERENCING clauses can corrupt data. Users are urged to -upgrade to the next release in the 10.7 family or to 10.8. + The SQL state of the error returned from a lock timeout when the property + "derby.locks.deadlockTrace=true" is set will return 40XL1 rather than + 40XL2. 40XL1 is the documented SQL state for lock timeouts returned from + Derby.

    - For instance: - In the previous release, applications were able to open two - InputStreams on the same column. Depending on how these streams - interacted, the value siphoned out of the column was erratic. Now - Derby raises a SQLException when the application attempts to create - the second InputStream. +

    Symptoms Seen by Applications Affected by Change

    + +

    + In the previous release, applications which set + "derby.locks.deadlockTrace=true" would get error 40XL2 when a lock timeout + was received. This was confusing as simply setting the system to return + extra diagnostic information would change the SQL state of the error + returned by the system for a lock timeout. +

    + + + -

    Symptoms Seen by Applications Affected by Change

    +

    Incompatibilities with Previous Release

    -In Derby 10.7.1.1, UPDATE triggers which use the REFERENCING clause can be confused about which columns -to pass to their triggered actions. This can silently corrupt data -manipulated by the triggered actions. + Applications which explicitly tested for SQL state error 40XL2 as a lock + timeout will no longer get that error. 40XL1 will now always be returned + for a lock timeout error whether lock diagnostics are enabled or not.

    -

    Incompatibilities with Previous Release

    +

    Rationale for Change

    -Derby 10.7.1.1 is the only release whose triggers corrupt data this -way. Upgrading to a later 10.7 release -or to 10.8 will recompile these triggers correctly. -Applications should check for data corruption if they used 10.7.1.1 to -create UPDATE triggers with the REFERENCING clause. + The previous behavior was not intended. Lock timeout should generate same + SQL state whether diagnostics are enabled or not. Only the text of the error + will change based on the requested diagnostic level.

    -

    Rationale for Change

    +

    Application Changes Required

    -This change was made in order to fix a data corruption problem caused -by UPDATE triggers with REFERENCING clauses. + If the application has been explicitly coded to take action when getting + error 40XL2 and does not do the same action for 40XL1, then the application + should be changed. This action is usually retry logic based on a lock + timeout or deadlock.

    -
    +

    -Note for DERBY-4965

    -
    +Note for DERBY-5489 +
    - - -

    Incompatibilities with Previous Release

    - -

    -In this release, PreparedStatement.setObject() -and PreparedStatement.setBoolean() will convert the boolean -values true and false to the strings "true" and -"false", respectively, if the type of the parameter is one of the -character types. -

    - -

    Rationale for Change

    -The previous behavior caused failures in a JDBC compliance test after -Derby's meta-data started reporting that the BOOLEAN data type was -supported in version 10.7.1.1. +The previous behavior was inconsistent, and caused incorrect data to be +returned to the application in some cases.

    - - - -

    Application Changes Required

    - -

    -If the application expects the parameter to be set to "1" or "0" -instead of "true" or "false", it must be recoded to explicitly set the -parameter to an integer value. -

    - - -

    -For example, if an application uses setBoolean() to set a character -type parameter, it could be changed from -

    - - -
    - -
    -ps.setBoolean(col, b);
    -
    - -
    - - -

    -to -

    - - -
    - -
    -ps.setInt(col, b ? 1 : 0);
    -
    - -
    - - -

    -in order to preserve the old behavior. -

    - - -
    +

    -Note for DERBY-4963

    -
    - - +Note for DERBY-5488 +

    Summary of Change

    -Interrupt resilience may degrade the performance of writes on some platforms. +A typo has been corrected in a column name of the +DatabaseMetaData.getColumns() ResultSet.

    - -

    Symptoms Seen by Applications Affected by Change

    -In Derby 10.8, INSERTs and UPDATEs may run slower on platforms which -do not support write synchronization. Affected platforms include JDK -1.4.0 and JDK 1.4.1 (on all operating systems) and Java 5 (on Mac OSX and -BSD variants). -

    - - - +

    Incompatibilities with Previous Release

    -On some platforms, INSERTs and UPDATEs may run slower than they did in -previous Derby releases. Changes needed for interrupt resilience may cause extra io calls on platforms -which do not support the "rws"/"rwd" modes in the constructor for -RandomAccessFile(File,String) - +Applications will break if they expect SCOPE_CATLOG to be the name of the +19th column of that ResultSet or if they require that the ResultSet +only contain 24 columns. Applications will display different +columns names and longer rows if they pass this metadata on to end users.

    - +

    +Applications will only see these changes if they run against a Derby 10.9 +engine. The version level of the +engine can be retrieved by calling +DatabaseMetaData.getDatabaseMajorVersion() and +DatabaseMetaData.getDatabaseMinorVersion(). +Applications will not see these changes if they run the Derby 10.9 +network client against an older version of the Derby engine. +

    Rationale for Change

    -Derby's log flushing logic was changed to prevent Thread interrupts -from crashing the engine. +JDBC 4.1 has corrected a typo in the javadoc for +DatabaseMetaData.getColumns(). Derby has renamed a column in order to conform to the latest +version of the JDBC spec.

    - +

    +Applications which inspect this metadata by column position should not +be affected: the contents of column 19 have not changed. Applications +which inspect this metadata by column name should also not be +affected. Note that the column contents are +always null because the column only has meaning for databases which +support both catalogs and reference types--Derby supports neither of +these features. +

    -

    Application Changes Required

    -Upgrade the JVM to JDK 6 or higher if your -application suffers slower INSERTs/UPDATEs after upgrading -to Derby 10.8. +Applications will need to be re-coded if they require that column 19 +be named SCOPE_CATLOG or if they require that the ResultSet only +contain 24 columns. Applications may need to be re-coded if they passthrough the metadata to end users.

    -
    +

    -Note for DERBY-4939

    -
    +Note for DERBY-5363 +