Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-24458

<SomeAction> doesn't have @ExportedBean so cannot write hudson.model.Actionable.actions

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • core

      These exceptions are being written to the log file every 5 seconds and thus result in a very large log file. The only work around is to run logrotate every hour, but I still get extremely large log files.

      Aug 27, 2014 8:49:10 AM org.kohsuke.stapler.export.Property writeValue
      WARNING: null
      org.kohsuke.stapler.export.NotExportableException: class org.jenkinsci.plugins.readonly.JobConfiguration doesn't have @ExportedBean so cannot write hudson.model.Actionable.actions
      at org.kohsuke.stapler.export.Model.<init>(Model.java:73)
      at org.kohsuke.stapler.export.ModelBuilder.get(ModelBuilder.java:51)
      at org.kohsuke.stapler.export.Property.writeValue(Property.java:231)
      at org.kohsuke.stapler.export.Property.writeValue(Property.java:187)
      at org.kohsuke.stapler.export.Property.writeValue(Property.java:139)
      at org.kohsuke.stapler.export.Property.writeTo(Property.java:116)
      at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:190)
      at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:185)
      at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:185)
      at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:185)
      at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:185)
      at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:185)
      at org.kohsuke.stapler.export.Model.writeTo(Model.java:157)
      at org.kohsuke.stapler.ResponseImpl.serveExposedBean(ResponseImpl.java:267)
      at hudson.model.Api.doXml(Api.java:98)
      at sun.reflect.GeneratedMethodAccessor193.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:606)
      at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:298)
      at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:161)
      at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:96)
      at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:120)
      at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:728)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:858)
      at org.kohsuke.stapler.MetaClass$4.doDispatch(MetaClass.java:210)
      at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:728)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:858)
      at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:248)
      at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:728)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:858)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:631)
      at org.kohsuke.stapler.Stapler.service(Stapler.java:225)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
      at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:686)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1494)
      at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:96)
      at hudson.plugins.greenballs.GreenBallFilter.doFilter(GreenBallFilter.java:58)
      at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:99)
      at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
      at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      at jenkins.security.BasicHeaderProcessor.success(BasicHeaderProcessor.java:95)
      at jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:75)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
      at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
      at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:46)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1474)
      at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:499)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
      at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:533)
      at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
      at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)
      at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)
      at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
      at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
      at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
      at org.eclipse.jetty.server.Server.handle(Server.java:370)
      at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
      at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:949)
      at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:1011)
      at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:644)
      at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
      at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
      at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668)
      at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
      at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      at java.lang.Thread.run(Thread.java:744)

          [JENKINS-24458] <SomeAction> doesn't have @ExportedBean so cannot write hudson.model.Actionable.actions

          Craig Phillips created issue -

          Daniel Beck added a comment -

          Not a Jenkins core defect. Everything seems to work as intended.

          Suggestions:

          • File an issue against read-only-configuration that it needs to support being exposed on the Jenkins API
          • Disable and/or uninstall the plugin, and use Extended Read Permission instead
          • Find out who/what does API calls every five seconds (a script you're running or a Jenkins plugin that gathers its data that way, and stop whatever it is (kill the script, disable the plugin, ...).

          Daniel Beck added a comment - Not a Jenkins core defect. Everything seems to work as intended. Suggestions: File an issue against read-only-configuration that it needs to support being exposed on the Jenkins API Disable and/or uninstall the plugin, and use Extended Read Permission instead Find out who/what does API calls every five seconds (a script you're running or a Jenkins plugin that gathers its data that way, and stop whatever it is (kill the script, disable the plugin, ...).
          Daniel Beck made changes -
          Resolution New: Not A Defect [ 7 ]
          Status Original: Open [ 1 ] New: Resolved [ 5 ]

          It's not just this plugin. It's all of them. And it seems to be related to when Jenkins is sent an ALRM signal. After that, you see these exceptions. Here is another example:

          org.kohsuke.stapler.export.NotExportableException: class org.jenkinsci.plugins.schedulebuild.ScheduleBuildAction doesn't have @ExportedBean so cannot write hudson.model.Actionable.actions

          Craig Phillips added a comment - It's not just this plugin. It's all of them. And it seems to be related to when Jenkins is sent an ALRM signal. After that, you see these exceptions. Here is another example: org.kohsuke.stapler.export.NotExportableException: class org.jenkinsci.plugins.schedulebuild.ScheduleBuildAction doesn't have @ExportedBean so cannot write hudson.model.Actionable.actions

          And this one

          org.kohsuke.stapler.export.NotExportableException: class hudson.plugins.depgraph_view.DependencyGraphProjectActionFactory$DependencyGraphProjectAction doesn't have @ExportedBean so cannot write hudson.model.Actionable.actions

          and this one

          org.kohsuke.stapler.export.NotExportableException: class com.sonyericsson.jenkins.plugins.bfa.graphs.ProjectGraphAction doesn't have @ExportedBean so cannot write hudson.model.Actionable.actions

          and so on...

          Craig Phillips added a comment - And this one org.kohsuke.stapler.export.NotExportableException: class hudson.plugins.depgraph_view.DependencyGraphProjectActionFactory$DependencyGraphProjectAction doesn't have @ExportedBean so cannot write hudson.model.Actionable.actions and this one org.kohsuke.stapler.export.NotExportableException: class com.sonyericsson.jenkins.plugins.bfa.graphs.ProjectGraphAction doesn't have @ExportedBean so cannot write hudson.model.Actionable.actions and so on...

          The ALRM signal is sent during log rotation to get Jenkins to reopen the log file. After this, Jenkins gets into a mess and just churns out these log entries. As I say, seemed to be fine prior to 1.577.

          Craig Phillips added a comment - The ALRM signal is sent during log rotation to get Jenkins to reopen the log file. After this, Jenkins gets into a mess and just churns out these log entries. As I say, seemed to be fine prior to 1.577.

          As per my previous comments. It's not related to any single plugin.

          Craig Phillips added a comment - As per my previous comments. It's not related to any single plugin.
          Craig Phillips made changes -
          Resolution Original: Not A Defect [ 7 ]
          Status Original: Resolved [ 5 ] New: Reopened [ 4 ]

          Actually, it is unrelated to the ALRM signal. It's just all the time. I quieted down Jenkins and restarted the process and straight away the log file is 9.6 MB within a few seconds. I have tried setting the log level to 1, but I am still seeing INFO messages too. How can I disable logging until this is fixed?

          Craig Phillips added a comment - Actually, it is unrelated to the ALRM signal. It's just all the time. I quieted down Jenkins and restarted the process and straight away the log file is 9.6 MB within a few seconds. I have tried setting the log level to 1, but I am still seeing INFO messages too. How can I disable logging until this is fixed?

          Just as an idea of how quickly the log is growing:

          [root@d-buildmaster-01 ~]# ls -lh /var/log/jenkins/jenkins.log
          rw-rr- 1 kcc users 9.6M Aug 27 12:10 /var/log/jenkins/jenkins.log

          [root@d-buildmaster-01 ~]# ls -lh /var/log/jenkins/jenkins.log
          rw-rr- 1 kcc users 44M Aug 27 12:11 /var/log/jenkins/jenkins.log

          Craig Phillips added a comment - Just as an idea of how quickly the log is growing: [root@d-buildmaster-01 ~] # ls -lh /var/log/jenkins/jenkins.log rw-r r - 1 kcc users 9.6M Aug 27 12:10 /var/log/jenkins/jenkins.log [root@d-buildmaster-01 ~] # ls -lh /var/log/jenkins/jenkins.log rw-r r - 1 kcc users 44M Aug 27 12:11 /var/log/jenkins/jenkins.log

            jglick Jesse Glick
            iwonbigbro Craig Phillips
            Votes:
            4 Vote for this issue
            Watchers:
            18 Start watching this issue

              Created:
              Updated:
              Resolved: