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

Display message to user to restart IGB after chromosome or version synonym file is configured in IGB preferences

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
    • Story Points:
      1
    • Sprint:
      Fall 2017

      Description

      User is allowed to configure version synonym file or chromosome file in IGB preferences (Preferences->Data Sources).
      Some users may start IGB and immediately configure their chromosome.txt and synonym.txt files before selecting the genome they are working with. In this case, an IGB restart would not be required. But if user selects any of these files after selecting genome, then IGB restart is required to reflect these configuration changes. In this scenario, display a message to user saying 'IGB restart is required to reflect the changes'.

        Attachments

          Issue Links

            Activity

            Show
            akadam3 Ashwini Kadam (Inactive) added a comment - Fix can be found at : https://bitbucket.org/ashwiniK27/integrated-genome-browser/commits/746c75440b2c69f0ede1d3c161d2f85d24335f61?at=IGBF-1187 Needs testing with linux and MacOS
            Hide
            ann.loraine Ann Loraine added a comment -

            Message appears as described on Mac.

            Show
            ann.loraine Ann Loraine added a comment - Message appears as described on Mac.
            Hide
            mason Mason Meyer (Inactive) added a comment -

            During my testing, it appears that the message to restart IGB appeared as expected, however, the file choosers for the version and chromosome synonyms feature have reverted back to the non-native file choosers. Per IGBF-1185 and IGBF-1186, the file choosers for the version and chromosome synonyms feature should be using the operating system's native file chooser. I tested those issues on 12/21/17 and they appeared to be resolved, so I think that something merged into the last build caused this regression to occur. I am re-assigning this story to Ann for review and am moving this back to the To-Do column.

            Show
            mason Mason Meyer (Inactive) added a comment - During my testing, it appears that the message to restart IGB appeared as expected, however, the file choosers for the version and chromosome synonyms feature have reverted back to the non-native file choosers. Per IGBF-1185 and IGBF-1186 , the file choosers for the version and chromosome synonyms feature should be using the operating system's native file chooser. I tested those issues on 12/21/17 and they appeared to be resolved, so I think that something merged into the last build caused this regression to occur. I am re-assigning this story to Ann for review and am moving this back to the To-Do column.
            Hide
            djoshi4 Deepti Joshi (Inactive) added a comment -
            Show
            djoshi4 Deepti Joshi (Inactive) added a comment - IGBF-1185 is ready for first level review. Source can be found at: https://bitbucket.org/djoshi4/deepti-fork-igb/commits/ab8b74586d7884f73d2767e18f8f417dc8d1ce15
            Hide
            mason Mason Meyer (Inactive) added a comment -

            It appears that this story is not quite resolved, because it seems that the chromosome.txt file being added does not get saved when you elect to "Quit IGB" through the pop-up message. However, if you elect not to quit, and then manually quit IGB and then re-open, the chromosome.txt file does get saved. So it seems that the IGB code needs to make sure to save the chromosome.txt file/synonyms.txt file before exiting IGB if the user elects to "Quit IGB". I am re-assigning this issue to Ashwini for fixing.

            Show
            mason Mason Meyer (Inactive) added a comment - It appears that this story is not quite resolved, because it seems that the chromosome.txt file being added does not get saved when you elect to "Quit IGB" through the pop-up message. However, if you elect not to quit, and then manually quit IGB and then re-open, the chromosome.txt file does get saved. So it seems that the IGB code needs to make sure to save the chromosome.txt file/synonyms.txt file before exiting IGB if the user elects to "Quit IGB". I am re-assigning this issue to Ashwini for fixing.
            Hide
            ieclabau Ivory Blakley (Inactive) added a comment - - edited

            FYI, the user guide documentation says that the existing synonyms.txt file can be found at:
            Integrated Genome Browswer / core / igb / scr / main / resources / synonyms.txt

            But in fact the file is located here (path on bitbucket):
            Integrated Genome Browser / core / synonym-lookup / src / main / resources / synonyms.txt

            and here (additional path on my machine, not available on bitbucket):
            Integrated Genome Browser / core / synonym-lookup / target / classes / synonyms.txt

            The outdated user guide page is here:
            https://wiki.transvar.org/display/igbman/Use+synonyms.txt+to+link+genome+version+names+to+each+other

            Users are directed to look at the current file before making changes, and using the current file as an example is the only way we tell users how to format their synonyms file.

            *update*
            I have created an issue about this
            IGBF-1229
            file location of synonyms.txt in user guide

            Show
            ieclabau Ivory Blakley (Inactive) added a comment - - edited FYI, the user guide documentation says that the existing synonyms.txt file can be found at: Integrated Genome Browswer / core / igb / scr / main / resources / synonyms.txt But in fact the file is located here (path on bitbucket): Integrated Genome Browser / core / synonym-lookup / src / main / resources / synonyms.txt and here (additional path on my machine, not available on bitbucket): Integrated Genome Browser / core / synonym-lookup / target / classes / synonyms.txt The outdated user guide page is here: https://wiki.transvar.org/display/igbman/Use+synonyms.txt+to+link+genome+version+names+to+each+other Users are directed to look at the current file before making changes, and using the current file as an example is the only way we tell users how to format their synonyms file. * update * I have created an issue about this IGBF-1229 file location of synonyms.txt in user guide
            Hide
            ieclabau Ivory Blakley (Inactive) added a comment -

            When IGB saves the synonyms info, the files in the file paths I showed above do not change.
            The following is added to preferences:

            <key>data directory</key>
            <string>/Users/ivory/Downloads/synonyms.txt</string>
            ...
            <key>locations/</key>
            <dict>
            <key>Version Synonyms File URL</key>
            <string>/Users/ivory/Downloads/synonyms.txt</string>
            </dict>

            When IGB starts (after reseting preferences) the locations node is empty and the data directory node does not exist.

            After selecting a genome and then selecting the synonyms file, the data directory node is created and populated with the file name, but the locations node is still empty.
            Choosing to close IGB (in the pop up window) does not change this. Opening IGB does not change this.

            From the home screen, after selecting the synonyms file, the data directory node is created and populated with the file name, and the locations node populated with the file name.

            Whatever is called to populate the locations node is being called when IGB is on the home screen
            but not when IGB is in a genome, and not when the program is closed for this purpose.

            Show
            ieclabau Ivory Blakley (Inactive) added a comment - When IGB saves the synonyms info, the files in the file paths I showed above do not change. The following is added to preferences: <key>data directory</key> <string>/Users/ivory/Downloads/synonyms.txt</string> ... <key>locations/</key> <dict> <key>Version Synonyms File URL</key> <string>/Users/ivory/Downloads/synonyms.txt</string> </dict> When IGB starts (after reseting preferences) the locations node is empty and the data directory node does not exist. After selecting a genome and then selecting the synonyms file, the data directory node is created and populated with the file name, but the locations node is still empty. Choosing to close IGB (in the pop up window) does not change this. Opening IGB does not change this. From the home screen, after selecting the synonyms file, the data directory node is created and populated with the file name, and the locations node populated with the file name. Whatever is called to populate the locations node is being called when IGB is on the home screen but not when IGB is in a genome, and not when the program is closed for this purpose.
            Hide
            ieclabau Ivory Blakley (Inactive) added a comment -

            The key line for this is in the file SynonymsControPanel.java
            line 131
            PreferenceUtils.getLocationsNode().put(PREF_VSYN_FILE_URL, vsynonymFile.getText());

            There is a very similar line for the chromosome file, in fact the block of code this lives in is pretty much identical.

            When IGB prompts the user to restart, this code hasn't run yet. If the user opts to quit IGB, then the program quits without ever saving the update to the locations node.
            The code block needs to catch the file=="" case (where the user has removed the synonyms file) and the file-selected case. Since these two cases are separated in the logic flow, the code has to be in two different places. So I pulled relevant code into a method (called updateSynonymFile) that applies to both the genome version synonyms and the chromosome synonyms. In addition to replacing the existing code blocks, I added a call to this function in the file-selected case logic.

            Testing results are the same as my last comment EXCEPT that if the genome version is selected, and the I choose a synonym file, the locations node is updated immediately (before I choose to quit or not). When I choose to quit and then re-open IGB, my updated synonyms file is preserved between the sessions.

            Show
            ieclabau Ivory Blakley (Inactive) added a comment - The key line for this is in the file SynonymsControPanel.java line 131 PreferenceUtils.getLocationsNode().put(PREF_VSYN_FILE_URL, vsynonymFile.getText()); There is a very similar line for the chromosome file, in fact the block of code this lives in is pretty much identical. When IGB prompts the user to restart, this code hasn't run yet. If the user opts to quit IGB, then the program quits without ever saving the update to the locations node. The code block needs to catch the file=="" case (where the user has removed the synonyms file) and the file-selected case. Since these two cases are separated in the logic flow, the code has to be in two different places. So I pulled relevant code into a method (called updateSynonymFile) that applies to both the genome version synonyms and the chromosome synonyms. In addition to replacing the existing code blocks, I added a call to this function in the file-selected case logic. Testing results are the same as my last comment EXCEPT that if the genome version is selected, and the I choose a synonym file, the locations node is updated immediately (before I choose to quit or not). When I choose to quit and then re-open IGB, my updated synonyms file is preserved between the sessions.
            Hide
            ieclabau Ivory Blakley (Inactive) added a comment -

            Since the IGBF-1187 branch has already been merged into master, I made a new branch IGBF-1187-b for these updates.
            See
            https://bitbucket.org/IvoryBlak/integrated-genome-browser/branch/IGBF-1187-b

            Since Mason was the one who identified the problem, I think he should be one of the first level reviewers to make sure it is resolved.
            I'm moving this to needs first level review.

            Show
            ieclabau Ivory Blakley (Inactive) added a comment - Since the IGBF-1187 branch has already been merged into master, I made a new branch IGBF-1187 -b for these updates. See https://bitbucket.org/IvoryBlak/integrated-genome-browser/branch/IGBF-1187-b Since Mason was the one who identified the problem, I think he should be one of the first level reviewers to make sure it is resolved. I'm moving this to needs first level review.
            Hide
            ann.loraine Ann Loraine added a comment -

            Labeling as Intermediate due to past workflow confusion. Not clear if this is fixed or not.

            Show
            ann.loraine Ann Loraine added a comment - Labeling as Intermediate due to past workflow confusion. Not clear if this is fixed or not.

              People

              • Assignee:
                Unassigned
                Reporter:
                akadam3 Ashwini Kadam (Inactive)
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: