SEVERE: Failed Loading plugin Jenkins Selenium Plugin v3.7.2-SNAPSHOT (private-847941f7-nenashev) (selenium)
      java.io.IOException: Failed to initialize
      	at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:531)
      	at hudson.PluginManager$2$1$1.run(PluginManager.java:515)
      	at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:169)
      	at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282)
      	at jenkins.model.Jenkins$5.runTask(Jenkins.java:1063)
      	at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:210)
      	at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at java.lang.Thread.run(Thread.java:745)
      Caused by: java.io.IOException: Unable to read /Users/nenashev/Documents/jenkins/plugins/selenium-plugin/work/selenium.xml
      	at hudson.XmlFile.unmarshal(XmlFile.java:182)
      	at hudson.XmlFile.unmarshal(XmlFile.java:162)
      	at hudson.Plugin.load(Plugin.java:264)
      	at hudson.plugins.selenium.PluginImpl.start(PluginImpl.java:143)
      	at hudson.ClassicPluginStrategy.startPlugin(ClassicPluginStrategy.java:539)
      	at hudson.ClassicPluginStrategy.load(ClassicPluginStrategy.java:528)
      	... 9 more
      Caused by: com.thoughtworks.xstream.converters.ConversionException: null : null
      ---- Debugging information ----
      cause-exception     : java.lang.NullPointerException
      cause-message       : null
      class               : hudson.plugins.selenium.PluginImpl
      required-type       : hudson.plugins.selenium.PluginImpl
      converter-type      : hudson.util.RobustReflectionConverter
      path                : /hudson.plugins.selenium.PluginImpl
      line number         : 31
      version             : not available
      -------------------------------
      	at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:79)
      	at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65)
      	at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66)
      	at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50)
      	at com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:134)
      	at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:32)
      	at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1189)
      	at hudson.util.XStream2.unmarshal(XStream2.java:147)
      	at hudson.util.XStream2.unmarshal(XStream2.java:118)
      	at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1173)
      	at hudson.XmlFile.unmarshal(XmlFile.java:179)
      	... 14 more
      Caused by: java.lang.NullPointerException
      	at hudson.diagnosis.OldDataMonitor.report(OldDataMonitor.java:220)
      	at hudson.util.RobustReflectionConverter.doUnmarshal(RobustReflectionConverter.java:371)
      	at hudson.util.RobustReflectionConverter.unmarshal(RobustReflectionConverter.java:270)
      	at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72)
      	... 24 more
      
      Jan 17, 2018 1:44:03 PM jenkins.InitReactorRunner$1 onAttained
      INFO: Prepared all plugins
      Jan 17, 2018 1:44:03 PM jenkins.InitReactorRunner$1 onAttained
      INFO: Started all plugins
      Jan 17, 2018 1:44:03 PM jenkins.InitReactorRunner$1 onAttained
      
      

          [JENKINS-48985] NPE in OldDataMonitor when reading selenium.xml

          Björn Pedersen created issue -

          Oleg Nenashev added a comment -

          mobrockers Could you please provide /extra/jenkins/selenium.xml from your instance?

          Oleg Nenashev added a comment - mobrockers Could you please provide /extra/jenkins/selenium.xml from your instance?

          I no longer run a Jenkins instance with this plugin so I cannot provide the file from my instance.

          Rouke Broersma added a comment - I no longer run a Jenkins instance with this plugin so I cannot provide the file from my instance.

          Oleg Nenashev added a comment -

          mobrockers sorry, my intention was to ask pedersen who reported the issue

          Oleg Nenashev added a comment - mobrockers sorry, my intention was to ask pedersen who reported the issue

          Oleg Nenashev added a comment -

          mobrockers BTW, you are listed as a plugin lead in JIRA. Just in case we need a fix for this issue (needs to be confirmed first), would you be able to spin the release?

          Oleg Nenashev added a comment - mobrockers BTW, you are listed as a plugin lead in JIRA. Just in case we need a fix for this issue (needs to be confirmed first), would you be able to spin the release?
          Björn Pedersen made changes -
          Attachment New: selenium.xml [ 41146 ]

          Just added the selenium.xml file

          Björn Pedersen added a comment - Just added the selenium.xml file

          Rouke Broersma added a comment - - edited

          oleg_nenashev I can spin a release yes. I am a bit rusty on plugin config stuff but I think any @Exported thing can cause this problem right? In the plugin sources I found the following exotic exports that were not simple string, int, bool values. A number of them I think will probably save as string anyway because of transitive Exports further down in the object (unless that does not happen by default, like I said, rusty) but maybe this list can help you narrow down if it's caused by JEP-200:

           

          @Exported
          public Map<String, String> getCapabilities() {
          return capabilities;
          }
          
          @Exported
          public List<SeleniumBrowser> getBrowsers() {
          return browsers;
          }
          
          @Exported
          public SeleniumConfigurationMatcher getMatcher() {
          return matcher;
          }
          
          @Exported
          public List<WebDriverBrowser> getBrowsers() {
          return browsers;
          }
          
          @Exported
          public HostnameResolver getHostnameResolver() {
          return hostnameResolver;
          }
          
          @Exported( inline = true )
          public Collection<SeleniumTestSlotGroup> getRemoteControls() throws IOException, InterruptedException {
          
          @Exported
          public List<SeleniumGlobalConfiguration> getGlobalConfigurations() {
          return configurations;
          }
          

          Rouke Broersma added a comment - - edited oleg_nenashev  I can spin a release yes. I am a bit rusty on plugin config stuff but I think any @Exported thing can cause this problem right? In the plugin sources I found the following exotic exports that were not simple string, int, bool values. A number of them I think will probably save as string anyway because of transitive Exports further down in the object (unless that does not happen by default, like I said, rusty) but maybe this list can help you narrow down if it's caused by JEP-200:   @Exported public Map< String , String > getCapabilities() { return capabilities; } @Exported public List<SeleniumBrowser> getBrowsers() { return browsers; } @Exported public SeleniumConfigurationMatcher getMatcher() { return matcher; } @Exported public List<WebDriverBrowser> getBrowsers() { return browsers; } @Exported public HostnameResolver getHostnameResolver() { return hostnameResolver; } @Exported( inline = true ) public Collection<SeleniumTestSlotGroup> getRemoteControls() throws IOException, InterruptedException { @Exported public List<SeleniumGlobalConfiguration> getGlobalConfigurations() { return configurations; }

          Oleg Nenashev added a comment -

          OK, it seems that the plugin fails to convert a valid structure due to whatever reason

          Caused: com.thoughtworks.xstream.converters.ConversionException: null : null ---- Debugging information ---- cause-exception : java.lang.NullPointerException cause-message : null class : hudson.plugins.selenium.PluginImpl required-type : hudson.plugins.selenium.PluginImpl converter-type : hudson.util.RobustReflectionConverter path : /hudson.plugins.selenium.PluginImpl line number : 31 version : not available ------------------------------- at
          

          Whatever happens, it definitely looks like a bug in the Jenkins core.
          It fails because Old Data Monitor is null at the timeframe of data migration.

          I will try to reproduce it once I have progress on JENKINS-48983

          Oleg Nenashev added a comment - OK, it seems that the plugin fails to convert a valid structure due to whatever reason Caused: com.thoughtworks.xstream.converters.ConversionException: null : null ---- Debugging information ---- cause-exception : java.lang.NullPointerException cause-message : null class : hudson.plugins.selenium.PluginImpl required-type : hudson.plugins.selenium.PluginImpl converter-type : hudson.util.RobustReflectionConverter path : /hudson.plugins.selenium.PluginImpl line number : 31 version : not available ------------------------------- at Whatever happens, it definitely looks like a bug in the Jenkins core. It fails because Old Data Monitor is null at the timeframe of data migration. I will try to reproduce it once I have progress on JENKINS-48983
          Oleg Nenashev made changes -
          Component/s New: core [ 15593 ]

            oleg_nenashev Oleg Nenashev
            pedersen Björn Pedersen
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated: