Return-Path: Delivered-To: apmail-db-ojb-dev-archive@www.apache.org Received: (qmail 62648 invoked from network); 29 Jul 2004 05:44:10 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur-2.apache.org with SMTP; 29 Jul 2004 05:44:10 -0000 Received: (qmail 88815 invoked by uid 500); 29 Jul 2004 05:44:08 -0000 Delivered-To: apmail-db-ojb-dev-archive@db.apache.org Received: (qmail 88773 invoked by uid 500); 29 Jul 2004 05:44:07 -0000 Mailing-List: contact ojb-dev-help@db.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "OJB Developers List" Reply-To: "OJB Developers List" Delivered-To: mailing list ojb-dev@db.apache.org Received: (qmail 26298 invoked by uid 99); 28 Jul 2004 07:52:32 -0000 X-ASF-Spam-Status: No, hits=0.4 required=10.0 tests=FORGED_RCVD_HELO,LINES_OF_YELLING X-Spam-Check-By: apache.org X-AuthUser: tomahawk@tvc-software.com Message-ID: <41075B36.2080007@TVCS.de> Date: Wed, 28 Jul 2004 09:52:22 +0200 From: Thomas Vogt User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de-AT; rv:1.7) Gecko/20040616 X-Accept-Language: de-de, de-at, de, en-us, en MIME-Version: 1.0 To: OJB Users List Subject: OJB Foreign Key Problem in Persistence Broker (MySQL InnoDB) References: <6FB083FB72EFD21181D30004AC4CA18A0324A9BF@SRV002> <41052831.4020702@atlas.cz> <41052A8E.6010709@first.fhg.de> <4106143D.2010206@atlas.cz> <41061E54.3010802@atlas.cz> <410621C3.8040505@first.fhg.de> <4106330E.3040501@atlas.cz> <41074F0A.70703@first.fhg.de> In-Reply-To: <41074F0A.70703@first.fhg.de> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Spam-DCC: : X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on p15124607.pureserver.info X-Spam-Level: X-Spam-Status: No, hits=-98.6 required=5.0 tests=BAYES_00,RCVD_IN_DYNABLOCK, RCVD_IN_NJABL,RCVD_IN_NJABL_DIALUP,RCVD_IN_SORBS,USER_IN_WHITELIST autolearn=no version=2.63 X-Virus-Scanned: by AMaViS 0.3.12 X-Virus-Checked: Checked X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N Hi I'm using the Persistence Broker to access the data in an MySQL InnoDB Database, when the Primary Key is not in the same order as the foreign ky constraint is, OJB seems to erranously mix it up and tries the wrong way round, this way it won't find a result. OJB only does so in foreign keys, when the object itself is searched directly, it is found without any problem. I tried to solve the problem on my own, but i did not find the problematic part in the source, so could someone with more detail knowledge try to identify and fix the problem ? /I also made an entry in the BugDB Ticket OJB282./ Thanks Thomas DATABASE DEFINITION EXTRACT ..... PRIMARY KEY(Gruppennummer, Projektnummer, Quartal), INDEX Ergebnissdaten_Integer_FKIndex2(Projektnummer, Gruppennummer), FOREIGN KEY(Projektnummer, Gruppennummer) REFERENCES Projektgruppen(Projektnummer, Gruppennummer) ...... CONTENTS EXTRACT Gruppennummer, Projektnummer 1, 1 1, 1 3, 1 2, 2 DEBUG LOG EXTRACT ...... core.PersistenceBrokerImpl - Creating RsIterator for class [org.fhw.cabaweb.ojb.dataobjects.Projektgruppen] accesslayer.JdbcAccessImpl - executeQuery : QueryByCriteria from class org.fhw.cabaweb.ojb.dataobjects.Projektgruppen where *[[gruppennummer = 1, projektnummer = 3]]* sql.SqlGeneratorDefaultImpl - SQL:SELECT A0.Aktiv,A0.Gruppennummer,A0.Gruppenname,A0.Projektnummer FROM Projektgruppen A0 WHERE (A0.Gruppennummer = ?) AND A0.Projektnummer = ? accesslayer.JdbcAccessImpl - executeQuery: com.mysql.jdbc.PreparedStatement@7db937: SELECT A0.Aktiv,A0.Gruppennummer,A0.Gruppenname,A0.Projektnummer FROM Projektgruppen A0 WHERE *(A0.Gruppennummer = 1) AND A0.Projektnummer = 3* accesslayer.RsIterator - RsIterator[org.apache.ojb.broker.accesslayer.RsQueryObject[query: QueryByCriteria from class org.fhw.cabaweb.ojb.dataobjects.Projektgruppen where [[gruppennummer = 1, projektnummer = 3]], class descriptor: org.fhw.cabaweb.ojb.dataobjects.Projektgruppen]] initialized ...... --------------------------------------------------------------------- To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org For additional commands, e-mail: ojb-dev-help@db.apache.org