Return-Path: Delivered-To: apmail-db-jdo-dev-archive@www.apache.org Received: (qmail 96302 invoked from network); 4 Sep 2005 22:05:06 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 4 Sep 2005 22:05:06 -0000 Received: (qmail 78495 invoked by uid 500); 4 Sep 2005 22:05:05 -0000 Mailing-List: contact jdo-dev-help@db.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: jdo-dev@db.apache.org Delivered-To: mailing list jdo-dev@db.apache.org Received: (qmail 78482 invoked by uid 99); 4 Sep 2005 22:05:05 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 04 Sep 2005 15:05:05 -0700 X-ASF-Spam-Status: No, hits=0.2 required=10.0 tests=HTML_MESSAGE,UPPERCASE_25_50 X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: local policy) Received: from [192.18.98.34] (HELO brmea-mail-3.sun.com) (192.18.98.34) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 04 Sep 2005 15:05:18 -0700 Received: from fe2.sun.com ([192.18.108.79]) by brmea-mail-3.sun.com (8.12.10/8.12.9) with ESMTP id j84M53DB027335 for ; Sun, 4 Sep 2005 16:05:03 -0600 (MDT) Received: from conversion-daemon.fe2.sun.com by fe2.sun.com (Sun Java System Messaging Server 6.1 HotFix 0.02 (built Aug 25 2004)) id <0IMB00E01BH4F200@fe2.sun.com> (original mail from Craig.Russell@Sun.COM) for jdo-dev@db.apache.org; Sun, 04 Sep 2005 16:05:03 -0600 (MDT) Received: from [192.168.0.10] ([24.6.172.77]) by fe2.sun.com (Sun Java System Messaging Server 6.1 HotFix 0.02 (built Aug 25 2004)) with ESMTPSA id <0IMB00EHHC0EHOO1@fe2.sun.com> for jdo-dev@db.apache.org; Sun, 04 Sep 2005 16:05:03 -0600 (MDT) Date: Sun, 04 Sep 2005 15:05:00 -0700 From: Craig Russell Subject: Re: TCK Schema : M-N relations In-reply-to: <431B6D51.5080508@spree.de> To: jdo-dev@db.apache.org Message-id: MIME-version: 1.0 X-Mailer: Apple Mail (2.734) Content-type: multipart/signed; protocol="application/pkcs7-signature"; boundary=Apple-Mail-17--612070424; micalg=sha1 References: <200509032032.46354.andy@jpox.org> <065F314D-2F12-4D02-9BDB-746D98DD5225@Sun.COM> <200509040836.13401.andy@jpox.org> <431B6D51.5080508@spree.de> X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N --Apple-Mail-17--612070424 Content-Type: multipart/alternative; boundary=Apple-Mail-16--612070907 --Apple-Mail-16--612070907 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Hi Michael, I believe that the patch applies to the other datastoreidentityschemafiles as well. Any idea why one join table uses this pattern: CREATE TABLE project_member ( PROJID INTEGER REFERENCES projects NOT NULL, MEMBER INTEGER REFERENCES persons NOT NULL); and others use this pattern? CREATE TABLE project_reviewer ( PROJID INTEGER NOT NULL, REVIEWER INTEGER NOT NULL ); ALTER TABLE project_reviewer ADD CONSTRAINT PR_PROJ_FK FOREIGN KEY (PROJID) REFERENCES projects(PROJID); ALTER TABLE project_reviewer ADD CONSTRAINT PR_REV_FK FOREIGN KEY (REVIEWER) REFERENCES persons(PERSONID); I guess the latter allows us to name the foreign key so it's easier to delete them by name. Craig On Sep 4, 2005, at 2:55 PM, Michael Bouschen wrote: > Hi Andy, > > thanks for the patch! > > I think the changes also apply to the other datastoreidentity > schema files: schema[1-4].sql, since they have exactly the same > problem. Am I right? I have patched all 5 schema files in my > workspace. I just want to double check before I check in the changes. > > Regards Michael > > >> Hi Craig, >> >> >> >>> I'd be happy if you could propose a patch fixing the FK's. >>> >>> >> >> patch is attached. Not raised a JIRA because in the time taken to >> raise the JIRA somebody could just have applied the patch >> >> >> >> --------------------------------------------------------------------- >> --- >> >> Index: test/sql/derby/datastoreidentity/schema.sql >> =================================================================== >> --- test/sql/derby/datastoreidentity/schema.sql (revision 267234) >> +++ test/sql/derby/datastoreidentity/schema.sql (working copy) >> @@ -167,12 +167,20 @@ >> ALTER TABLE project_reviewer ADD CONSTRAINT PR_PROJ_FK FOREIGN >> KEY >> - (PROJID) REFERENCES projects(PROJID); >> + (PROJID) REFERENCES projects(DATASTORE_IDENTITY); >> ALTER TABLE project_reviewer ADD CONSTRAINT PR_REV_FK FOREIGN KEY >> - (REVIEWER) REFERENCES persons(PERSONID); >> + (REVIEWER) REFERENCES persons(DATASTORE_IDENTITY); >> +ALTER TABLE project_member + ADD CONSTRAINT PM_PROJ_FK FOREIGN >> KEY >> + (PROJID) REFERENCES projects(DATASTORE_IDENTITY); >> + >> +ALTER TABLE project_member + ADD CONSTRAINT PM_MEMB_FK FOREIGN >> KEY >> + (MEMBER) REFERENCES persons(DATASTORE_IDENTITY); >> + >> ALTER TABLE departments ADD CONSTRAINT EMP_MO_FK FOREIGN KEY >> (EMP_OF_THE_MONTH) REFERENCES persons(DATASTORE_IDENTITY); >> >> > > > -- > Michael Bouschen Tech@Spree Engineering GmbH > mailto:mbo.tech@spree.de http://www.tech.spree.de/ > Tel.:++49/30/235 520-33 Buelowstr. 66 > Fax.:++49/30/2175 2012 D-10783 Berlin > > Craig Russell Architect, Sun Java Enterprise System http://java.sun.com/products/jdo 408 276-5638 mailto:Craig.Russell@sun.com P.S. A good JDO? O, Gasp! --Apple-Mail-16--612070907 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=ISO-8859-1 Hi Michael,

