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

Investigate the SLF4j error and the MissingResourceException issue for the properties file

    Details

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

      Description

      When a properties file is created and used in the code to read from it, it's not working and throws an error. Below is the error:

      ERROR : bundle igb:10.1.0 (40)[com.affymetrix.igb.prefs.IgbPreferencesLoadingOrchestrator(44)] : The activate method has thrown an exception
      java.util.MissingResourceException: Can't find bundle for base name ucsc, locale en_US
      at java.base/java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:2059)
      at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1697)
      at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1600)
      at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1555)
      at java.base/java.util.ResourceBundle.getBundle(ResourceBundle.java:861)
      at org.lorainelab.igb.ucsc.rest.api.service.UCSCRestApiDataProvider.<init>(UCSCRestApiDataProvider.java:39)

      Also, observed this error log for testcases in few modules:
      SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
      SLF4J: Defaulting to no-operation (NOP) logger implementation
      SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.

        Attachments

          Issue Links

            Activity

            jsirigin Jaya Sravani Sirigineedi created issue -
            jsirigin Jaya Sravani Sirigineedi made changes -
            Field Original Value New Value
            Link This issue relates to IGBF-3807 [ IGBF-3807 ]
            jsirigin Jaya Sravani Sirigineedi made changes -
            Status To-Do [ 10305 ] In Progress [ 3 ]
            jsirigin Jaya Sravani Sirigineedi made changes -
            Epic Link IGBF-1531 [ 17617 ]
            Hide
            jsirigin Jaya Sravani Sirigineedi added a comment -

            Fixed the Slf4j error and able to see the warning message when linkout URL isn't available. Working on the MissingResourceException issue for the properties file.

            Show
            jsirigin Jaya Sravani Sirigineedi added a comment - Fixed the Slf4j error and able to see the warning message when linkout URL isn't available. Working on the MissingResourceException issue for the properties file.
            Hide
            jsirigin Jaya Sravani Sirigineedi added a comment -

            Fixed the MissingResourceException issue and the updated code is present at: https://bitbucket.org/jaya-sravani/integrated-genome-browser/branch/IGBF-3813. The UCSCRestApiDataProvider class is being initialized from the igb module and the resource stored in the ucsc-rest-service-api module isn't available yet that's the reason for the MissingResourceException error, changed the URL location to igb.properties which is located in the igb module and it's working as expected. Please review and let me know if there are any issues.

            Show
            jsirigin Jaya Sravani Sirigineedi added a comment - Fixed the MissingResourceException issue and the updated code is present at: https://bitbucket.org/jaya-sravani/integrated-genome-browser/branch/IGBF-3813 . The UCSCRestApiDataProvider class is being initialized from the igb module and the resource stored in the ucsc-rest-service-api module isn't available yet that's the reason for the MissingResourceException error, changed the URL location to igb.properties which is located in the igb module and it's working as expected. Please review and let me know if there are any issues.
            jsirigin Jaya Sravani Sirigineedi made changes -
            Status In Progress [ 3 ] Needs 1st Level Review [ 10005 ]
            jsirigin Jaya Sravani Sirigineedi made changes -
            Assignee Jaya Sravani Sirigineedi [ jsirigin ]
            nfreese Nowlan Freese made changes -
            Assignee Nowlan Freese [ nfreese ]
            Hide
            nfreese Nowlan Freese added a comment -

            Jaya Sravani Sirigineedi - I'm seeing the following error when building the branch with tests. I feel like we ran into a similar issue a little while ago, but I don't remember what the fix was.

            Running com.lorainelab.igb.ucsc.rest.api.service.UCSCRestSymloaderTest
            10:50:52.565 [main] ERROR org.lorainelab.igb.synonymlookup.services.impl.SynonymLookup - org/apache/commons/csv/CSVFormat
            java.lang.NoClassDefFoundError: org/apache/commons/csv/CSVFormat
            	at org.lorainelab.igb.synonymlookup.services.impl.SynonymLookup.loadSynonyms(SynonymLookup.java:65)
            	at org.lorainelab.igb.synonymlookup.services.impl.ChromosomeSynonymLookupImpl.<init>(ChromosomeSynonymLookupImpl.java:28)
            	at com.lorainelab.igb.ucsc.rest.api.service.UCSCRestSymloaderTest.initialise(UCSCRestSymloaderTest.java:68)
            
            Show
            nfreese Nowlan Freese added a comment - Jaya Sravani Sirigineedi - I'm seeing the following error when building the branch with tests. I feel like we ran into a similar issue a little while ago, but I don't remember what the fix was. Running com.lorainelab.igb.ucsc. rest .api.service.UCSCRestSymloaderTest 10:50:52.565 [main] ERROR org.lorainelab.igb.synonymlookup.services.impl.SynonymLookup - org/apache/commons/csv/CSVFormat java.lang.NoClassDefFoundError: org/apache/commons/csv/CSVFormat at org.lorainelab.igb.synonymlookup.services.impl.SynonymLookup.loadSynonyms(SynonymLookup.java:65) at org.lorainelab.igb.synonymlookup.services.impl.ChromosomeSynonymLookupImpl.<init>(ChromosomeSynonymLookupImpl.java:28) at com.lorainelab.igb.ucsc. rest .api.service.UCSCRestSymloaderTest.initialise(UCSCRestSymloaderTest.java:68)
            Hide
            jsirigin Jaya Sravani Sirigineedi added a comment -

            Nowlan Freese I understood the root cause of the issue, I changed the location of the URL to igb properties for it to work while initializing, but the test doesn't initialize it from the igb module instead it calls from the ucsc module itself so the igb resource isn't available here. working on fixing the issue.

            Show
            jsirigin Jaya Sravani Sirigineedi added a comment - Nowlan Freese I understood the root cause of the issue, I changed the location of the URL to igb properties for it to work while initializing, but the test doesn't initialize it from the igb module instead it calls from the ucsc module itself so the igb resource isn't available here. working on fixing the issue.
            jsirigin Jaya Sravani Sirigineedi made changes -
            Assignee Nowlan Freese [ nfreese ] Jaya Sravani Sirigineedi [ jsirigin ]
            jsirigin Jaya Sravani Sirigineedi made changes -
            Status Needs 1st Level Review [ 10005 ] First Level Review in Progress [ 10301 ]
            jsirigin Jaya Sravani Sirigineedi made changes -
            Status First Level Review in Progress [ 10301 ] To-Do [ 10305 ]
            jsirigin Jaya Sravani Sirigineedi made changes -
            Status To-Do [ 10305 ] In Progress [ 3 ]
            ann.loraine Ann Loraine made changes -
            Sprint Summer 5 [ 199 ] Summer 5, Summer 6 [ 199, 200 ]
            ann.loraine Ann Loraine made changes -
            Rank Ranked higher
            Hide
            jsirigin Jaya Sravani Sirigineedi added a comment -

            Changed the location of the URL to igbDefault.prefs file, everything is working as expected and testcases are also working. This location change requires a bit more changes in various places that was the reason I didn't go for this approach in the start but now I see this option only or hardcoding the string directly in code which is not a good coding standard. Here is the updated code: https://bitbucket.org/jaya-sravani/integrated-genome-browser/branch/IGBF-3813, I have tested all possible scenarios I can think of that might have an effect because of the changes and there are no issues. Please review and let me know if there are any issues.

            Show
            jsirigin Jaya Sravani Sirigineedi added a comment - Changed the location of the URL to igbDefault.prefs file, everything is working as expected and testcases are also working. This location change requires a bit more changes in various places that was the reason I didn't go for this approach in the start but now I see this option only or hardcoding the string directly in code which is not a good coding standard. Here is the updated code: https://bitbucket.org/jaya-sravani/integrated-genome-browser/branch/IGBF-3813 , I have tested all possible scenarios I can think of that might have an effect because of the changes and there are no issues. Please review and let me know if there are any issues.
            jsirigin Jaya Sravani Sirigineedi made changes -
            Status In Progress [ 3 ] Needs 1st Level Review [ 10005 ]
            jsirigin Jaya Sravani Sirigineedi made changes -
            Assignee Jaya Sravani Sirigineedi [ jsirigin ]
            nfreese Nowlan Freese made changes -
            Assignee Nowlan Freese [ nfreese ]
            Hide
            nfreese Nowlan Freese added a comment -

            Tested Sravani's branch on Mac.
            Able to build with tests.
            When there is no internet, I can see the error "UCSC Linkout URL isn't responding", but the build still succeeds (correct behavior).
            Linkouts work correctly and there are no errors in the logs.

            Jaya Sravani Sirigineedi - I'm wondering if the changes required to add the linkouts as a new data provider key may be over engineered? Everything is working correctly, I'm just wondering if we should just hardcode the linkout url and not worry about including it in any kind of prefs file for the time being.

            Show
            nfreese Nowlan Freese added a comment - Tested Sravani's branch on Mac. Able to build with tests. When there is no internet, I can see the error "UCSC Linkout URL isn't responding", but the build still succeeds (correct behavior). Linkouts work correctly and there are no errors in the logs. Jaya Sravani Sirigineedi - I'm wondering if the changes required to add the linkouts as a new data provider key may be over engineered? Everything is working correctly, I'm just wondering if we should just hardcode the linkout url and not worry about including it in any kind of prefs file for the time being.
            nfreese Nowlan Freese made changes -
            Assignee Nowlan Freese [ nfreese ] Jaya Sravani Sirigineedi [ jsirigin ]
            nfreese Nowlan Freese made changes -
            Status Needs 1st Level Review [ 10005 ] First Level Review in Progress [ 10301 ]
            nfreese Nowlan Freese made changes -
            Status First Level Review in Progress [ 10301 ] Ready for Pull Request [ 10304 ]
            Hide
            nfreese Nowlan Freese added a comment -

            After discussion with Sravani, we have decided to move forward with her implementation for the linkouts as this will make a potential migration of the igbdefaultprefs file easier in the future.

            Ready for pull request.

            Show
            nfreese Nowlan Freese added a comment - After discussion with Sravani, we have decided to move forward with her implementation for the linkouts as this will make a potential migration of the igbdefaultprefs file easier in the future. Ready for pull request.
            Hide
            jsirigin Jaya Sravani Sirigineedi added a comment -

            Found this issue while doing the final testing: https://jira.bioviz.org/browse/IGBF-3853. Will raise the pull request after fixing the issue.

            Show
            jsirigin Jaya Sravani Sirigineedi added a comment - Found this issue while doing the final testing: https://jira.bioviz.org/browse/IGBF-3853 . Will raise the pull request after fixing the issue.
            Hide
            jsirigin Jaya Sravani Sirigineedi added a comment -

            As discussed with Nowlan Freese, created a pull request: https://bitbucket.org/lorainelab/integrated-genome-browser/pull-requests/1029. The issue mentioned above is part of the Ensembl code which as discussed will not be included in the upcoming release.

            Show
            jsirigin Jaya Sravani Sirigineedi added a comment - As discussed with Nowlan Freese , created a pull request: https://bitbucket.org/lorainelab/integrated-genome-browser/pull-requests/1029 . The issue mentioned above is part of the Ensembl code which as discussed will not be included in the upcoming release.
            jsirigin Jaya Sravani Sirigineedi made changes -
            Status Ready for Pull Request [ 10304 ] Pull Request Submitted [ 10101 ]
            jsirigin Jaya Sravani Sirigineedi made changes -
            Assignee Jaya Sravani Sirigineedi [ jsirigin ]
            nfreese Nowlan Freese made changes -
            Assignee Ann Loraine [ aloraine ]
            ann.loraine Ann Loraine made changes -
            Sprint Summer 5, Summer 6 [ 199, 200 ] Summer 5, Summer 6, Summer 7 [ 199, 200, 201 ]
            ann.loraine Ann Loraine made changes -
            Rank Ranked higher
            Hide
            ann.loraine Ann Loraine added a comment - - edited

            PR is merged and new installers are deployed to bioviz.org "early access" section.

            Ready for testing.

            Show
            ann.loraine Ann Loraine added a comment - - edited PR is merged and new installers are deployed to bioviz.org "early access" section. Ready for testing.
            ann.loraine Ann Loraine made changes -
            Status Pull Request Submitted [ 10101 ] Reviewing Pull Request [ 10303 ]
            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 -
            Assignee Nowlan Freese [ nfreese ]
            nfreese Nowlan Freese made changes -
            Status Merged Needs Testing [ 10002 ] Post-merge Testing In Progress [ 10003 ]
            Hide
            nfreese Nowlan Freese added a comment - - edited

            Testing main branch installer on Mac.

            Jaya Sravani Sirigineedi - I noticed that in the Preferences > Data Sources window if I click the "i" icon for UCSC REST I do not see a linkoutUrl variable, but all of the other data sources (IGB Quickload) have a "primarylinkoutUrl". I'm not sure what the primarylinkoutUrl is doing, but it may be confusing that we now have two variables with the phrase linkout in them. Can you investigate the IGB codebase? If you don't think it will be an issue, then I think we can close this ticket.

            Note for myself, when testing I saw the below error. This will be handled in IGBF-3853.

            16:30:03.111 INFO  o.l.i.u.r.a.s.UCSCRestApiDataProvider - Initializing UCSC Rest Server https://api.genome.ucsc.edu/
            Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
            	at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:903)
            	at com.google.common.collect.ImmutableSet.construct(ImmutableSet.java:206)
            	at com.google.common.collect.ImmutableSet.copyOf(ImmutableSet.java:243)
            	at com.affymetrix.igb.view.load.GeneralLoadUtils.getLoadedSpeciesNames(GeneralLoadUtils.java:197)
            	at com.affymetrix.igb.view.load.GeneralLoadUtils.retrieveDataContainer(GeneralLoadUtils.java:172)
            	at com.affymetrix.igb.general.DataProviderManager.loadSupportedGenomeVersions(DataProviderManager.java:471)
            	at com.affymetrix.igb.general.DataProviderManager.initializeDataProvider(DataProviderManager.java:350)
            
            Show
            nfreese Nowlan Freese added a comment - - edited Testing main branch installer on Mac. Jaya Sravani Sirigineedi - I noticed that in the Preferences > Data Sources window if I click the "i" icon for UCSC REST I do not see a linkoutUrl variable, but all of the other data sources (IGB Quickload) have a "primarylinkoutUrl". I'm not sure what the primarylinkoutUrl is doing, but it may be confusing that we now have two variables with the phrase linkout in them. Can you investigate the IGB codebase? If you don't think it will be an issue, then I think we can close this ticket. Note for myself, when testing I saw the below error. This will be handled in IGBF-3853 . 16:30:03.111 INFO o.l.i.u.r.a.s.UCSCRestApiDataProvider - Initializing UCSC Rest Server https: //api.genome.ucsc.edu/ Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:903) at com.google.common.collect.ImmutableSet.construct(ImmutableSet.java:206) at com.google.common.collect.ImmutableSet.copyOf(ImmutableSet.java:243) at com.affymetrix.igb.view.load.GeneralLoadUtils.getLoadedSpeciesNames(GeneralLoadUtils.java:197) at com.affymetrix.igb.view.load.GeneralLoadUtils.retrieveDataContainer(GeneralLoadUtils.java:172) at com.affymetrix.igb.general.DataProviderManager.loadSupportedGenomeVersions(DataProviderManager.java:471) at com.affymetrix.igb.general.DataProviderManager.initializeDataProvider(DataProviderManager.java:350)
            nfreese Nowlan Freese made changes -
            Assignee Nowlan Freese [ nfreese ] Jaya Sravani Sirigineedi [ jsirigin ]
            Hide
            jsirigin Jaya Sravani Sirigineedi added a comment -

            The primaryLinkoutUrl is present for the Quickload Providers because Quickload implemented a method, getPrimaryLinkoutURl() from the DataProvider interface that is being used to display that as the other providers didn't implement it, that's not shown for them. In the code, they are just returning either mirrorUrl if it is used else the original URL, this may be used to find which URL is being used to retrieve data I guess (is it the original one or the mirrorUrl). Also, I see the URL that is being used for the datasets is named datasetLinkoutUrl and it's not being shown in the info section because it varies for each dataset inside a provider, as the URL that we are storing for the UCSC Rest is just the domain and not complete Url, I think it would be good to rename it to "datasetLinkoutDomainUrl" or something shorter like "datasetDomainUrl" and this won't be shown in the info section for the same reason. Nowlan Freese Please let me know your input on this.

            Show
            jsirigin Jaya Sravani Sirigineedi added a comment - The primaryLinkoutUrl is present for the Quickload Providers because Quickload implemented a method, getPrimaryLinkoutURl() from the DataProvider interface that is being used to display that as the other providers didn't implement it, that's not shown for them. In the code, they are just returning either mirrorUrl if it is used else the original URL, this may be used to find which URL is being used to retrieve data I guess (is it the original one or the mirrorUrl). Also, I see the URL that is being used for the datasets is named datasetLinkoutUrl and it's not being shown in the info section because it varies for each dataset inside a provider, as the URL that we are storing for the UCSC Rest is just the domain and not complete Url, I think it would be good to rename it to "datasetLinkoutDomainUrl" or something shorter like "datasetDomainUrl" and this won't be shown in the info section for the same reason. Nowlan Freese Please let me know your input on this.
            jsirigin Jaya Sravani Sirigineedi made changes -
            Story Points 1 3
            jsirigin Jaya Sravani Sirigineedi made changes -
            Assignee Jaya Sravani Sirigineedi [ jsirigin ] Nowlan Freese [ nfreese ]
            Hide
            nfreese Nowlan Freese added a comment -

            Jaya Sravani Sirigineedi - I think renaming it to "datasetLinkoutDomainUrl" works for me.

            Show
            nfreese Nowlan Freese added a comment - Jaya Sravani Sirigineedi - I think renaming it to "datasetLinkoutDomainUrl" works for me.
            nfreese Nowlan Freese made changes -
            Assignee Nowlan Freese [ nfreese ] Jaya Sravani Sirigineedi [ jsirigin ]
            nfreese Nowlan Freese made changes -
            Status Post-merge Testing In Progress [ 10003 ] To-Do [ 10305 ]
            Hide
            jsirigin Jaya Sravani Sirigineedi added a comment -

            Updated the code to rename the variable to "datasetLinkoutDomainUrl" and here is the branch: https://bitbucket.org/jaya-sravani/integrated-genome-browser/branch/IGBF-3813 Please review and let me know if there are any issues.

            Show
            jsirigin Jaya Sravani Sirigineedi added a comment - Updated the code to rename the variable to "datasetLinkoutDomainUrl" and here is the branch: https://bitbucket.org/jaya-sravani/integrated-genome-browser/branch/IGBF-3813 Please review and let me know if there are any issues.
            jsirigin Jaya Sravani Sirigineedi made changes -
            Status To-Do [ 10305 ] In Progress [ 3 ]
            jsirigin Jaya Sravani Sirigineedi made changes -
            Assignee Jaya Sravani Sirigineedi [ jsirigin ] Nowlan Freese [ nfreese ]
            jsirigin Jaya Sravani Sirigineedi made changes -
            Status In Progress [ 3 ] Needs 1st Level Review [ 10005 ]
            nfreese Nowlan Freese made changes -
            Status Needs 1st Level Review [ 10005 ] First Level Review in Progress [ 10301 ]
            Hide
            nfreese Nowlan Freese added a comment -

            Tested Sravani's branch on Mac.

            Linkouts were working correctly, and as far as I could find all of the code was renamed.

            Ready for pull request.

            Show
            nfreese Nowlan Freese added a comment - Tested Sravani's branch on Mac. Linkouts were working correctly, and as far as I could find all of the code was renamed. Ready for pull request.
            nfreese Nowlan Freese made changes -
            Status First Level Review in Progress [ 10301 ] Ready for Pull Request [ 10304 ]
            nfreese Nowlan Freese made changes -
            Assignee Nowlan Freese [ nfreese ] Jaya Sravani Sirigineedi [ jsirigin ]
            Show
            jsirigin Jaya Sravani Sirigineedi added a comment - Here is the Pull request: https://bitbucket.org/lorainelab/integrated-genome-browser/pull-requests/1030
            jsirigin Jaya Sravani Sirigineedi made changes -
            Status Ready for Pull Request [ 10304 ] Pull Request Submitted [ 10101 ]
            jsirigin Jaya Sravani Sirigineedi made changes -
            Assignee Jaya Sravani Sirigineedi [ jsirigin ]
            ann.loraine Ann Loraine made changes -
            Status Pull Request Submitted [ 10101 ] Reviewing Pull Request [ 10303 ]
            ann.loraine Ann Loraine made changes -
            Status Reviewing Pull Request [ 10303 ] Merged Needs Testing [ 10002 ]
            Hide
            ann.loraine Ann Loraine added a comment -

            PR is merged and new installers deployed to bioviz.org. Ready for testing.

            Show
            ann.loraine Ann Loraine added a comment - PR is merged and new installers deployed to bioviz.org. Ready for testing.
            nfreese Nowlan Freese made changes -
            Status Merged Needs Testing [ 10002 ] Post-merge Testing In Progress [ 10003 ]
            Hide
            nfreese Nowlan Freese added a comment -

            Tested with main branch installer on Mac.

            Link outs to UCSC REST are working, no issues in log.

            Closing ticket.

            Show
            nfreese Nowlan Freese added a comment - Tested with main branch installer on Mac. Link outs to UCSC REST are working, no issues in log. Closing ticket.
            nfreese Nowlan Freese made changes -
            Assignee Jaya Sravani Sirigineedi [ jsirigin ]
            nfreese Nowlan Freese made changes -
            Status Post-merge Testing In Progress [ 10003 ] Merged Needs Testing [ 10002 ]
            nfreese Nowlan Freese made changes -
            Status Merged Needs Testing [ 10002 ] Post-merge Testing In Progress [ 10003 ]
            nfreese Nowlan Freese made changes -
            Resolution Done [ 10000 ]
            Status Post-merge Testing In Progress [ 10003 ] Closed [ 6 ]
            nfreese Nowlan Freese made changes -
            Fix Version/s 10.1.0 [ 11000 ]

              People

              • Assignee:
                jsirigin Jaya Sravani Sirigineedi
                Reporter:
                jsirigin Jaya Sravani Sirigineedi
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: