Return-Path: Delivered-To: apmail-db-derby-commits-archive@www.apache.org Received: (qmail 46998 invoked from network); 25 Aug 2008 15:10:46 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 25 Aug 2008 15:10:46 -0000 Received: (qmail 82185 invoked by uid 500); 25 Aug 2008 15:10:44 -0000 Delivered-To: apmail-db-derby-commits-archive@db.apache.org Received: (qmail 82157 invoked by uid 500); 25 Aug 2008 15:10:44 -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 82148 invoked by uid 99); 25 Aug 2008 15:10:44 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 25 Aug 2008 08:10:44 -0700 X-ASF-Spam-Status: No, hits=-2000.0 required=10.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; Mon, 25 Aug 2008 15:09:55 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 65A18238899C; Mon, 25 Aug 2008 08:09:55 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r688749 - /db/derby/code/branches/10.4/RELEASE-NOTES.html Date: Mon, 25 Aug 2008 15:09:55 -0000 To: derby-commits@db.apache.org From: rhillegas@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20080825150955.65A18238899C@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: rhillegas Date: Mon Aug 25 08:09:54 2008 New Revision: 688749 URL: http://svn.apache.org/viewvc?rev=688749&view=rev Log: DERBY-3820: Attach new version of the 10.4.2 release notes, this one including the release note for DERBY-48. Modified: db/derby/code/branches/10.4/RELEASE-NOTES.html Modified: db/derby/code/branches/10.4/RELEASE-NOTES.html URL: http://svn.apache.org/viewvc/db/derby/code/branches/10.4/RELEASE-NOTES.html?rev=688749&r1=688748&r2=688749&view=diff ============================================================================== --- db/derby/code/branches/10.4/RELEASE-NOTES.html (original) +++ db/derby/code/branches/10.4/RELEASE-NOTES.html Mon Aug 25 08:09:54 2008 @@ -91,6 +91,9 @@ DERBY-3791Excessive memory usage when fetching small Clobs +DERBY-3786Assert failure in CacheEntry.unkeepForRemove when running stress.multi + + DERBY-3783LOBStreamControl shouldn't throw SQLException @@ -267,6 +270,9 @@ DERBY-1848jdbcapi/SetQueryTimeoutTest.java fails on IBM wctme 5.7 + +DERBY-48 A connection request that has a default schema that is being created by another transaction will fail to connect +

@@ -283,6 +289,16 @@

+
  • + +

    Note for DERBY-48: +In Derby, a user's initial default schema is named the same as +the user name, or APP if a user is not provided at connect time. This +schema is implicitly auto-created the first time a schema object is +created in that schema. +

    +
    +

  • @@ -384,6 +400,141 @@ +
    +

    +Note for DERBY-48

    +
    + + + + +

    Summary of Change

    + +

    +In Derby, a user's initial default schema is named the same as +the user name, or APP if a user is not provided at connect time. This +schema is implicitly auto-created the first time a schema object is +created in that schema. +

    + +

    +Previously, this auto-creation would be performed as part of the user +transaction. This would sometimes lead to locking issues as described +in this issue. With this change, the auto-creation is now performed +and committed immediately in a separate sub-transaction. +

    + + + + + +

    Symptoms Seen by Applications Affected by Change

    + +

    +The initial default schema will be present in cases where it +previously would not yet have been created: If the user transaction +that creates a schema object leading to auto-creation of the initial +default schema rolls back for some reason after having created the +schema, up till now the auto-creation of the initial default schema +would be rolled back as well. Since it is now created and committed in +a sub-transaction, the schema creation will not be rolled back: the +default schema will persist. +

    + + + + + +

    Incompatibilities with Previous Release

    + +

    +Most applications should not be impacted by this change, but there are +some corner cases as described below: +

    + +

    +If the application tests for the existence of the initial default +schema by querying Derby system tables, the results could now be +different than in earlier releases, if the test is made after a +rollback as described in the previous section. +

    + +

    +Since the initial default schema will now potentially exist in cases +where it would previously not exist, schema operations may be +impacted, e.g. where before a DROP SCHEMA <default schema name> +RESTRICT would fail due to it not yet existing, it could now work (if +empty), depending on when the drop attempt is made. +

    + + + + +

    Rationale for Change

    + +

    +Implicit schema creation is now performed in its own transaction to +avoid deadlocks with other connections accessing the same schema. +

    + +

    +Doing this is a separate transaction avoids holding dictionary locks +longer than necessary, +cf. DERBY-48 +and thus reduces the chance for deadlocks. +

    + + + + + +

    Application Changes Required

    + +

    +Verify that the application code does not rely on the initial default schema +being absent after a rollback. +

    + + + +

    Build Environment