Rel crashes on DROP CONSTRAINT
Posted: Mon Nov 01, 2010 1:58 pm
I've been getting a lot of crashes lately, not all of them repeatable, mostly arising from DROP statements. Here's one that does seem to be repeatable (I'll send the relevant database backup privately):
Rel version 1.0.4 Beta Copyright (C) 2004 - 2010 Dave Voorhis All Rights Reserved For further information, please see http://dbappbuilder.sourceforge.net Rel is running on Hugh-PC Persistence provided by Oracle Berkeley DB Java Edition version 4.0.103 Rel comes with ABSOLUTELY NO WARRANTY; for details, type: warranty FROM TUPLE FROM sys.Version This is free software, and you are welcome to redistribute it under certain conditions. For details, type: redistribution FROM TUPLE FROM sys.Version To view the catalog, type: sys.Catalog Ok.
drop var teacher;
ERROR: VAR teacher may not be dropped due to dependencies:
used by CONSTRAINT TeachesFK1 Line 1
drop constraint TeachesFK1;
ERROR: RelDatabase: dropConstraint failed: ca.mb.armchair.rel3.exceptions.ExceptionFatal: Table: delete tuples failed: Can't open a cursor The Transaction used to open the Database was aborted.
Line 1 ca.mb.armchair.rel3.exceptions.ExceptionFatal: RelDatabase: dropConstraint failed: ca.mb.armchair.rel3.exceptions.ExceptionFatal: Table: delete tuples failed: Can't open a cursor The Transaction used to open the Database was aborted. Line 1 at ca.mb.armchair.rel3.interpreter.Interpreter.run(Interpreter.java:71) at ca.mb.armchair.rel3.interpreter.Interpreter.interpret(Interpreter.java:203) at ca.mb.armchair.rel3.interpreter.Interpreter.interpret(Interpreter.java:213) at ca.mb.armchair.rel3.interpreter.Interpreter.interpret(Interpreter.java:217) at ca.mb.armchair.rel3.client.stream.ClientLocalConnection$2.execute(ClientLocalConnection.java:78) at ca.mb.armchair.rel3.client.stream.ClientLocalConnection.send(ClientLocalConnection.java:42) at ca.mb.armchair.rel3.client.stream.ClientLocalConnection.sendExecute(ClientLocalConnection.java:76) at ca.mb.armchair.rel3.client.string.ClientLocal.sendExecute(ClientLocal.java:56) at ca.mb.armchair.rel3.dbrowser.ui.PanelCommandline$36.doInBackground(PanelCommandline.java:1132) at javax.swing.SwingWorker$1.call(Unknown Source) at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at javax.swing.SwingWorker.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source)
Hugh Darwen
Rel version 1.0.4 Beta Copyright (C) 2004 - 2010 Dave Voorhis All Rights Reserved For further information, please see http://dbappbuilder.sourceforge.net Rel is running on Hugh-PC Persistence provided by Oracle Berkeley DB Java Edition version 4.0.103 Rel comes with ABSOLUTELY NO WARRANTY; for details, type: warranty FROM TUPLE FROM sys.Version This is free software, and you are welcome to redistribute it under certain conditions. For details, type: redistribution FROM TUPLE FROM sys.Version To view the catalog, type: sys.Catalog Ok.
drop var teacher;
ERROR: VAR teacher may not be dropped due to dependencies:
used by CONSTRAINT TeachesFK1 Line 1
drop constraint TeachesFK1;
ERROR: RelDatabase: dropConstraint failed: ca.mb.armchair.rel3.exceptions.ExceptionFatal: Table: delete tuples failed: Can't open a cursor The Transaction used to open the Database was aborted.
Line 1 ca.mb.armchair.rel3.exceptions.ExceptionFatal: RelDatabase: dropConstraint failed: ca.mb.armchair.rel3.exceptions.ExceptionFatal: Table: delete tuples failed: Can't open a cursor The Transaction used to open the Database was aborted. Line 1 at ca.mb.armchair.rel3.interpreter.Interpreter.run(Interpreter.java:71) at ca.mb.armchair.rel3.interpreter.Interpreter.interpret(Interpreter.java:203) at ca.mb.armchair.rel3.interpreter.Interpreter.interpret(Interpreter.java:213) at ca.mb.armchair.rel3.interpreter.Interpreter.interpret(Interpreter.java:217) at ca.mb.armchair.rel3.client.stream.ClientLocalConnection$2.execute(ClientLocalConnection.java:78) at ca.mb.armchair.rel3.client.stream.ClientLocalConnection.send(ClientLocalConnection.java:42) at ca.mb.armchair.rel3.client.stream.ClientLocalConnection.sendExecute(ClientLocalConnection.java:76) at ca.mb.armchair.rel3.client.string.ClientLocal.sendExecute(ClientLocal.java:56) at ca.mb.armchair.rel3.dbrowser.ui.PanelCommandline$36.doInBackground(PanelCommandline.java:1132) at javax.swing.SwingWorker$1.call(Unknown Source) at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at javax.swing.SwingWorker.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source)
Hugh Darwen