Return-Path: Delivered-To: apmail-db-derby-commits-archive@www.apache.org Received: (qmail 89628 invoked from network); 3 Jun 2006 07:20:46 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 3 Jun 2006 07:20:46 -0000 Received: (qmail 64379 invoked by uid 500); 3 Jun 2006 07:20:46 -0000 Delivered-To: apmail-db-derby-commits-archive@db.apache.org Received: (qmail 64347 invoked by uid 500); 3 Jun 2006 07:20:46 -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 64334 invoked by uid 99); 3 Jun 2006 07:20:45 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 03 Jun 2006 00:20:45 -0700 X-ASF-Spam-Status: No, hits=-9.4 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME,UPPERCASE_25_50 X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: local policy) Received: from [140.211.166.113] (HELO eris.apache.org) (140.211.166.113) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 03 Jun 2006 00:20:44 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id A35121A983A; Sat, 3 Jun 2006 00:20:24 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r411398 - in /db/derby/code/branches/10.1/java: engine/org/apache/derby/impl/sql/execute/ testing/org/apache/derbyTesting/functionTests/master/ testing/org/apache/derbyTesting/functionTests/master/DerbyNet/ testing/org/apache/derbyTesting/f... Date: Sat, 03 Jun 2006 07:20:23 -0000 To: derby-commits@db.apache.org From: bandaram@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20060603072024.A35121A983A@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Author: bandaram Date: Sat Jun 3 00:20:22 2006 New Revision: 411398 URL: http://svn.apache.org/viewvc?rev=411398&view=rev Log: DERBY-655: Generate unique logical conglomerateId for duplicate indexes, instead of just reusing existing conglomerateId. Submitted by Mamta A. Satoor(msatoor@gmail.com) Modified: db/derby/code/branches/10.1/java/engine/org/apache/derby/impl/sql/execute/CreateIndexConstantAction.java db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/metadata.out db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/odbc_metadata.out db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/metadata.out db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/odbc_metadata.out db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/metadata.out db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/odbc_metadata.out db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/tests/jdbcapi/metadata_test.java Modified: db/derby/code/branches/10.1/java/engine/org/apache/derby/impl/sql/execute/CreateIndexConstantAction.java URL: http://svn.apache.org/viewvc/db/derby/code/branches/10.1/java/engine/org/apache/derby/impl/sql/execute/CreateIndexConstantAction.java?rev=411398&r1=411397&r2=411398&view=diff ============================================================================== --- db/derby/code/branches/10.1/java/engine/org/apache/derby/impl/sql/execute/CreateIndexConstantAction.java (original) +++ db/derby/code/branches/10.1/java/engine/org/apache/derby/impl/sql/execute/CreateIndexConstantAction.java Sat Jun 3 00:20:22 2006 @@ -353,9 +353,12 @@ return; } + //Duplicate indexes share the physical conglomerate underneath conglomId = cd.getConglomerateNumber(); indexRowGenerator = cd.getIndexDescriptor(); - conglomerateUUID = cd.getUUID(); + //DERBY-655 and DERBY-1343 + //Duplicate indexes will have unqiue logical conglomerate UUIDs. + conglomerateUUID = dd.getUUIDFactory().createUUID(); duplicate = true; break; } Modified: db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/metadata.out URL: http://svn.apache.org/viewvc/db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/metadata.out?rev=411398&r1=411397&r2=411398&view=diff ============================================================================== --- db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/metadata.out (original) +++ db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/metadata.out Sat Jun 3 00:20:22 2006 @@ -476,4 +476,7 @@ defval for col C5 type CHAR DEFAULT 'NULL' wasnull false defval for col C6 type CHAR DEFAULT ''NULL'' wasnull false defval for col C7 type INTEGER DEFAULT '88' wasnull false +getImportedKeys('',null,null,'','APP','Derby655t1' ): +PKTABLE_CAT[VARCHAR],PKTABLE_SCHEM[VARCHAR],PKTABLE_NAME[VARCHAR],PKCOLUMN_NAME[VARCHAR],FKTABLE_CAT[VARCHAR],FKTABLE_SCHEM[VARCHAR],FKTABLE_NAME[VARCHAR],FKCOLUMN_NAME[VARCHAR],KEY_SEQ[SMALLINT],UPDATE_RULE[SMALLINT],DELETE_RULE[SMALLINT],FK_NAME[VARCHAR],PK_NAME[VARCHAR],DEFERRABILITY[SMALLINT] +,APP,DERBY655T2,C21_ID,,APP,DERBY655T1,C11_ID,1,3,0,F_12,xxxxGENERATED-IDxxxx,7 Test metadata finished Modified: db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/odbc_metadata.out URL: http://svn.apache.org/viewvc/db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/odbc_metadata.out?rev=411398&r1=411397&r2=411398&view=diff ============================================================================== --- db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/odbc_metadata.out (original) +++ db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/odbc_metadata.out Sat Jun 3 00:20:22 2006 @@ -507,4 +507,7 @@ defval for col C5 type CHAR DEFAULT 'NULL' wasnull false defval for col C6 type CHAR DEFAULT ''NULL'' wasnull false defval for col C7 type INTEGER DEFAULT '88' wasnull false +getImportedKeys('',null,null,'','APP','Derby655t1' ): +PKTABLE_CAT[VARCHAR],PKTABLE_SCHEM[VARCHAR],PKTABLE_NAME[VARCHAR],PKCOLUMN_NAME[VARCHAR],FKTABLE_CAT[VARCHAR],FKTABLE_SCHEM[VARCHAR],FKTABLE_NAME[VARCHAR],FKCOLUMN_NAME[VARCHAR],KEY_SEQ[SMALLINT],UPDATE_RULE[SMALLINT],DELETE_RULE[SMALLINT],FK_NAME[VARCHAR],PK_NAME[VARCHAR],DEFERRABILITY[SMALLINT] +,APP,DERBY655T2,C21_ID,,APP,DERBY655T1,C11_ID,1,3,0,F_12,xxxxGENERATED-IDxxxx,7 Test metadata finished Modified: db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/metadata.out URL: http://svn.apache.org/viewvc/db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/metadata.out?rev=411398&r1=411397&r2=411398&view=diff ============================================================================== --- db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/metadata.out (original) +++ db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/metadata.out Sat Jun 3 00:20:22 2006 @@ -476,4 +476,7 @@ defval for col C5 type CHAR DEFAULT 'NULL' wasnull false defval for col C6 type CHAR DEFAULT ''NULL'' wasnull false defval for col C7 type INTEGER DEFAULT '88' wasnull false +getImportedKeys('',null,null,'','APP','Derby655t1' ): +PKTABLE_CAT[VARCHAR],PKTABLE_SCHEM[VARCHAR],PKTABLE_NAME[VARCHAR],PKCOLUMN_NAME[VARCHAR],FKTABLE_CAT[VARCHAR],FKTABLE_SCHEM[VARCHAR],FKTABLE_NAME[VARCHAR],FKCOLUMN_NAME[VARCHAR],KEY_SEQ[SMALLINT],UPDATE_RULE[SMALLINT],DELETE_RULE[SMALLINT],FK_NAME[VARCHAR],PK_NAME[VARCHAR],DEFERRABILITY[SMALLINT] +,APP,DERBY655T2,C21_ID,,APP,DERBY655T1,C11_ID,1,3,0,F_12,xxxxGENERATED-IDxxxx,7 Test metadata finished Modified: db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/odbc_metadata.out URL: http://svn.apache.org/viewvc/db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/odbc_metadata.out?rev=411398&r1=411397&r2=411398&view=diff ============================================================================== --- db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/odbc_metadata.out (original) +++ db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNetClient/odbc_metadata.out Sat Jun 3 00:20:22 2006 @@ -507,4 +507,7 @@ defval for col C5 type CHAR DEFAULT 'NULL' wasnull false defval for col C6 type CHAR DEFAULT ''NULL'' wasnull false defval for col C7 type INTEGER DEFAULT '88' wasnull false +getImportedKeys('',null,null,'','APP','Derby655t1' ): +PKTABLE_CAT[VARCHAR],PKTABLE_SCHEM[VARCHAR],PKTABLE_NAME[VARCHAR],PKCOLUMN_NAME[VARCHAR],FKTABLE_CAT[VARCHAR],FKTABLE_SCHEM[VARCHAR],FKTABLE_NAME[VARCHAR],FKCOLUMN_NAME[VARCHAR],KEY_SEQ[SMALLINT],UPDATE_RULE[SMALLINT],DELETE_RULE[SMALLINT],FK_NAME[VARCHAR],PK_NAME[VARCHAR],DEFERRABILITY[SMALLINT] +,APP,DERBY655T2,C21_ID,,APP,DERBY655T1,C11_ID,1,3,0,F_12,xxxxGENERATED-IDxxxx,7 Test metadata finished Modified: db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/metadata.out URL: http://svn.apache.org/viewvc/db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/metadata.out?rev=411398&r1=411397&r2=411398&view=diff ============================================================================== --- db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/metadata.out (original) +++ db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/metadata.out Sat Jun 3 00:20:22 2006 @@ -476,4 +476,7 @@ defval for col C5 type CHAR DEFAULT 'NULL' wasnull false defval for col C6 type CHAR DEFAULT ''NULL'' wasnull false defval for col C7 type INTEGER DEFAULT '88' wasnull false +getImportedKeys('',null,null,'','APP','Derby655t1' ): +PKTABLE_CAT[VARCHAR],PKTABLE_SCHEM[VARCHAR],PKTABLE_NAME[VARCHAR],PKCOLUMN_NAME[VARCHAR],FKTABLE_CAT[VARCHAR],FKTABLE_SCHEM[VARCHAR],FKTABLE_NAME[VARCHAR],FKCOLUMN_NAME[VARCHAR],KEY_SEQ[SMALLINT],UPDATE_RULE[SMALLINT],DELETE_RULE[SMALLINT],FK_NAME[VARCHAR],PK_NAME[VARCHAR],DEFERRABILITY[SMALLINT] +,APP,DERBY655T2,C21_ID,,APP,DERBY655T1,C11_ID,1,3,0,F_12,xxxxGENERATED-IDxxxx,7 Test metadata finished Modified: db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/odbc_metadata.out URL: http://svn.apache.org/viewvc/db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/odbc_metadata.out?rev=411398&r1=411397&r2=411398&view=diff ============================================================================== --- db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/odbc_metadata.out (original) +++ db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/master/odbc_metadata.out Sat Jun 3 00:20:22 2006 @@ -507,4 +507,7 @@ defval for col C5 type CHAR DEFAULT 'NULL' wasnull false defval for col C6 type CHAR DEFAULT ''NULL'' wasnull false defval for col C7 type INTEGER DEFAULT '88' wasnull false +getImportedKeys('',null,null,'','APP','Derby655t1' ): +PKTABLE_CAT[VARCHAR],PKTABLE_SCHEM[VARCHAR],PKTABLE_NAME[VARCHAR],PKCOLUMN_NAME[VARCHAR],FKTABLE_CAT[VARCHAR],FKTABLE_SCHEM[VARCHAR],FKTABLE_NAME[VARCHAR],FKCOLUMN_NAME[VARCHAR],KEY_SEQ[SMALLINT],UPDATE_RULE[SMALLINT],DELETE_RULE[SMALLINT],FK_NAME[VARCHAR],PK_NAME[VARCHAR],DEFERRABILITY[SMALLINT] +,APP,DERBY655T2,C21_ID,,APP,DERBY655T1,C11_ID,1,3,0,F_12,xxxxGENERATED-IDxxxx,7 Test metadata finished Modified: db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/tests/jdbcapi/metadata_test.java URL: http://svn.apache.org/viewvc/db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/tests/jdbcapi/metadata_test.java?rev=411398&r1=411397&r2=411398&view=diff ============================================================================== --- db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/tests/jdbcapi/metadata_test.java (original) +++ db/derby/code/branches/10.1/java/testing/org/apache/derbyTesting/functionTests/tests/jdbcapi/metadata_test.java Sat Jun 3 00:20:22 2006 @@ -900,6 +900,24 @@ } s.execute("drop table t1"); + // test DERBY-655, DERBY-1343 + // If a table has duplicate backing index, then it will share the + // physical conglomerate with the existing index, but the duplicate + // indexes should have their own unique logical congomerates + // associated with them. That way, it will be possible to + // distinguish the 2 indexes in SYSCONGLOMERATES from each other. + s.execute("CREATE TABLE Derby655t1(c11_ID BIGINT NOT NULL)"); + s.execute("CREATE TABLE Derby655t2 (c21_ID BIGINT NOT NULL primary key)"); + s.execute("ALTER TABLE Derby655t1 ADD CONSTRAINT F_12 Foreign Key (c11_ID) REFERENCES Derby655t2 (c21_ID) ON DELETE CASCADE ON UPDATE NO ACTION"); + s.execute("CREATE TABLE Derby655t3(c31_ID BIGINT NOT NULL primary key)"); + s.execute("ALTER TABLE Derby655t2 ADD CONSTRAINT F_443 Foreign Key (c21_ID) REFERENCES Derby655t3(c31_ID) ON DELETE CASCADE ON UPDATE NO ACTION"); + dmd = con.getMetaData(); + System.out.println("\ngetImportedKeys('',null,null,'','APP','Derby655t1' ):"); + dumpRS(met.getImportedKeys("", "APP", "DERBY655T1")); + s.execute("drop table Derby655t1"); + s.execute("drop table Derby655t2"); + s.execute("drop table Derby655t3"); + // tiny test moved over from no longer used metadata2.sql // This checks for a bug where you get incorrect behavior on a nested connection. // if you do not get an error, the bug does not occur.