Return-Path: Delivered-To: apmail-db-derby-dev-archive@www.apache.org Received: (qmail 32313 invoked from network); 28 Jul 2006 01:08:40 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 28 Jul 2006 01:08:40 -0000 Received: (qmail 69694 invoked by uid 500); 28 Jul 2006 01:08:39 -0000 Delivered-To: apmail-db-derby-dev-archive@db.apache.org Received: (qmail 69478 invoked by uid 500); 28 Jul 2006 01:08:39 -0000 Mailing-List: contact derby-dev-help@db.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: Delivered-To: mailing list derby-dev@db.apache.org Received: (qmail 69469 invoked by uid 99); 28 Jul 2006 01:08:39 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 27 Jul 2006 18:08:39 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received: from [209.237.227.198] (HELO brutus.apache.org) (209.237.227.198) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 27 Jul 2006 18:08:38 -0700 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 54BB8410009 for ; Fri, 28 Jul 2006 01:06:14 +0000 (GMT) Message-ID: <1977201.1154048774302.JavaMail.jira@brutus> Date: Thu, 27 Jul 2006 18:06:14 -0700 (PDT) From: "Rajesh Kartha (JIRA)" To: derby-dev@db.apache.org Subject: [jira] Commented: (DERBY-1603) ERROR 54038: "Maximum depth of nested triggers was exceeded" occurs when trigger fires after upating 10.1.2.5 jars to 10.1.3.1 In-Reply-To: <14684468.1154044213887.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N [ http://issues.apache.org/jira/browse/DERBY-1603?page=comments#action_12423970 ] Rajesh Kartha commented on DERBY-1603: -------------------------------------- I tried the scenario on a 10.2.0.4 alpha - (418118) database with 10.2.0.5 alpha - (424456) jars and the issue exists. > ERROR 54038: "Maximum depth of nested triggers was exceeded" occurs when trigger fires after upating 10.1.2.5 jars to 10.1.3.1 > ------------------------------------------------------------------------------------------------------------------------------ > > Key: DERBY-1603 > URL: http://issues.apache.org/jira/browse/DERBY-1603 > Project: Derby > Issue Type: Bug > Components: SQL > Affects Versions: 10.1.3.1, 10.1.3.0, 10.1.2.1, 10.1.1.0, 10.0.2.1, 10.0.2.0 > Reporter: Kathey Marsden > Fix For: 10.2.0.0 > > Attachments: derby.log > > > trigger fails after upgrading Cloudscape version 10.1.3.1 > 10.1 repro with the embedded driver. > Execute the following in ij with version 10.1.2.5 - (409283) > CREATE TABLE "TEST" ( > > "TESTID" INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY (START > WITH 1, > INCREMENT BY 1), > > "INFO" INTEGER NOT NULL, > > "TIMESTAMP" TIMESTAMP NOT NULL DEFAULT > '1980-01-01-00.00.00.000000' > ); > > CREATE TRIGGER UPDATE_TEST > AFTER UPDATE ON TEST > REFERENCING OLD AS OLD > FOR EACH ROW MODE DB2SQL > UPDATE TEST SET TIMESTAMP = CURRENT_TIMESTAMP WHERE > TESTID = OLD.TESTID; > INSERT INTO TEST (INFO) VALUES > (1), > (2), > (3); > Exit ij > Replace derby jars with version 10.1.3.2.424154 > Execute the following in ij: > UPDATE TEST SET INFO = 1 WHERE TESTID = 2; > ERROR 54038: Maximum depth of nested triggers was exceeded. > Rajesh confirmed. > I tried different combinations and found that the issue exists between versions and is present in older versions dating back to 10.0. > 10.0.2.2 - (349072) database -> booted in 10.1.1.0 - (208786) jars > 10.1.1.0 - (208786) database -> booted in 10.1.2.4 - (394241) jars > 10.1.2.4 - (394241) database -> booted in 10.1.2.5 - (413784) jars > 10.1.2.5 - (413784) database -> booted in 10.1.3.1 - (417277) jars (Attached is a derby.log that shows the stack trace using sane jars.) > This (self) trigger works fine if it was created and used in the same version of jars. > Below is the trace: > at > org.apache.derby.iapi.error.StandardException.newException(Unkno > wn So > urce) > at > org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext. > pushT > riggerExecutionContext(Unknown Source) > at > org.apache.derby.impl.sql.execute.InternalTriggerExecutionContex > t. it>(Unknown Source) > at > org.apache.derby.impl.sql.execute.GenericExecutionFactory.getTri > ggerE > xecutionContext(Unknown Source) > at > org.apache.derby.impl.sql.execute.TriggerEventActivator. >(Unknow > n Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.fireBeforeTrig > gers( > Unknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown > Source > ) > at > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno > wn So > urce) > at > org.apache.derby.impl.sql.execute.GenericTriggerExecutor.execute > SPS(U > nknown Source) > at > org.apache.derby.impl.sql.execute.RowTriggerExecutor.fireTrigger > (Unkn > own Source) > at > org.apache.derby.impl.sql.execute.TriggerEventActivator.notifyEv > ent(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.fireAfterTrigg > ers(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown > Source > ) > at > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno > wn So > urce) > at > org.apache.derby.impl.sql.execute.GenericTriggerExecutor.execute > SPS(U > nknown Source) > at > org.apache.derby.impl.sql.execute.RowTriggerExecutor.fireTrigger > (Unkn > own Source) > at > org.apache.derby.impl.sql.execute.TriggerEventActivator.notifyEv > ent(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.fireAfterTrigg > ers(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown > Source > ) > at > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno > wn So > urce) > at > org.apache.derby.impl.sql.execute.GenericTriggerExecutor.execute > SPS(U > nknown Source) > at > org.apache.derby.impl.sql.execute.RowTriggerExecutor.fireTrigger > (Unkn > own Source) > at > org.apache.derby.impl.sql.execute.TriggerEventActivator.notifyEv > ent(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.fireAfterTrigg > ers(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown > Source > ) > at > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno > wn So > urce) > at > org.apache.derby.impl.sql.execute.GenericTriggerExecutor.execute > SPS(U > nknown Source) > at > org.apache.derby.impl.sql.execute.RowTriggerExecutor.fireTrigger > (Unkn > own Source) > at > org.apache.derby.impl.sql.execute.TriggerEventActivator.notifyEv > ent(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.fireAfterTrigg > ers(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown > Source > ) > at > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno > wn So > urce) > at > org.apache.derby.impl.sql.execute.GenericTriggerExecutor.execute > SPS(U > nknown Source) > at > org.apache.derby.impl.sql.execute.RowTriggerExecutor.fireTrigger > (Unkn > own Source) > at > org.apache.derby.impl.sql.execute.TriggerEventActivator.notifyEv > ent(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.fireAfterTrigg > ers(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown > Source > ) > at > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno > wn So > urce) > at > org.apache.derby.impl.sql.execute.GenericTriggerExecutor.execute > SPS(U > nknown Source) > at > org.apache.derby.impl.sql.execute.RowTriggerExecutor.fireTrigger > (Unkn > own Source) > at > org.apache.derby.impl.sql.execute.TriggerEventActivator.notifyEv > ent(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.fireAfterTrigg > ers(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown > Source > ) > at > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno > wn So > urce) > at > org.apache.derby.impl.sql.execute.GenericTriggerExecutor.execute > SPS(U > nknown Source) > at > org.apache.derby.impl.sql.execute.RowTriggerExecutor.fireTrigger > (Unkn > own Source) > at > org.apache.derby.impl.sql.execute.TriggerEventActivator.notifyEv > ent(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.fireAfterTrigg > ers(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown > Source > ) > at > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno > wn So > urce) > at > org.apache.derby.impl.sql.execute.GenericTriggerExecutor.execute > SPS(U > nknown Source) > at > org.apache.derby.impl.sql.execute.RowTriggerExecutor.fireTrigger > (Unkn > own Source) > at > org.apache.derby.impl.sql.execute.TriggerEventActivator.notifyEv > ent(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.fireAfterTrigg > ers(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown > Source > ) > at > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno > wn So > urce) > at > org.apache.derby.impl.sql.execute.GenericTriggerExecutor.execute > SPS(U > nknown Source) > at > org.apache.derby.impl.sql.execute.RowTriggerExecutor.fireTrigger > (Unkn > own Source) > at > org.apache.derby.impl.sql.execute.TriggerEventActivator.notifyEv > ent(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.fireAfterTrigg > ers(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown > Source > ) > at > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno > wn So > urce) > at > org.apache.derby.impl.sql.execute.GenericTriggerExecutor.execute > SPS(U > nknown Source) > at > org.apache.derby.impl.sql.execute.RowTriggerExecutor.fireTrigger > (Unkn > own Source) > at > org.apache.derby.impl.sql.execute.TriggerEventActivator.notifyEv > ent(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.fireAfterTrigg > ers(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown > Source > ) > at > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno > wn So > urce) > at > org.apache.derby.impl.sql.execute.GenericTriggerExecutor.execute > SPS(U > nknown Source) > at > org.apache.derby.impl.sql.execute.RowTriggerExecutor.fireTrigger > (Unkn > own Source) > at > org.apache.derby.impl.sql.execute.TriggerEventActivator.notifyEv > ent(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.fireAfterTrigg > ers(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown > Source > ) > at > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno > wn So > urce) > at > org.apache.derby.impl.sql.execute.GenericTriggerExecutor.execute > SPS(U > nknown Source) > at > org.apache.derby.impl.sql.execute.RowTriggerExecutor.fireTrigger > (Unkn > own Source) > at > org.apache.derby.impl.sql.execute.TriggerEventActivator.notifyEv > ent(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.fireAfterTrigg > ers(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown > Source > ) > at > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno > wn So > urce) > at > org.apache.derby.impl.sql.execute.GenericTriggerExecutor.execute > SPS(U > nknown Source) > at > org.apache.derby.impl.sql.execute.RowTriggerExecutor.fireTrigger > (Unkn > own Source) > at > org.apache.derby.impl.sql.execute.TriggerEventActivator.notifyEv > ent(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.fireAfterTrigg > ers(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown > Source > ) > at > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno > wn So > urce) > at > org.apache.derby.impl.sql.execute.GenericTriggerExecutor.execute > SPS(U > nknown Source) > at > org.apache.derby.impl.sql.execute.RowTriggerExecutor.fireTrigger > (Unkn > own Source) > at > org.apache.derby.impl.sql.execute.TriggerEventActivator.notifyEv > ent(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.fireAfterTrigg > ers(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown > Source > ) > at > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno > wn So > urce) > at > org.apache.derby.impl.sql.execute.GenericTriggerExecutor.execute > SPS(U > nknown Source) > at > org.apache.derby.impl.sql.execute.RowTriggerExecutor.fireTrigger > (Unkn > own Source) > at > org.apache.derby.impl.sql.execute.TriggerEventActivator.notifyEv > ent(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.fireAfterTrigg > ers(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown > Source > ) > at > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno > wn So > urce) > at > org.apache.derby.impl.sql.execute.GenericTriggerExecutor.execute > SPS(U > nknown Source) > at > org.apache.derby.impl.sql.execute.RowTriggerExecutor.fireTrigger > (Unkn > own Source) > at > org.apache.derby.impl.sql.execute.TriggerEventActivator.notifyEv > ent(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.fireAfterTrigg > ers(U > nknown Source) > at > org.apache.derby.impl.sql.execute.UpdateResultSet.open(Unknown > Source > ) > at > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno > wn So > urce) > at > org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unkno > wn So > urce) > at > org.apache.derby.impl.jdbc.EmbedStatement.execute(Unknown > Source) > at > org.apache.derby.impl.jdbc.EmbedStatement.execute(Unknown > Source) > at > org.apache.derby.impl.tools.ij.ij.executeImmediate(Unknown > Source) > at > org.apache.derby.impl.tools.ij.utilMain.doCatch(Unknown > Source) > at org.apache.derby.impl.tools.ij.utilMain.go(Unknown > Source) > at org.apache.derby.impl.tools.ij.Main.go(Unknown > Source) > at org.apache.derby.impl.tools.ij.Main.mainCore(Unknown > Source) > at org.apache.derby.impl.tools.ij.Main14.main(Unknown > Source) > at org.apache.derby.tools.ij.main(Unknown Source) > SYSINFO: > ------------------ Java Information ------------------ > Java Version: 1.4.2 > Java Vendor: IBM Corporation > Java home: C:\Cloudscape_10.1\ibm-jre-n142p\jre > Java classpath: > C:\Cloudscape_10.1\lib\derby.jar;C:\Cloudscape_10.1\lib\derbytools.jar;C:\Cloudscape_10.1\lib\db2jcc_license_c.jar; > OS name: Windows 2000 > OS architecture: x86 > OS version: 5.0 > Java user home: C:\Documents and Settings\Administrator > Java user dir: C:\Documents and Settings\Administrator > java.specification.name: Java Platform API Specification > java.specification.version: 1.4 > --------- Derby Information -------- > JRE - JDBC: J2SE 1.4.2 - JDBC 3.0 > [C:\Cloudscape_10.1\lib\derby.jar] 10.1.3.2 - (424154) > [C:\Cloudscape_10.1\lib\derbytools.jar] 10.1.3.2 - (424154) > ------------------------------------------------------ > ----------------- Locale Information ----------------- > ------------------------------------------------------ -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira