Issue 707

Summary: Back Arrow on Toolbar locks up Compendium
Product: Compendium Reporter: Bill Uhlarik <az754>
Component: ToolbarsAssignee: Michelle Bachler <m.s.bachler>
Status: RESOLVED FIXED    
Type: Bug-Normal    
Priority: Undecided    
Version: 1.5.3 Alpha 4   
Platform: PC   
OS: Windows   

Description Bill Uhlarik 2008-10-16 20:46:39 BST
When I selected the back arrow from the toolbar, Compendium locked up. This is
an intermittent problem. The incident happened when I was doing some clean up
work. I was copying/pasting and switching between maps. I was double clicking
the mouse on map nodes along with using the tree in the Outline View to
navigate through the maps. What I remember happening before the lock up was, I
switched to a map using the tree in the Outline View and then pressed the back
arrow from the tool bar. After that the hour glass appeared and Compendium was
locked. I finally had to use the Task Manager to kill the program. I have had
problems using the arrows on the tool bar in the past and had gotten away from
using them because of the lock up problem, but when they work they are so
useful that I started using them again. 

I have included the log file below.

16-October-2008_13-29-47: Exception (ProjectCompendiumFrame.connectToServices -
localhost) 

Communications link failure due to underlying exception: 

** BEGIN NESTED EXCEPTION ** 

java.net.ConnectException
MESSAGE: Connection refused: connect

STACKTRACE:

java.net.ConnectException: Connection refused: connect
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(Unknown Source)
    at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
    at java.net.PlainSocketImpl.connect(Unknown Source)
    at java.net.SocksSocketImpl.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at java.net.Socket.<init>(Unknown Source)
    at java.net.Socket.<init>(Unknown Source)
    at
com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:173)
    at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:267)
    at com.mysql.jdbc.Connection.createNewIO(Connection.java:2739)
    at com.mysql.jdbc.Connection.<init>(Connection.java:1553)
    at
com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at
com.compendium.core.db.management.DBConnectionManager.getMySQLConnection(DBConnectionManager.java:221)
    at
com.compendium.core.db.management.DBConnectionManager.getPlainConnection(DBConnectionManager.java:155)
    at
com.compendium.core.db.management.DBAdminDatabase.checkForAdminDatabase(DBAdminDatabase.java:182)
    at
com.compendium.ui.ProjectCompendiumFrame.connectToServices(ProjectCompendiumFrame.java:1059)
    at
com.compendium.ui.ProjectCompendiumFrame.init(ProjectCompendiumFrame.java:653)
    at
com.compendium.ui.ProjectCompendiumFrame.initialiseFrame(ProjectCompendiumFrame.java:587)
    at com.compendium.ProjectCompendium.<init>(ProjectCompendium.java:139)
    at com.compendium.ProjectCompendium.main(ProjectCompendium.java:86)


** END NESTED EXCEPTION **



Last packet sent to the server was 16 ms ago.
16-October-2008_13-31-37: viewframe not selected because 2 >= 2
16-October-2008_15-09-47: viewframe not selected because 24 >= 14
16-October-2008_15-10-30: viewframe not selected because 24 >= 14
16-October-2008_15-11-09: viewframe not selected because 24 >= 14
16-October-2008_15-11-32: viewframe not selected because 24 >= 14
Exception in thread "AWT-EventQueue-0"
java.lang.ArrayIndexOutOfBoundsException: 23 >= 14
16-October-2008_15-12-28:     at java.util.Vector.elementAt(Unknown Source)
16-October-2008_15-12-28:     at
com.compendium.ui.UIHistory.goBack(UIHistory.java:276)
16-October-2008_15-12-28:     at
com.compendium.ui.toolbars.UIToolBarMain.onBack(UIToolBarMain.java:360)
16-October-2008_15-12-28:     at
com.compendium.ui.toolbars.UIToolBarMain.actionPerformed(UIToolBarMain.java:334)
16-October-2008_15-12-28:     at
javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
16-October-2008_15-12-28:     at
javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
16-October-2008_15-12-28:     at
javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
16-October-2008_15-12-28:     at
javax.swing.DefaultButtonModel.setPressed(Unknown Source)
16-October-2008_15-12-28:     at
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
16-October-2008_15-12-28:     at
java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
16-October-2008_15-12-28:     at java.awt.Component.processMouseEvent(Unknown
Source)
16-October-2008_15-12-28:     at
javax.swing.JComponent.processMouseEvent(Unknown Source)
16-October-2008_15-12-28:     at java.awt.Component.processEvent(Unknown
Source)
16-October-2008_15-12-28:     at java.awt.Container.processEvent(Unknown
Source)
16-October-2008_15-12-28:     at java.awt.Component.dispatchEventImpl(Unknown
Source)
16-October-2008_15-12-28:     at java.awt.Container.dispatchEventImpl(Unknown
Source)
16-October-2008_15-12-28:     at java.awt.Component.dispatchEvent(Unknown
Source)
16-October-2008_15-12-28:     at
java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
16-October-2008_15-12-28:     at
java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
16-October-2008_15-12-28:     at
java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
16-October-2008_15-12-28:     at java.awt.Container.dispatchEventImpl(Unknown
Source)
16-October-2008_15-12-28:     at java.awt.Window.dispatchEventImpl(Unknown
Source)
16-October-2008_15-12-28:     at java.awt.Component.dispatchEvent(Unknown
Source)
16-October-2008_15-12-28:     at java.awt.EventQueue.dispatchEvent(Unknown
Source)
16-October-2008_15-12-28:     at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
16-October-2008_15-12-28:     at
java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
16-October-2008_15-12-28:     at
java.awt.EventDispatchThread.pumpEvents(Unknown Source)
16-October-2008_15-12-28:     at
java.awt.EventDispatchThread.pumpEvents(Unknown Source)
16-October-2008_15-12-28:     at java.awt.EventDispatchThread.run(Unknown
Source)
16-October-2008_15-24-36: Unable to shutdown Derby: Derby system shutdown.
Comment 1 Michelle Bachler 2008-10-17 09:42:45 BST
Thank you for reporting this as no one else has so I was not aware there was a
problem. I will look into it today.

Michelle
Comment 2 Michelle Bachler 2008-10-22 14:17:51 BST
I opened loads of window in various ways and navigated around and used the back
button, but could not break it.

However, from your log file I can see what part of the code was having issues,
so I have put a check in the code to make sure that it cannot throw
ArrayIndexOutOfBoundsException as it was doing in the UIHisory.goBack (and
goForward). 

So hopefully that will sort it out.