I believe that the patch = applies to the other datastoreidentityschemafiles as well.

Any idea why one join table = uses this pattern:

CREATE TABLE project_member = (
=A0 =A0 PROJID INTEGER REFERENCES projects NOT = NULL,
=A0 =A0 MEMBER INTEGER REFERENCES persons NOT = NULL);

and = others use this pattern?

CREATE TABLE = project_reviewer (
=A0 =A0 PROJID INTEGER NOT = NULL,
=A0 =A0 REVIEWER INTEGER NOT = NULL
);
ALTER TABLE project_reviewer
=A0 = =A0 ADD CONSTRAINT PR_PROJ_FK FOREIGN KEY
=A0 =A0 =A0 =A0 = (PROJID) REFERENCES projects(PROJID);

ALTER TABLE = project_reviewer
=A0 =A0 ADD CONSTRAINT PR_REV_FK FOREIGN = KEY
=A0 =A0 =A0 =A0 (REVIEWER) REFERENCES = persons(PERSONID);

I guess the latter allows = us to name the foreign key so it's easier to delete them by = name.

Craig

On Sep 4, 2005, at 2:55 PM, Michael Bouschen wrote:

Hi Andy,

thanks for the patch!

I think = the changes also apply to the other datastoreidentity schema files: = schema[1-4].sql, since they have exactly the same problem. Am I right? I = have patched all 5 schema files in my workspace. I just want to double = check before I check in the changes.

Regards Michael


Hi Craig,

=A0


I'd be happy if you could propose a patch fixing the = FK's.

=A0 =A0



patch is = attached. Not raised a JIRA because in the time taken to raise the JIRA = somebody could just have applied the patch


=A0


Index: = test/sql/derby/datastoreidentity/schema.sql
--- test/sql/derby/datastoreidentity/schema.sql=A0 = =A0 (revision 267234)
+++ = test/sql/derby/datastoreidentity/schema.sql=A0 = =A0 (working copy)
@@ -167,12 = +167,20 @@
ALTER TABLE project_reviewer = =A0 =A0 ADD CONSTRAINT = PR_PROJ_FK FOREIGN KEY
-=A0 =A0 =A0 =A0 (PROJID) = REFERENCES projects(PROJID);
+=A0 =A0 =A0 =A0 (PROJID) = REFERENCES projects(DATASTORE_IDENTITY);
ALTER = TABLE project_reviewer =A0 =A0 = ADD CONSTRAINT PR_REV_FK FOREIGN KEY
-=A0 =A0 =A0 =A0 (REVIEWER) = REFERENCES persons(PERSONID);
+=A0 =A0 =A0 =A0 (REVIEWER) = REFERENCES persons(DATASTORE_IDENTITY);
+ALTER = TABLE project_member +=A0 =A0 = ADD CONSTRAINT PM_PROJ_FK FOREIGN KEY
+=A0 =A0 =A0 =A0= (PROJID) REFERENCES projects(DATASTORE_IDENTITY);
+
+ALTER TABLE project_member = +=A0 =A0 ADD CONSTRAINT = PM_MEMB_FK FOREIGN KEY
+=A0 =A0 =A0 =A0 (MEMBER) = REFERENCES persons(DATASTORE_IDENTITY);
ALTER TABLE departments =A0 =A0 ADD CONSTRAINT EMP_MO_FK = FOREIGN KEY
=A0 =A0 =A0 =A0 = (EMP_OF_THE_MONTH) REFERENCES = persons(DATASTORE_IDENTITY);

