Uploaded image for project: 'IGB'
  1. IGB
  2. IGBF-3588

Fix App Manager crashing in IGB 10.0.0

    Details

    • Type: Task
    • Status: Closed (View Workflow)
    • Priority: Blocker
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None

      Description

      Situation: There is a bug where the App Manager will crash after clicking on the various apps.

      Task: Investigate the issue.

      To reproduce the issue:

      1. Install IGB 10.0.0
        1. Note - I cannot reproduce this issue when running IGB locally through a terminal. The crash only seems to occur with the installed version of IGB 10.0.0.
      2. Select the Plug-ins tab.
      3. Select Launch App Manager
      4. Select an app, then select another app, repeat this until IGB crashes, usually around 20 clicks.

        Attachments

          Issue Links

            Activity

            nfreese Nowlan Freese created issue -
            nfreese Nowlan Freese made changes -
            Field Original Value New Value
            Epic Link IGBF-3142 [ 21688 ]
            nfreese Nowlan Freese made changes -
            Attachment hs_err_pid16613.log [ 18198 ]
            Hide
            nfreese Nowlan Freese added a comment -

            I created an installer locally using JRE version 21.0.0 with Install4Jv10 and was able to replicate the behavior on my Mac.
            I then created an installer locally using JRE version 21.0.1 with Install4Jv10 and was not able to replicate the behavior on my Mac.

            Looking at the attached error log (hs_err_pid16613.log) I see webkit mentioned several times. This is interesting as the reason we went down to JRE 21.0.0 was because older versions of MacOS were crashing due to a webkit issue on JRE 21.0.1.

            A new JRE has now been released 21.0.2. It may be worth testing to see if JRE 21.0.2 will work on the older MacOS versions.

            Show
            nfreese Nowlan Freese added a comment - I created an installer locally using JRE version 21.0.0 with Install4Jv10 and was able to replicate the behavior on my Mac. I then created an installer locally using JRE version 21.0.1 with Install4Jv10 and was not able to replicate the behavior on my Mac. Looking at the attached error log (hs_err_pid16613.log) I see webkit mentioned several times. This is interesting as the reason we went down to JRE 21.0.0 was because older versions of MacOS were crashing due to a webkit issue on JRE 21.0.1. A new JRE has now been released 21.0.2. It may be worth testing to see if JRE 21.0.2 will work on the older MacOS versions.
            Hide
            ann.loraine Ann Loraine added a comment -

            Thanks for detecting this.
            We can investigate JRE 21.0.2 for MacOS.

            Show
            ann.loraine Ann Loraine added a comment - Thanks for detecting this. We can investigate JRE 21.0.2 for MacOS.
            ann.loraine Ann Loraine made changes -
            Rank Ranked higher
            ann.loraine Ann Loraine made changes -
            Rank Ranked higher
            nfreese Nowlan Freese made changes -
            Status To-Do [ 10305 ] In Progress [ 3 ]
            nfreese Nowlan Freese made changes -
            Assignee Nowlan Freese [ nfreese ]
            Hide
            nfreese Nowlan Freese added a comment - - edited

            Tested IGB 10.0.0 using Install4Jv10 with JRE Zulu 21.0.2 on macOS 13.6.4

            App Manager appears to be working correctly with no crashes.

            Next step will be to test the installer on macOS 11. Note that JRE version 21.0.1 caused IGB on macOS 11 to crash on startup (see comments in IGBF-3508 and this link).

            Show
            nfreese Nowlan Freese added a comment - - edited Tested IGB 10.0.0 using Install4Jv10 with JRE Zulu 21.0.2 on macOS 13.6.4 App Manager appears to be working correctly with no crashes. Next step will be to test the installer on macOS 11. Note that JRE version 21.0.1 caused IGB on macOS 11 to crash on startup (see comments in IGBF-3508 and this link ).
            nfreese Nowlan Freese made changes -
            Link This issue relates to IGBF-3508 [ IGBF-3508 ]
            Hide
            nfreese Nowlan Freese added a comment -

            The universal bundle for JRE Zulu 21.0.2 (macos-universal-21.0.2.tar.gz) has been uploaded to https://bitbucket.org/lorainelab/jre-bundles-install4j/downloads/

            Show
            nfreese Nowlan Freese added a comment - The universal bundle for JRE Zulu 21.0.2 (macos-universal-21.0.2.tar.gz) has been uploaded to https://bitbucket.org/lorainelab/jre-bundles-install4j/downloads/
            nfreese Nowlan Freese made changes -
            Status In Progress [ 3 ] To-Do [ 10305 ]
            Hide
            nfreese Nowlan Freese added a comment -

            Testing on macOS 11.7.10

            JRE 21.0.0 - IGB opens, app manager crashes
            JRE 21.0.1 - IGB crashes
            JRE 21.0.2 - IGB opens, app manager works correctly

            It appears that JRE Zulu 21.0.2 fixes both issues we were seeing on Mac. I would lean towards using Zulu 21.0.2 on Mac, Windows, and Linux for consistency.

            Show
            nfreese Nowlan Freese added a comment - Testing on macOS 11.7.10 JRE 21.0.0 - IGB opens, app manager crashes JRE 21.0.1 - IGB crashes JRE 21.0.2 - IGB opens, app manager works correctly It appears that JRE Zulu 21.0.2 fixes both issues we were seeing on Mac. I would lean towards using Zulu 21.0.2 on Mac, Windows, and Linux for consistency.
            Hide
            nfreese Nowlan Freese added a comment - - edited

            The following JRE 21.0.2 bundles have been uploaded to https://bitbucket.org/lorainelab/jre-bundles-install4j/downloads/
            windows-amd64-21.0.2.tar.gz
            linux-amd64-21.0.2.tar.gz
            macos-universal-21.0.2.tar.gz

            Next step: We need to update the IGB docker image to use the new JREs.

            Show
            nfreese Nowlan Freese added a comment - - edited The following JRE 21.0.2 bundles have been uploaded to https://bitbucket.org/lorainelab/jre-bundles-install4j/downloads/ windows-amd64-21.0.2.tar.gz linux-amd64-21.0.2.tar.gz macos-universal-21.0.2.tar.gz Next step: We need to update the IGB docker image to use the new JREs.
            nfreese Nowlan Freese made changes -
            Assignee Nowlan Freese [ nfreese ] Ann Loraine [ aloraine ]
            nfreese Nowlan Freese made changes -
            Summary Investigate App Manager crashing in IGB 10.0.0 Fix App Manager crashing in IGB 10.0.0
            Hide
            ann.loraine Ann Loraine added a comment - - edited

            Update:

            • Using EC2 in the same directory as a newly edited Dockerfile to rebuild image with:
            docker build -t igb-maven-install4j:I4J10-jre-21.0.2 .
            
            • Cloning IGB onto EC2 with:
            git clone --single-branch --branch main-JDK21-with-javafx-no-theme https://aloraine@bitbucket.org/lorainelab/integrated-genome-browser.git build
            
            • edited install4Jv10 configuration file to use jre bundles for 21.0.2:
              <mediaSets>
                <windows name="Windows_x86_64" id="23" architecture="64">
                  <jreBundle jreBundleSource="preCreated" includedJre="windows-amd64-21.0.2" />
                </windows>
                <unixInstaller name="Unix Installer" id="25">
                  <jreBundle jreBundleSource="preCreated" includedJre="linux-amd64-21.0.2" />
                </unixInstaller>
                <macosFolder name="Mac_OS X_universal" id="552" architecture="universal" signLaunchers="true">
                  <jreBundle jreBundleSource="preCreated" includedJre="macos-universal-21.0.2" />
                </macosFolder>
              </mediaSets>
            
            • deployed low-risk certificates for signing jars to distribution directory inside build directory made in the previous step
            • Started interactive docker session running the new image with:
            docker run -i -t -v ~/build:/build --env-file env_vars --workdir /build igb-maven-install4j:I4J10-jre-21.0.2 /bin/bash
            
            • within the interactive session above, tested docker image's ability to build installers with:
            mvn install -P release-bitbucket-pipelines
            

            The above command completed without reporting an error.

            Show
            ann.loraine Ann Loraine added a comment - - edited Update: Using EC2 in the same directory as a newly edited Dockerfile to rebuild image with: docker build -t igb-maven-install4j:I4J10-jre-21.0.2 . Cloning IGB onto EC2 with: git clone --single-branch --branch main-JDK21-with-javafx-no-theme https: //aloraine@bitbucket.org/lorainelab/integrated-genome-browser.git build edited install4Jv10 configuration file to use jre bundles for 21.0.2: <mediaSets> <windows name= "Windows_x86_64" id= "23" architecture= "64" > <jreBundle jreBundleSource= "preCreated" includedJre= "windows-amd64-21.0.2" /> </windows> <unixInstaller name= "Unix Installer" id= "25" > <jreBundle jreBundleSource= "preCreated" includedJre= "linux-amd64-21.0.2" /> </unixInstaller> <macosFolder name= "Mac_OS X_universal" id= "552" architecture= "universal" signLaunchers= " true " > <jreBundle jreBundleSource= "preCreated" includedJre= "macos-universal-21.0.2" /> </macosFolder> </mediaSets> deployed low-risk certificates for signing jars to distribution directory inside build directory made in the previous step Started interactive docker session running the new image with: docker run -i -t -v ~/build:/build --env-file env_vars --workdir /build igb-maven-install4j:I4J10-jre-21.0.2 /bin/bash within the interactive session above, tested docker image's ability to build installers with: mvn install -P release-bitbucket-pipelines The above command completed without reporting an error.
            ann.loraine Ann Loraine made changes -
            Status To-Do [ 10305 ] In Progress [ 3 ]
            Hide
            ann.loraine Ann Loraine added a comment - - edited

            Checked image - it has the expected jres in ~/.local.

            Tagged (made an alias) for new image with:

            docker tag 96396a8f0274 lorainelab/igb-maven-install4j:I4J10-jre-21.0.2
            

            After logging into docker hub with:

            docker login -u aloraine
            

            pushed the image to docker hub with:

            docker push lorainelab/igb-maven-install4j:I4J10-jre-21.0.2
            
            Show
            ann.loraine Ann Loraine added a comment - - edited Checked image - it has the expected jres in ~/.local. Tagged (made an alias) for new image with: docker tag 96396a8f0274 lorainelab/igb-maven-install4j:I4J10-jre-21.0.2 After logging into docker hub with: docker login -u aloraine pushed the image to docker hub with: docker push lorainelab/igb-maven-install4j:I4J10-jre-21.0.2
            Hide
            ann.loraine Ann Loraine added a comment - - edited

            Update:

            • Made new branch (named for this ticket) with edit to bitbucket pipelines configuration file and pushed to a fork.
            • Ran "installer for dev" branch pipeline without error.
            • Ran "release" branch pipeline without error.
            • Downloaded Mac installer and ran it. IGB started without error on my Big Sur system, which couldn't run IGB made with JRE 21.0.1
            • Decided to take a chance and merge the code into main dev branch on team repository without review.
            Show
            ann.loraine Ann Loraine added a comment - - edited Update: Made new branch (named for this ticket) with edit to bitbucket pipelines configuration file and pushed to a fork. Ran "installer for dev" branch pipeline without error. Ran "release" branch pipeline without error. Downloaded Mac installer and ran it. IGB started without error on my Big Sur system, which couldn't run IGB made with JRE 21.0.1 Decided to take a chance and merge the code into main dev branch on team repository without review.
            ann.loraine Ann Loraine made changes -
            Status In Progress [ 3 ] Needs 1st Level Review [ 10005 ]
            ann.loraine Ann Loraine made changes -
            Status Needs 1st Level Review [ 10005 ] First Level Review in Progress [ 10301 ]
            ann.loraine Ann Loraine made changes -
            Status First Level Review in Progress [ 10301 ] Ready for Pull Request [ 10304 ]
            ann.loraine Ann Loraine made changes -
            Status Ready for Pull Request [ 10304 ] Pull Request Submitted [ 10101 ]
            ann.loraine Ann Loraine made changes -
            Status Pull Request Submitted [ 10101 ] Reviewing Pull Request [ 10303 ]
            Hide
            ann.loraine Ann Loraine added a comment -

            Created and merged PR. Installers are available for download and testing in https://bitbucket.org/lorainelab/integrated-genome-browser/downloads/ as

            • IGB-macos-universal-main-JDK21-with-javafx-no-theme.dmg
            • IGB-windows-amd64-main-JDK21-with-javafx-no-theme.dmg
            • IGB-linux-amd64-main-JDK21-with-javafx-no-theme.sh
            Show
            ann.loraine Ann Loraine added a comment - Created and merged PR. Installers are available for download and testing in https://bitbucket.org/lorainelab/integrated-genome-browser/downloads/ as IGB-macos-universal-main-JDK21-with-javafx-no-theme.dmg IGB-windows-amd64-main-JDK21-with-javafx-no-theme.dmg IGB-linux-amd64-main-JDK21-with-javafx-no-theme.sh
            ann.loraine Ann Loraine made changes -
            Status Reviewing Pull Request [ 10303 ] Merged Needs Testing [ 10002 ]
            ann.loraine Ann Loraine made changes -
            Assignee Ann Loraine [ aloraine ]
            nfreese Nowlan Freese made changes -
            Status Merged Needs Testing [ 10002 ] Post-merge Testing In Progress [ 10003 ]
            nfreese Nowlan Freese made changes -
            Assignee Nowlan Freese [ nfreese ]
            Hide
            nfreese Nowlan Freese added a comment -

            Pushed updated main-JDK21-with-javafx-no-theme to my fork, bitbucket pipeline ran successfully. Downloaded installer for Mac (running intel macOS 13.6.4) and did not observe the app manager crashing.

            Closing ticket.

            Show
            nfreese Nowlan Freese added a comment - Pushed updated main-JDK21-with-javafx-no-theme to my fork, bitbucket pipeline ran successfully. Downloaded installer for Mac (running intel macOS 13.6.4) and did not observe the app manager crashing. Closing ticket.
            nfreese Nowlan Freese made changes -
            Assignee Nowlan Freese [ nfreese ] Ann Loraine [ aloraine ]
            nfreese Nowlan Freese made changes -
            Resolution Done [ 10000 ]
            Status Post-merge Testing In Progress [ 10003 ] Closed [ 6 ]

              People

              • Assignee:
                ann.loraine Ann Loraine
                Reporter:
                nfreese Nowlan Freese
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: