Menu

#55 I broke my database, now Hypernomicon won't launch

closed
None
Bug
2022-06-25
2022-06-24
No

I will try and reconstruct what I did, and I will add a comment in this thread with some Java error dump information.

I have a Note, and I wanted to create a Term linked to that Note. So I clicked "Unite with Term", and then "Create new term with this search key". I expected it to take me to the newly created Term, but I remained on the Note entry. So I searched for the new Term using the Search Key I had specified. It came up with an entry with no title.

I clicked on the entry with no title and it took me to (I think) a completely empty Term entry. I tried to save it, but it said "You must enter a glossary". I clicked delete but nothing happened. I tried to manually create a new Term with the search key, but it said "That search key already exists". I went back to the blank entry and tried to delete it, but again it didn't work.

Eventually I shut down Hypernomicon. I tried to re-open it but it crashed with the error dump I will paste below. Now it keeps giving me the same error when I try to open Hypernomicon.

Should I try to manually edit Terms.xml and/or Notes.xml?

Discussion

  • Stephen Mann

    Stephen Mann - 2022-06-24

    java.lang.RuntimeException: Exception in Application start method
    at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:901)
    at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:196)
    at java.base/java.lang.Thread.run(Thread.java:829)
    Caused by: java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0
    at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
    at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
    at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248)
    at java.base/java.util.Objects.checkIndex(Objects.java:372)
    at java.base/java.util.ArrayList.get(ArrayList.java:459)
    at com.google.common.collect.AbstractMapBasedMultimap$WrappedList.get(AbstractMapBasedMultimap.java:804)
    at org.hypernomicon.model.relations.RelationSet.getObject(RelationSet.java:102)
    at org.hypernomicon.model.relations.HyperObjList.get(HyperObjList.java:263)
    at org.hypernomicon.view.MainCtrlr.update(MainCtrlr.java:2246)
    at org.hypernomicon.view.HyperViewSequence.showCurrentViewInUI(HyperViewSequence.java:236)
    at org.hypernomicon.view.HyperViewSequence.saveViewFromUItoSlotAdvanceCursorAndLoadNewViewToUI(HyperViewSequence.java:213)
    at org.hypernomicon.view.HyperViewSequence.init(HyperViewSequence.java:277)
    at org.hypernomicon.view.MainCtrlr.loadDB(MainCtrlr.java:1917)
    at org.hypernomicon.App.start(App.java:227)
    at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(LauncherImpl.java:847)
    at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$12(PlatformImpl.java:484)
    at com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:457)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:456)
    at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96)
    at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
    at com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:184)
    ... 1 more

     
  • Stephen Mann

    Stephen Mann - 2022-06-24

    It seems that in the XML a term got created without a <concept> tag:

    <record type="term" id="151" search_key="Shannon information"> <creation_date>2022-06-24T15:41:14.2773793+02:00</creation_date> <modified_date>2022-06-24T15:41:14.2773793+02:00</modified_date> <view_date>2022-06-24T15:41:14.2773793+02:00</view_date> </record>

    I deleted this entry manually. Hypernomicon now opens as normal.

     
  • Jason Winning

    Jason Winning - 2022-06-25
    • status: open --> closed
     
  • Jason Winning

    Jason Winning - 2022-06-25

    That is a bug alright, introduced in the last release. I'm glad you were able to fix it manually. There shouldn't be any other side effects. The fix has been committed to GitHub and it will be in the next release. I will go ahead and do a release (1.24.1) in the next day or two that has this fix.

     

Log in to post a comment.