=A0




--=A0
Michael = Bouschen=A0 =A0 =A0 =A0 Tech@Spree = Engineering GmbH
mailto:mbo.tech@spree.de=A0 = =A0 http://www.tech.spree.de/
=A0 =A0 =A0 =A0 Buelowstr. = 66 =A0 =A0 =A0 =A0 =A0 = =A0
Fax.:++49/30/2175 2012=A0 = =A0 =A0 =A0 D-10783 Berlin =A0 = =A0 =A0 =A0 =A0 =A0



Craig Russell

Architect, Sun Java = Enterprise System http://java.sun.com/products/jdo=

408 = 276-5638 mailto:Craig.Russell@sun.com

P.S. A = good JDO? O, Gasp!


= --Apple-Mail-16--612070907-- --Apple-Mail-17--612070424 Content-Transfer-Encoding: base64 Content-Type: application/pkcs7-signature; name=smime.p7s Content-Disposition: attachment; filename=smime.p7s MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIGHjCCAtcw ggJAoAMCAQICAw3FWTANBgkqhkiG9w0BAQQFADBiMQswCQYDVQQGEwJaQTElMCMGA1UEChMcVGhh d3RlIENvbnN1bHRpbmcgKFB0eSkgTHRkLjEsMCoGA1UEAxMjVGhhd3RlIFBlcnNvbmFsIEZyZWVt YWlsIElzc3VpbmcgQ0EwHhcNMDUwMTEwMDA0MTA5WhcNMDYwMTEwMDA0MTA5WjBHMR8wHQYDVQQD ExZUaGF3dGUgRnJlZW1haWwgTWVtYmVyMSQwIgYJKoZIhvcNAQkBFhVDcmFpZy5SdXNzZWxsQFN1 bi5DT00wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDti7ZE4rO6oXKbLM02AG9WY55t udmBVL53fb3V3X5S1kvcJOk1NEMIYT/T7Ww+/hE955zvHT29+mIoNe8AW/yj1WUH8uGG2HxhwCHI UQTHmN/ioVJgjwUaYbtNMKbL/NRpnL0QWewdMJS+6IFzFyX7ADFW5cJ+UWNLvNeWAQtN0mtLildn vdOgh50i8YPvACNkCHoomGjXx0azcXbe1X3c5AgRI6e2CZe5k2lRFQFUMqkjdoMtQPoNqJ1BxH9l i4cnabl8mcTwHHl44hrvb8ThqwRf2pfJh2vVuwmgK6z4IWjOk4RQM+0ODsRdq67mBdimJYmPMK1p RMBHzrUsfKxNAgMBAAGjMjAwMCAGA1UdEQQZMBeBFUNyYWlnLlJ1c3NlbGxAU3VuLkNPTTAMBgNV HRMBAf8EAjAAMA0GCSqGSIb3DQEBBAUAA4GBAIj86LzxCHedStDLMEeqHLy+UFG7zIRHfChSIV42 +MvXicydXEBh8v0Ry1V2d/lY4jS78G5yW5R9fKt1U5nlRBCOVzdhomvSolnNRIT71wPVVDrAIVlA YpXKxSmVBq7+4hV+3ZLHDeq3qZnNmiJR0sTEUD16xZX1RJs9dRYPCHoRMIIDPzCCAqigAwIBAgIB DTANBgkqhkiG9w0BAQUFADCB0TELMAkGA1UEBhMCWkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTES MBAGA1UEBxMJQ2FwZSBUb3duMRowGAYDVQQKExFUaGF3dGUgQ29uc3VsdGluZzEoMCYGA1UECxMf Q2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEkMCIGA1UEAxMbVGhhd3RlIFBlcnNvbmFs IEZyZWVtYWlsIENBMSswKQYJKoZIhvcNAQkBFhxwZXJzb25hbC1mcmVlbWFpbEB0aGF3dGUuY29t MB4XDTAzMDcxNzAwMDAwMFoXDTEzMDcxNjIzNTk1OVowYjELMAkGA1UEBhMCWkExJTAjBgNVBAoT HFRoYXd0ZSBDb25zdWx0aW5nIChQdHkpIEx0ZC4xLDAqBgNVBAMTI1RoYXd0ZSBQZXJzb25hbCBG cmVlbWFpbCBJc3N1aW5nIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDEpjxVc1X7TrnK mVoeaMB1BHCd3+n/ox7svc31W/Iadr1/DDph8r9RzgHU5VAKMNcCY1osiRVwjt3J8CuFWqo/cVbL rzwLB+fxH5E2JCoTzyvV84J3PQO+K/67GD4Hv0CAAmTXp6a7n2XRxSpUhQ9IBH+nttE8YQRAHmQZ cmC3+wIDAQABo4GUMIGRMBIGA1UdEwEB/wQIMAYBAf8CAQAwQwYDVR0fBDwwOjA4oDagNIYyaHR0 cDovL2NybC50aGF3dGUuY29tL1RoYXd0ZVBlcnNvbmFsRnJlZW1haWxDQS5jcmwwCwYDVR0PBAQD AgEGMCkGA1UdEQQiMCCkHjAcMRowGAYDVQQDExFQcml2YXRlTGFiZWwyLTEzODANBgkqhkiG9w0B AQUFAAOBgQBIjNFQg+oLLswNo2asZw9/r6y+whehQ5aUnX9MIbj4Nh+qLZ82L8D0HFAgk3A8/a3h YWLD2ToZfoSxmRsAxRoLgnSeJVCUYsfbJ3FXJY3dqZw5jowgT2Vfldr394fWxghOrvbqNOUQGls1 TXfjViF4gtwhGTXeJLHTHUb/XV9lTzGCAucwggLjAgEBMGkwYjELMAkGA1UEBhMCWkExJTAjBgNV BAoTHFRoYXd0ZSBDb25zdWx0aW5nIChQdHkpIEx0ZC4xLDAqBgNVBAMTI1RoYXd0ZSBQZXJzb25h bCBGcmVlbWFpbCBJc3N1aW5nIENBAgMNxVkwCQYFKw4DAhoFAKCCAVMwGAYJKoZIhvcNAQkDMQsG CSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMDUwOTA0MjIwNTAxWjAjBgkqhkiG9w0BCQQxFgQU yuX0AwwzXDAKOlSyy7nyrOV4w3EweAYJKwYBBAGCNxAEMWswaTBiMQswCQYDVQQGEwJaQTElMCMG A1UEChMcVGhhd3RlIENvbnN1bHRpbmcgKFB0eSkgTHRkLjEsMCoGA1UEAxMjVGhhd3RlIFBlcnNv bmFsIEZyZWVtYWlsIElzc3VpbmcgQ0ECAw3FWTB6BgsqhkiG9w0BCRACCzFroGkwYjELMAkGA1UE BhMCWkExJTAjBgNVBAoTHFRoYXd0ZSBDb25zdWx0aW5nIChQdHkpIEx0ZC4xLDAqBgNVBAMTI1Ro YXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBJc3N1aW5nIENBAgMNxVkwDQYJKoZIhvcNAQEBBQAEggEA OHQ/QWP/WVKoFIa6vqtygL6C5pjkis7fjaryPecudhjQpbJFOw4PV1aJBGp+3YvUE9L9oeRPBkFy wwSiqj3Zp0L6gkJdRiCaU1DTla+lqQSgOAmX/qKqUYVdKk2cZ3WOBb+om0uLqLN9NH8YKI13cSDg ErbQ2dGtFYz3VGo1sDn3Go6zpfAJNLvRt4OMwQPJXrGEggbkbo4khflq6lFuxTPTfYXhGn1ksa2z akeBxFYvOAo05524rHtWROmQKxqPjNKrYXT2oO6/oxub9fsjwaQPxPcXymM6jGlw1V+9JMFt8EAb MUGiiEAajzyN2HuGp2L7J3BlImMM3loQTrHXWAAAAAAAAA== --Apple-Mail-17--612070424--