Any attempt to drop tables fails with the following stacktrace: -
2010-11-30 13:56:41,955 [Thread-8] ERROR net.sourceforge.squirrel_sql.plugins.refactoring.commands.AbstractRefactoringCommand - Unexpected exception on sql generation:
java.lang.reflect.InvocationTargetException
at java.awt.EventQueue.invokeAndWait(EventQueue.java:998)
at javax.swing.SwingUtilities.invokeAndWait(SwingUtilities.java:1320)
at net.sourceforge.squirrel_sql.fw.gui.GUIUtils.processOnSwingEventThread(GUIUtils.java:350)
at net.sourceforge.squirrel_sql.client.gui.ProgressCallBackFactory.create(ProgressCallBackFactory.java:54)
at net.sourceforge.squirrel_sql.plugins.refactoring.commands.DropTablesCommand.getOrderedTables(DropTablesCommand.java:229)
at net.sourceforge.squirrel_sql.plugins.refactoring.commands.DropTablesCommand.generateSQLStatements(DropTablesCommand.java:141)
at net.sourceforge.squirrel_sql.plugins.refactoring.commands.AbstractRefactoringCommand$1.run(AbstractRefactoringCommand.java:202)
at net.sourceforge.squirrel_sql.fw.util.TaskExecuter.run(TaskExecuter.java:82)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.StackOverflowError
at javax.swing.SwingUtilities.isEventDispatchThread(SwingUtilities.java:1333)
at net.sourceforge.squirrel_sql.fw.gui.GUIUtils.processOnSwingEventThread(GUIUtils.java:364)
at net.sourceforge.squirrel_sql.fw.gui.GUIUtils.processOnSwingEventThread(GUIUtils.java:330)
at net.sourceforge.squirrel_sql.client.gui.ProgressCallBackDialog.setVisible(ProgressCallBackDialog.java:206)
at net.sourceforge.squirrel_sql.client.gui.ProgressCallBackDialog$3.run(ProgressCallBackDialog.java:211)
at net.sourceforge.squirrel_sql.fw.gui.GUIUtils.processOnSwingEventThread(GUIUtils.java:365)
at net.sourceforge.squirrel_sql.fw.gui.GUIUtils.processOnSwingEventThread(GUIUtils.java:330)
at net.sourceforge.squirrel_sql.client.gui.ProgressCallBackDialog.setVisible(ProgressCallBackDialog.java:206)
at net.sourceforge.squirrel_sql.client.gui.ProgressCallBackDialog$3.run(ProgressCallBackDialog.java:211)
at net.sourceforge.squirrel_sql.fw.gui.GUIUtils.processOnSwingEventThread(GUIUtils.java:365)
at net.sourceforge.squirrel_sql.fw.gui.GUIUtils.processOnSwingEventThread(GUIUtils.java:330)
at net.sourceforge.squirrel_sql.client.gui.ProgressCallBackDialog.setVisible(ProgressCallBackDialog.java:206)
at net.sourceforge.squirrel_sql.client.gui.ProgressCallBackDialog$3.run(ProgressCallBackDialog.java:211)
at net.sourceforge.squirrel_sql.fw.gui.GUIUtils.processOnSwingEventThread(GUIUtils.java:365)
at net.sourceforge.squirrel_sql.fw.gui.GUIUtils.processOnSwingEventThread(GUIUtils.java:330)
at net.sourceforge.squirrel_sql.client.gui.ProgressCallBackDialog.setVisible(ProgressCallBackDialog.java:206)
at net.sourceforge.squirrel_sql.client.gui.ProgressCallBackDialog$3.run(ProgressCallBackDialog.java:211)
at net.sourceforge.squirrel_sql.fw.gui.GUIUtils.processOnSwingEventThread(GUIUtils.java:365)
at net.sourceforge.squirrel_sql.client.gui.ProgressCallBackDialog.setVisible(ProgressCallBackDialog.java:206)
at net.sourceforge.squirrel_sql.client.gui.ProgressCallBackDialog$3.run(ProgressCallBackDialog.java:211)
at net.sourceforge.squirrel_sql.fw.gui.GUIUtils.processOnSwingEventThread(GUIUtils.java:365)
at net.sourceforge.squirrel_sql.fw.gui.GUIUtils.processOnSwingEventThread(GUIUtils.java:330)
at net.sourceforge.squirrel_sql.client.gui.ProgressCallBackDialog.setVisible(ProgressCallBackDialog.java:206)
......
Hi,
this failure is cause by the ProgressCallBackDialog.setVisible() and is reproducible with ProgressCallBackDialogTestUI.
I will submit a patch.
Stefan
Accepted Stefan's patch.
Rob