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

Session replication chokes on BoundObjectTable$Table, breaking UI

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: Blocker Blocker
    • core
    • CentOS linux x86_64 firefox 3.6.15

      after upggrading from Hudson 1.395 to Jenkins 1.403 and installing the msbuild and VCviewer plugins, the add build step button no longer works. Doesn't add a shell window to the web UI, no matter what I do.

      Last known successful action was to delete a step, first unsuccessful action was to add an msbuild step.

      there are no Java console errors or warnings, and nothing in the logs to suggest anything wrong.

          [JENKINS-9142] Session replication chokes on BoundObjectTable$Table, breaking UI

          jlin added a comment -

          We also got this error when we upgraded from Hudson 1.372 to Jenkins 1.403 on a Ubuntu box. We had several Hudson servers that we upgraded, and only one had this issue.

          jlin added a comment - We also got this error when we upgraded from Hudson 1.372 to Jenkins 1.403 on a Ubuntu box. We had several Hudson servers that we upgraded, and only one had this issue.

          Got this error when upgrading from 1.398 to 1.403

          Ronny Løvtangen added a comment - Got this error when upgrading from 1.398 to 1.403

          Ethan Wilder added a comment -

          I think this is just a Jenkins 1.403 bug.

          I upgraded from 1.398 to 1.403 and have this problem.

          Ethan Wilder added a comment - I think this is just a Jenkins 1.403 bug. I upgraded from 1.398 to 1.403 and have this problem.

          jlin added a comment -

          For anyone who is experiencing this problem, I have found a temporary workaround. First create a new job with the new Jenkins, then add a build step in the new job. After that, you should be able to add build steps to any existing jobs that wouldn't have worked before.

          Using Chrome's developer tool or Firefox's Firebug extension, we get this error when adding a build step:
          POST http://<HOST>/$stapler/bound/43328235-2ba7-416b-bda7-66b3834cc54c/render 404 (Not Found)

          jlin added a comment - For anyone who is experiencing this problem, I have found a temporary workaround. First create a new job with the new Jenkins, then add a build step in the new job. After that, you should be able to add build steps to any existing jobs that wouldn't have worked before. Using Chrome's developer tool or Firefox's Firebug extension, we get this error when adding a build step: POST http://<HOST>/$stapler/bound/43328235-2ba7-416b-bda7-66b3834cc54c/render 404 (Not Found)

          I had the same problem with the Jenkins ver. 1.408
          but it occurred as not Jenkins but browser issue - it did not work in Firefox 3.6.15, but it works as normal in Opera 11.10, in Firefox 4.0, and in Chrome 10.0.648.205

          Dmitry Bolshakov added a comment - I had the same problem with the Jenkins ver. 1.408 but it occurred as not Jenkins but browser issue - it did not work in Firefox 3.6.15, but it works as normal in Opera 11.10, in Firefox 4.0, and in Chrome 10.0.648.205

          Robert Ramsay added a comment -

          I was having this issue on Ubuntu 10.10 and Jenkins 1.413. The problem was that "Prevent Cross Site Request Forgery exploits" was checked. After deactivating that, I no longer had the issue.

          Robert Ramsay added a comment - I was having this issue on Ubuntu 10.10 and Jenkins 1.413. The problem was that "Prevent Cross Site Request Forgery exploits" was checked. After deactivating that, I no longer had the issue.

          jlin added a comment -

          For ours, the "Prevent Cross Site Request Forgery exploits" was never checked.

          jlin added a comment - For ours, the "Prevent Cross Site Request Forgery exploits" was never checked.

          I see the problem on Jenkins 1.421
          "Prevent Cross Site Request Forgery Exploits" was never checked. The malfunctioniing "Add Buidl Step" button occurs on both IE 8.07600 and Firefox 3.6.18. The work around of creating a new job and adding a build step did not work for me as the "Add build step" remains broken in the new job.

          Scott MacDonald added a comment - I see the problem on Jenkins 1.421 "Prevent Cross Site Request Forgery Exploits" was never checked. The malfunctioniing "Add Buidl Step" button occurs on both IE 8.07600 and Firefox 3.6.18. The work around of creating a new job and adding a build step did not work for me as the "Add build step" remains broken in the new job.

          Since this bug effectively disbales new developement and test functions, I bumped the priority to "blocker" as defined in Bug tracker bug entry screen.

          Scott MacDonald added a comment - Since this bug effectively disbales new developement and test functions, I bumped the priority to "blocker" as defined in Bug tracker bug entry screen.

          Just another data point...

          I upgrade my laptop test system running Win7 to 1.421 and I do not see the broken "Add Build Step: behavior

          Our production system is 1.421 on Red hat where I do see the broken "Add Build Step" behavior.

          Scott MacDonald added a comment - Just another data point... I upgrade my laptop test system running Win7 to 1.421 and I do not see the broken "Add Build Step: behavior Our production system is 1.421 on Red hat where I do see the broken "Add Build Step" behavior.

          And another data point...

          This issue is broader than just hudson to jenkins upgrades. I never installed/nor upgraded from hudson.

          Scott MacDonald added a comment - And another data point... This issue is broader than just hudson to jenkins upgrades. I never installed/nor upgraded from hudson.

          Changed bug description to reflect that this issue is broader than just the (frequent) cases of hudson to jenkins upgrades.

          Scott MacDonald added a comment - Changed bug description to reflect that this issue is broader than just the (frequent) cases of hudson to jenkins upgrades.

          b w added a comment -

          Also seeing this on a fresh installation on Ubuntu 11.04 with Chrome 13 on Mac.

          I switched it to Firefox 3.6 on Mac, the problem is gone... Would really like to see this to be fixed.

          b w added a comment - Also seeing this on a fresh installation on Ubuntu 11.04 with Chrome 13 on Mac. I switched it to Firefox 3.6 on Mac, the problem is gone... Would really like to see this to be fixed.

          I hate this bug. I haven't been able to zone in on an exact, repeatable, set of steps, but if you configure the job,( i.e click a few things, save and return to the job), the button sometimes, temporarily works again.

          One you find that black magic to get the button temporarily working again, add tons of steps (cuz you can always delete them), and now you can simply use that saved job as a template for all your multi build step jobs.

          I hate this bug.

          Scott MacDonald added a comment - I hate this bug. I haven't been able to zone in on an exact, repeatable, set of steps, but if you configure the job,( i.e click a few things, save and return to the job), the button sometimes, temporarily works again. One you find that black magic to get the button temporarily working again, add tons of steps (cuz you can always delete them), and now you can simply use that saved job as a template for all your multi build step jobs. I hate this bug.

          bap added a comment -

          I suspect this is being caused by a badly behaved plugin (otherwise many more people would have reported it).

          Can you please download a fresh Jenkins, try it out, and then keep adding the plugins that you have installed in your problem installation, one by one, to identify which plugin is breaking the button?

          bap added a comment - I suspect this is being caused by a badly behaved plugin (otherwise many more people would have reported it). Can you please download a fresh Jenkins, try it out, and then keep adding the plugins that you have installed in your problem installation, one by one, to identify which plugin is breaking the button?

          Hey there, I was working on another issue here in Jenkins JIRA and decided try some other issues while my code was compiling and testing.

          Unfortunately I couldn't reproduce this issue . Here's what I did:

          • Downloaded Hudson 1.398 and Jenkins 1.403
          • Exported HUDSON_HOME to some directory in my personal folder
          • Started Hudson 1.398 with java -jar ...
          • Checked the "Prevent Cross Site Request Forgery exploits" check box
          • Created a new Free Style build
          • Added a Shell build step to print to console some random message
          • Stopped Hudson and started Jenkins 1.403 using the same workspace
          • Verified that "Prevent Cross Site Request Forgery exploits" was still marked and that the update center was pointing to jenkins instead of hudson
          • Executed the job without problems
          • Added a new build step to print another message, ok
          • Installed MSBuild plug-in
          • Added as build step to execute MSBuild. The configuration was saved and I could remove this build step later and the job configuration was still ok

          Here are my System Properties: http://pastebin.com/LTB0hL0B

          And some extra information:
          Firefox 5.0
          Chrome 13.0.782.107
          Ubuntu 11.04

          Sorry if I couldn't be of more help here. Perhaps if the users who are able to reproduce this issue posted more information about their environments somebody could isolate the problem.

          Cheers, good night!
          Bruno

          Bruno P. Kinoshita added a comment - Hey there, I was working on another issue here in Jenkins JIRA and decided try some other issues while my code was compiling and testing. Unfortunately I couldn't reproduce this issue . Here's what I did: Downloaded Hudson 1.398 and Jenkins 1.403 Exported HUDSON_HOME to some directory in my personal folder Started Hudson 1.398 with java -jar ... Checked the "Prevent Cross Site Request Forgery exploits" check box Created a new Free Style build Added a Shell build step to print to console some random message Stopped Hudson and started Jenkins 1.403 using the same workspace Verified that "Prevent Cross Site Request Forgery exploits" was still marked and that the update center was pointing to jenkins instead of hudson Executed the job without problems Added a new build step to print another message, ok Installed MSBuild plug-in Added as build step to execute MSBuild. The configuration was saved and I could remove this build step later and the job configuration was still ok Here are my System Properties: http://pastebin.com/LTB0hL0B And some extra information: Firefox 5.0 Chrome 13.0.782.107 Ubuntu 11.04 Sorry if I couldn't be of more help here. Perhaps if the users who are able to reproduce this issue posted more information about their environments somebody could isolate the problem. Cheers, good night! Bruno

          eben cheung added a comment -

          We also got this error

          • Server's ENV *
            Jenkins (1.428) standalone /Jenkins (1.423) standalone
            hudson.lifecycle hudson.lifecycle.WindowsServiceLifecycle
            java.runtime.version 1.6.0_26-b03
            java.version 1.6.0_26
            java.vm.version 20.1-b02
            os.arch x86
            os.name Windows XP
            os.version 5.1
            sun.os.patch.level Service Pack 3

          eben cheung added a comment - We also got this error on firefox 6.0.1, it's ok: * POST http://HOST:8080/$stapler/bound/eb0bd019-f203-4471-93b1-a972c8c8a82e/render [HTTP/1.1 200 OK 94ms] on Chrome 5.0.396.0, it's NOT OK : * Request URL: http://HOST:8080/$stapler/bound/9dab85e8-9b1c-46d8-9ad5-c8ea59c690ed/render Status Code:404 Not Found on Chrome 14.0.835.126 beta-m, it's NOT OK * http://HOST:8080/$stapler/bound/cf4bf2ca-1cad-4a90-a68f-c144d5dbc104/render 404 (Not Found) render Server's ENV * Jenkins (1.428) standalone /Jenkins (1.423) standalone hudson.lifecycle hudson.lifecycle.WindowsServiceLifecycle java.runtime.version 1.6.0_26-b03 java.version 1.6.0_26 java.vm.version 20.1-b02 os.arch x86 os.name Windows XP os.version 5.1 sun.os.patch.level Service Pack 3

          eben cheung added a comment -

          This will happen when more than 22 elements(>22, >=23) added to conf_spec, with using of clearcase plugin.

          eben cheung added a comment - This will happen when more than 22 elements(>22, >=23) added to conf_spec, with using of clearcase plugin.

          eben cheung added a comment -

          This will happen when more than 22 elements(>22, >=23) added to conf_spec, with using of clearcase plugin.

          eben cheung added a comment - This will happen when more than 22 elements(>22, >=23) added to conf_spec, with using of clearcase plugin.

          I've experienced the same problem independently of the "Prevent Cross Site Request Forgery exploits" settings.

          It works now. In my settings the bug was in an intermediate HTTP proxy. It was encoding the URL path: replacing the '$' of '/$stapler' by '%24'.

          Shouldn't Jenkins handle that encoding ?

          • Client: Firefox 11 or Chromium 17.
          • Server: Debian testing.

          Grégoire Henry added a comment - I've experienced the same problem independently of the "Prevent Cross Site Request Forgery exploits" settings. It works now. In my settings the bug was in an intermediate HTTP proxy. It was encoding the URL path: replacing the '$' of '/$stapler' by '%24'. Shouldn't Jenkins handle that encoding ? Client: Firefox 11 or Chromium 17. Server: Debian testing.

          Doesn't look like a clearcase plugin issue since it seems to happen with a random set of plugins.

          Vincent Latombe added a comment - Doesn't look like a clearcase plugin issue since it seems to happen with a random set of plugins.

          Wade Williams added a comment -

          Experienced this problem too on Jenkins ver. 1.462, on Ubuntu 12.04.

          Turning off Prevent Cross Site Request Forgery exploits resolved the issue for me.

          Wade Williams added a comment - Experienced this problem too on Jenkins ver. 1.462, on Ubuntu 12.04. Turning off Prevent Cross Site Request Forgery exploits resolved the issue for me.

          The URL in question "$stapler/bound/GUID/" is used for lazy rendering of fragments. These IDs are session local, transient during a life of an instance. So it is unlikely that how $JENKINS_HOME came into being (whether it was an upgrade or a fresh install) is related to the bug.

          I noticed that those transient objects are held via WeakReference. I wonder if people seeing those issues are under strong memory pressure, and those weak references are getting released before they are actually used?

          Could someone check my hypothesis by bumping up the heap size? I'll add some logging so that we can verify this.

          Kohsuke Kawaguchi added a comment - The URL in question "$stapler/bound/GUID/" is used for lazy rendering of fragments. These IDs are session local, transient during a life of an instance. So it is unlikely that how $JENKINS_HOME came into being (whether it was an upgrade or a fresh install) is related to the bug. I noticed that those transient objects are held via WeakReference . I wonder if people seeing those issues are under strong memory pressure, and those weak references are getting released before they are actually used? Could someone check my hypothesis by bumping up the heap size? I'll add some logging so that we can verify this.

          In 1.467 I put the probe code that provides optional logging.

          To enable this optional logging, first execute the following code in Groovy console. This enables this debug logging feature:

          org.kohsuke.stapler.bind.BoundObjectTable.DEBUG_LOGGING=true;

          Then, from type http://localhost:8080/$stapler/bound/table/enableLogging in the address bar. If this page reports back that the logging is enabled, your HTTP session and object binding activity is now logged to the server console.

          You can then visit the configuration page, etc.

          When you notice that that "add build step" (or some other similar activities that loads additional HTTP fragments) aren't working, check the developer tool to look up the GUID of the bound object that's causing the issue. Then search that GUID in the server log to see if BoundObjectTable reports anything about that GUID.

          Thank you for your cooperation in the data gathering process. Your input would help us understand the root cause better.

          Kohsuke Kawaguchi added a comment - In 1.467 I put the probe code that provides optional logging. To enable this optional logging, first execute the following code in Groovy console. This enables this debug logging feature: org.kohsuke.stapler.bind.BoundObjectTable.DEBUG_LOGGING=true; Then, from type http://localhost:8080/$stapler/bound/table/enableLogging in the address bar. If this page reports back that the logging is enabled, your HTTP session and object binding activity is now logged to the server console. You can then visit the configuration page, etc. When you notice that that "add build step" (or some other similar activities that loads additional HTTP fragments) aren't working, check the developer tool to look up the GUID of the bound object that's causing the issue. Then search that GUID in the server log to see if BoundObjectTable reports anything about that GUID. Thank you for your cooperation in the data gathering process. Your input would help us understand the root cause better.

          Code changed in jenkins
          User: Kohsuke Kawaguchi
          Path:
          core/pom.xml
          http://jenkins-ci.org/commit/jenkins/0f03a70c9c939db14adfd7a3ad29cd08fa566e07
          Log:
          JENKINS-9142 added probe.

          Integrated a new version of Stapler that provides debug logging for the
          problem. See the ticket for more details of how to enable this probe.

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Kohsuke Kawaguchi Path: core/pom.xml http://jenkins-ci.org/commit/jenkins/0f03a70c9c939db14adfd7a3ad29cd08fa566e07 Log: JENKINS-9142 added probe. Integrated a new version of Stapler that provides debug logging for the problem. See the ticket for more details of how to enable this probe.

          dogfood added a comment -

          Integrated in jenkins_ui-changes_branch #30
          JENKINS-9142 added probe. (Revision 0f03a70c9c939db14adfd7a3ad29cd08fa566e07)

          Result = SUCCESS
          Kohsuke Kawaguchi : 0f03a70c9c939db14adfd7a3ad29cd08fa566e07
          Files :

          • core/pom.xml

          dogfood added a comment - Integrated in jenkins_ui-changes_branch #30 JENKINS-9142 added probe. (Revision 0f03a70c9c939db14adfd7a3ad29cd08fa566e07) Result = SUCCESS Kohsuke Kawaguchi : 0f03a70c9c939db14adfd7a3ad29cd08fa566e07 Files : core/pom.xml

          Will Buck added a comment -

          I'm afraid I'm having this issue and having trouble following your instructions for diagnosis, Kohsuke. I was able to download and install the newest WAR (1.470), download the CLI and run groovysh, successfully set the debug property to true, hit that enableLogging URL successfully, but now I'm confused as to where I should be seeing the logging.

          I would love to help data-gathering to resolve this issue (as its a blocker for me at the moment), could someone direct me towards where I can see the logs?

          Thanks very much!

          Will Buck added a comment - I'm afraid I'm having this issue and having trouble following your instructions for diagnosis, Kohsuke. I was able to download and install the newest WAR (1.470), download the CLI and run groovysh, successfully set the debug property to true, hit that enableLogging URL successfully, but now I'm confused as to where I should be seeing the logging. I would love to help data-gathering to resolve this issue (as its a blocker for me at the moment), could someone direct me towards where I can see the logs? Thanks very much!

          WillBuck and I were able to find the console, Here is what we saw in our logs:

          18-Jun-2012 16:56:52.913 FINE org.acegisecurity.context.HttpSessionContextIntegrationFilter.readSecurityContextFromSession No HttpSession currently exists
          18-Jun-2012 16:56:52.913 FINE org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter New SecurityContext instance will be associated with SecurityContextHolder
          18-Jun-2012 16:56:52.913 FINE org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter Authorization header: null
          18-Jun-2012 16:56:52.914 FINE org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter Populated SecurityContextHolder with anonymous token: 'org.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@831469b3: Username: anonymous; Password: [PROTECTED]; Authenticated: true; Details: org.acegisecurity.ui.WebAuthenticationDetails@ffffe21a: RemoteIpAddress: 10.10.10.10; SessionId: null; Granted Authorities: '
          18-Jun-2012 16:56:52.914 FINE org.kohsuke.stapler.Stapler.service Processing request for /$stapler/bound/d621eece-00aa-489d-81d1-232f1cdd4b0d/render
          18-Jun-2012 16:56:52.914 FINE org.kohsuke.stapler.Dispatcher.trace -> evaluate(<org.kohsuke.stapler.bind.BoundObjectTable@4ab118d8> :org.kohsuke.stapler.bind.BoundObjectTable,"/d621eece-00aa-489d-81d1-232f1cdd4b0d/render")
          18-Jun-2012 16:56:52.914 FINE org.kohsuke.stapler.Dispatcher.trace -> evaluate(((StaplerFallback)<org.kohsuke.stapler.bind.BoundObjectTable@4ab118d8>).getStaplerFallback(),"/d621eece-00aa-489d-81d1-232f1cdd4b0d/render")
          18-Jun-2012 16:56:52.915 FINE org.acegisecurity.context.HttpSessionContextIntegrationFilter.storeSecurityContextInSession The HttpSession is currently null, and the HttpSessionContextIntegrationFilter is prohibited from creating an HttpSession (because the allowSessionCreation property is false) - SecurityContext thus not stored for next request
          18-Jun-2012 16:56:52.915 FINE org.acegisecurity.ui.ExceptionTranslationFilter.doFilter Chain processed normally
          18-Jun-2012 16:56:52.915 FINE org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter SecurityContextHolder now cleared, as request processing completed

          Colin Harrington added a comment - WillBuck and I were able to find the console, Here is what we saw in our logs: 18-Jun-2012 16:56:52.913 FINE org.acegisecurity.context.HttpSessionContextIntegrationFilter.readSecurityContextFromSession No HttpSession currently exists 18-Jun-2012 16:56:52.913 FINE org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter New SecurityContext instance will be associated with SecurityContextHolder 18-Jun-2012 16:56:52.913 FINE org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter Authorization header: null 18-Jun-2012 16:56:52.914 FINE org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter Populated SecurityContextHolder with anonymous token: 'org.acegisecurity.providers.anonymous.AnonymousAuthenticationToken@831469b3: Username: anonymous; Password: [PROTECTED] ; Authenticated: true; Details: org.acegisecurity.ui.WebAuthenticationDetails@ffffe21a: RemoteIpAddress: 10.10.10.10; SessionId: null; Granted Authorities: ' 18-Jun-2012 16:56:52.914 FINE org.kohsuke.stapler.Stapler.service Processing request for /$stapler/bound/d621eece-00aa-489d-81d1-232f1cdd4b0d/render 18-Jun-2012 16:56:52.914 FINE org.kohsuke.stapler.Dispatcher.trace -> evaluate(<org.kohsuke.stapler.bind.BoundObjectTable@4ab118d8> :org.kohsuke.stapler.bind.BoundObjectTable,"/d621eece-00aa-489d-81d1-232f1cdd4b0d/render") 18-Jun-2012 16:56:52.914 FINE org.kohsuke.stapler.Dispatcher.trace -> evaluate(((StaplerFallback)<org.kohsuke.stapler.bind.BoundObjectTable@4ab118d8>).getStaplerFallback(),"/d621eece-00aa-489d-81d1-232f1cdd4b0d/render") 18-Jun-2012 16:56:52.915 FINE org.acegisecurity.context.HttpSessionContextIntegrationFilter.storeSecurityContextInSession The HttpSession is currently null, and the HttpSessionContextIntegrationFilter is prohibited from creating an HttpSession (because the allowSessionCreation property is false) - SecurityContext thus not stored for next request 18-Jun-2012 16:56:52.915 FINE org.acegisecurity.ui.ExceptionTranslationFilter.doFilter Chain processed normally 18-Jun-2012 16:56:52.915 FINE org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter SecurityContextHolder now cleared, as request processing completed

          Also, logging in seems to make the issue go away for 1.470 and 1.456

          Colin Harrington added a comment - Also, logging in seems to make the issue go away for 1.470 and 1.456

          Will Buck added a comment -

          Does seem to be some kind of securities issue in our case; Crowd and LDAP plugins installed, currently set to authenticate to Active Directory, logging in seems to make the issue go away. We have things set to 'Anyone can do anything', but in the case of these AJAX requests, perhaps 'anything' isn't quite that global?

          Will Buck added a comment - Does seem to be some kind of securities issue in our case; Crowd and LDAP plugins installed, currently set to authenticate to Active Directory, logging in seems to make the issue go away. We have things set to 'Anyone can do anything', but in the case of these AJAX requests, perhaps 'anything' isn't quite that global?

          jaron Sampson added a comment - - edited

          I am using Jenkins own DB for security, with project-specific matrix permissions. During job configuration (for new or existing jobs), the add build step failed for all options, using OSX/Chrome19.0.1084.56 and OSX/Firefox12.0 (about 270 yui "expected declaration but found '*'" per page loads appeared in the FF error logs). I disabled the "Prevent Cross Site Request Forgery exploits" property in the Jenkins configuration (I had the crumb algo enabled as well), and the add build step started working again.

          jaron Sampson added a comment - - edited I am using Jenkins own DB for security, with project-specific matrix permissions. During job configuration (for new or existing jobs), the add build step failed for all options, using OSX/Chrome19.0.1084.56 and OSX/Firefox12.0 (about 270 yui "expected declaration but found '*'" per page loads appeared in the FF error logs). I disabled the "Prevent Cross Site Request Forgery exploits" property in the Jenkins configuration (I had the crumb algo enabled as well), and the add build step started working again.

          Daniel Latter added a comment - - edited

          I have just got the same bug in 1.475? It appeared after I add more projects, thats it?

          On Ubuntu 11.10 (GNU/Linux 3.0.0-14-server x86_64)

          FIXED: for me, it was a cookie issue. I verified this also by de/re-activating cookies. And I cleaned cache in between activating and deactivating cookies.

          Daniel Latter added a comment - - edited I have just got the same bug in 1.475? It appeared after I add more projects, thats it? On Ubuntu 11.10 (GNU/Linux 3.0.0-14-server x86_64) FIXED: for me, it was a cookie issue. I verified this also by de/re-activating cookies. And I cleaned cache in between activating and deactivating cookies.

          Ran into this issue with both Jenkins 1.482 and 1.483. It only happened with one URL (a second test server I ran did not experience the same issue, but it was run on a different box).

          At Daniel Latter's advice from the previous comment, clearing the cache seemed to solve the issue.

          Jonathan Sternberg added a comment - Ran into this issue with both Jenkins 1.482 and 1.483. It only happened with one URL (a second test server I ran did not experience the same issue, but it was run on a different box). At Daniel Latter's advice from the previous comment, clearing the cache seemed to solve the issue.

          Yves Schumann added a comment -

          We run into this issue with Jenkins 1.493 so we are unable to add build steps at the moment!

          Tested with Chrome 23, FF 16.01 and IE 8.

          Any ideas?

          Yves Schumann added a comment - We run into this issue with Jenkins 1.493 so we are unable to add build steps at the moment! Tested with Chrome 23, FF 16.01 and IE 8. Any ideas?

          Yves Schumann added a comment -

          Any news on this topic? We're still unable to configure jobs with additional build steps! :-|

          Yves Schumann added a comment - Any news on this topic? We're still unable to configure jobs with additional build steps! :-|

          This problem is affecting me in Jenkins 1.464. I managed to work around it by using a chrome incognito window, so it probably does have to do with cookies.

          Edward Griffin added a comment - This problem is affecting me in Jenkins 1.464. I managed to work around it by using a chrome incognito window, so it probably does have to do with cookies.

          Jesse Glick added a comment -

          Anyone affected should look in their browser’s JavaScript console for errors, as well as enabling bound object logging as Kohsuke described earlier.

          Jesse Glick added a comment - Anyone affected should look in their browser’s JavaScript console for errors, as well as enabling bound object logging as Kohsuke described earlier.

          I got the same problem when trying to add portlets to the dashboard view in 1.501. Prepared to agree with Edward Griffin that it relates to the cookies. I had a lot of JSESSIONID.xxxxxxxx cookies, removing all of them seemed to solve the problem (so I guess it might have choosen the wrong one). Other than the broken link (404) I could not find any other errors.

          christer moren added a comment - I got the same problem when trying to add portlets to the dashboard view in 1.501. Prepared to agree with Edward Griffin that it relates to the cookies. I had a lot of JSESSIONID.xxxxxxxx cookies, removing all of them seemed to solve the problem (so I guess it might have choosen the wrong one). Other than the broken link (404) I could not find any other errors.

          Similar problem here: choosing items from "Add axis" in a matrix job didn't work; the JS console showed a 404 for all three available axis types.

          Running in an incognito browser window, it worked fine (we don't use any authentication in Jenkins at the moment).

          As with Christer Moren above, I had maybe 90 JSESSIONID cookies in my regular browser window for the Jenkins domain. Restarting the browser didn't fix things, but clearing all cookies for the domain did...

          Christopher Orr added a comment - Similar problem here: choosing items from "Add axis" in a matrix job didn't work; the JS console showed a 404 for all three available axis types. Running in an incognito browser window, it worked fine (we don't use any authentication in Jenkins at the moment). As with Christer Moren above, I had maybe 90 JSESSIONID cookies in my regular browser window for the Jenkins domain. Restarting the browser didn't fix things, but clearing all cookies for the domain did...

          For what it's worth, I did enable bound object logging, but no output was ever shown.

          Only when I opened the incognito browser window, where the problem didn't exist, did I start to see bound object logs appearing. The logs themselves in this case were unremarkable.

          Christopher Orr added a comment - For what it's worth, I did enable bound object logging, but no output was ever shown. Only when I opened the incognito browser window, where the problem didn't exist, did I start to see bound object logs appearing. The logs themselves in this case were unremarkable.

          Matt Krone added a comment -

          I was able to resolve this issue by resolving a context path docBase misconfiguration in my tomcat configuration (server.xml).

          Matt Krone added a comment - I was able to resolve this issue by resolving a context path docBase misconfiguration in my tomcat configuration (server.xml).

          Marking this as fixed as I haven't seen this issue since, and there have been no further complaints.

          Christopher Orr added a comment - Marking this as fixed as I haven't seen this issue since, and there have been no further complaints.

          Jesse Glick added a comment -

          Reserve Fixed for acknowledged bugs with a specific delivered fix.

          Jesse Glick added a comment - Reserve Fixed for acknowledged bugs with a specific delivered fix.

          clamonsch added a comment -

          I'm still able to reproduce this issue. Adding post build steps is not possible. However this problem only occurs when accessing Jenkins over a proxy. Direct access to the same instance is working fine.

          • Jenkins ver. 1.554.2
          • Jenkins is started "standalone" - not within a Tomcat. (java -jar jenkins.war)

          Jenkins access_log:

          [ci@myhost jenkins]$ less access_log | grep "$stapler/bound"

          172.17.2.152 - - [13/Aug/2014:08:47:17 +0200] "POST /ci/$stapler/bound/14d7256f-189c-4f7d-bc25-badacbc9e2b6/render HTTP/1.1" 404 1426 "https://ci.company.com/ci/job/abc-004-7/configure" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 Firefox/30.0"
          172.17.2.152 - - [13/Aug/2014:08:47:17 +0200] "POST /ci/$stapler/bound/877daf46-3cda-4dee-93dc-f0138e0d6b58/render HTTP/1.1" 404 1426 "https://ci.company.com/ci/job/abc-004-7/configure" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 Firefox/30.0"
          172.17.2.152 - - [13/Aug/2014:08:47:51 +0200] "POST /ci/$stapler/bound/3b0ac66b-e538-4db5-8e38-8d9234bd96c6/render HTTP/1.1" 404 1426 "https://ci.company.com/ci/job/abc-004-7/configure" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 Firefox/30.0"

          172.17.2.152 - - [13/Aug/2014:08:49:45 +0200] "POST /ci/$stapler/bound/64ca65fd-d021-4d0a-9e50-f4d3184a02aa/render HTTP/1.1" 200 177 "http://myhost:8080/ci/job/abc-004-7/configure" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 Firefox/30.0"
          172.17.2.152 - - [13/Aug/2014:08:49:45 +0200] "POST /ci/$stapler/bound/ee2f370a-6125-41e4-9061-9f110521fa05/render HTTP/1.1" 200 26 "http://myhost:8080/ci/job/abc-004-7/configure" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 Firefox/30.0"
          172.17.2.152 - - [13/Aug/2014:08:49:58 +0200] "POST /ci/$stapler/bound/d7847927-9b59-497b-a19c-7186a4ddc653/render HTTP/1.1" 200 982 "http://myhost:8080/ci/job/abc-004-7/configure" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 Firefox/30.0"

          There is no exception or error logged in jenkins.log.

          clamonsch added a comment - I'm still able to reproduce this issue. Adding post build steps is not possible. However this problem only occurs when accessing Jenkins over a proxy. Direct access to the same instance is working fine. Jenkins ver. 1.554.2 Jenkins is started "standalone" - not within a Tomcat. (java -jar jenkins.war) Jenkins access_log: [ci@myhost jenkins] $ less access_log | grep "$stapler/bound" 172.17.2.152 - - [13/Aug/2014:08:47:17 +0200] "POST /ci/$stapler/bound/14d7256f-189c-4f7d-bc25-badacbc9e2b6/render HTTP/1.1" 404 1426 "https://ci.company.com/ci/job/abc-004-7/configure" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 Firefox/30.0" 172.17.2.152 - - [13/Aug/2014:08:47:17 +0200] "POST /ci/$stapler/bound/877daf46-3cda-4dee-93dc-f0138e0d6b58/render HTTP/1.1" 404 1426 "https://ci.company.com/ci/job/abc-004-7/configure" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 Firefox/30.0" 172.17.2.152 - - [13/Aug/2014:08:47:51 +0200] "POST /ci/$stapler/bound/3b0ac66b-e538-4db5-8e38-8d9234bd96c6/render HTTP/1.1" 404 1426 "https://ci.company.com/ci/job/abc-004-7/configure" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 Firefox/30.0" 172.17.2.152 - - [13/Aug/2014:08:49:45 +0200] "POST /ci/$stapler/bound/64ca65fd-d021-4d0a-9e50-f4d3184a02aa/render HTTP/1.1" 200 177 "http://myhost:8080/ci/job/abc-004-7/configure" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 Firefox/30.0" 172.17.2.152 - - [13/Aug/2014:08:49:45 +0200] "POST /ci/$stapler/bound/ee2f370a-6125-41e4-9061-9f110521fa05/render HTTP/1.1" 200 26 "http://myhost:8080/ci/job/abc-004-7/configure" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 Firefox/30.0" 172.17.2.152 - - [13/Aug/2014:08:49:58 +0200] "POST /ci/$stapler/bound/d7847927-9b59-497b-a19c-7186a4ddc653/render HTTP/1.1" 200 982 "http://myhost:8080/ci/job/abc-004-7/configure" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 Firefox/30.0" There is no exception or error logged in jenkins.log.

          Matthew Moore added a comment -

          I am seeing this fairly consistently, however, following Kohsuke's instructions to get some logging I am hitting:

          Problem accessing /$stapler/bound/table/enableLogging. Reason:
          java.lang.RuntimeException: java.io.NotSerializableException: org.kohsuke.stapler.bind.BoundObjectTable$Table

          Matthew Moore added a comment - I am seeing this fairly consistently, however, following Kohsuke's instructions to get some logging I am hitting: Problem accessing /$stapler/bound/table/enableLogging. Reason: java.lang.RuntimeException: java.io.NotSerializableException: org.kohsuke.stapler.bind.BoundObjectTable$Table

          Matthew Moore added a comment -

          FWIW, I suspect the problem in (at least) my case is because the servlet container is configured to perform "session replication"-style serialization of the session objects, and the BoundObjectTable isn't Serializable.

          Matthew Moore added a comment - FWIW, I suspect the problem in (at least) my case is because the servlet container is configured to perform "session replication"-style serialization of the session objects, and the BoundObjectTable isn't Serializable.

          hridyesh pant added a comment -

          we migrated Jenkins to 1.580.1 after migration we are unable to add any post build action ,even any drop down menu in job configuration is not working.
          i tried the enabling log as suggested by Kohsuke's but not getting any message.

          2Legacy checkUrl '/job/affinity-web-master/descriptorByName/jenkins.plugins.publish_over_ssh.BapSshTransfer/checkExecCommand' is not valid Javascript: SyntaxError: Invalid flags supplied to RegExp constructor 'affinity' hudson-behavior.js:419
          XHR finished loading: GET "http://ewe.builds.sb.karmalab.net/job/affinity-web-master/descriptorByName/…fact.CopyArtifactPermissionProperty/checkProjectNames?value=&projectNames=". prototype.js:1585Ajax.Request.Class.create.request prototype.js:1585Ajax.Request.Class.create.initialize prototype.js:1550(anonymous function) prototype.js:452klass prototype.js:101FormChecker.sendRequest hudson-behavior.js:159FormChecker.schedule hudson-behavior.js:167FormChecker.delayedCheck hudson-behavior.js:150registerValidator hudson-behavior.js:436(anonymous function) behavior.js:111(anonymous function) behavior.js:107Behaviour.applySubtree behavior.js:93Behaviour.apply behavior.js:76(anonymous function) behavior.js:71window.onload behavior.js:125
          POST http://ewe.builds.sb.karmalab.net/$stapler/bound/8383bd25-8d9d-4313-a821-ad4edb221bc9/render 404 (Not Found) prototype.js:1585Ajax.Request.Class.create.request prototype.js:1585Ajax.Request.Class.create.initialize prototype.js:1550(anonymous function) prototype.js:452klass prototype.js:101proxy.(anonymous function) bind.js:51renderOnDemand hudson-behavior.js:540updateDropDownList hudson-behavior.js:1103jenkinsRules.SELECT.dropdownList hudson-behavior.js:1118(anonymous function) behavior.js:111(anonymous function) behavior.js:107Behaviour.applySubtree behavior.js:93Behaviour.apply behavior.js:76(anonymous function) behavior.js:71window.onload behavior.js:125
          XHR finished loading: POST "http://ewe.builds.sb.karmalab.net/$stapler/bound/8383bd25-8d9d-4313-a821-ad4edb221bc9/render". prototype.js:1585Ajax.Request.Class.create.request prototype.js:1585Ajax.Request.Class.create.initialize prototype.js:1550(anonymous function) prototype.js:452klass prototype.js:101proxy.(anonymous function) bind.js:51renderOnDemand hudson-behavior.js:540updateDropDownList hudson-behavior.js:1103jenkinsRules.SELECT.dropdownList hudson-behavior.js:1118(anonymous function) behavior.js:111(anonymous function) behavior.js:107Behaviour.applySubtree behavior.js:93Behaviour.apply behavior.js:76(anonymous function) behavior.js:71window.onload behavior.js:125
          POST http://ewe.builds.sb.karmalab.net/$stapler/bound/0ff30232-ef2b-42e5-b26d-6beab66267ce/render 404 (Not Found) prototype.js:1585Ajax.Request.Class.create.request prototype.js:1585Ajax.Request.Class.create.initialize prototype.js:1550(anonymous function) prototype.js:452klass prototype.js:101proxy.(anonymous function) bind.js:51renderOnDemand hudson-behavior.js:540updateDropDownList hudson-behavior.js:1103jenkinsRules.SELECT.dropdownList hudson-behavior.js:1118(anonymous function) behavior.js:111(anonymous function) behavior.js:107Behaviour.applySubtree behavior.js:93Behaviour.apply behavior.js:76(anonymous function) behavior.js:71window.onload

          hridyesh pant added a comment - we migrated Jenkins to 1.580.1 after migration we are unable to add any post build action ,even any drop down menu in job configuration is not working. i tried the enabling log as suggested by Kohsuke's but not getting any message. 2Legacy checkUrl '/job/affinity-web-master/descriptorByName/jenkins.plugins.publish_over_ssh.BapSshTransfer/checkExecCommand' is not valid Javascript: SyntaxError: Invalid flags supplied to RegExp constructor 'affinity' hudson-behavior.js:419 XHR finished loading: GET "http://ewe.builds.sb.karmalab.net/job/affinity-web-master/descriptorByName/…fact.CopyArtifactPermissionProperty/checkProjectNames?value=&projectNames=". prototype.js:1585Ajax.Request.Class.create.request prototype.js:1585Ajax.Request.Class.create.initialize prototype.js:1550(anonymous function) prototype.js:452klass prototype.js:101FormChecker.sendRequest hudson-behavior.js:159FormChecker.schedule hudson-behavior.js:167FormChecker.delayedCheck hudson-behavior.js:150registerValidator hudson-behavior.js:436(anonymous function) behavior.js:111(anonymous function) behavior.js:107Behaviour.applySubtree behavior.js:93Behaviour.apply behavior.js:76(anonymous function) behavior.js:71window.onload behavior.js:125 POST http://ewe.builds.sb.karmalab.net/$stapler/bound/8383bd25-8d9d-4313-a821-ad4edb221bc9/render 404 (Not Found) prototype.js:1585Ajax.Request.Class.create.request prototype.js:1585Ajax.Request.Class.create.initialize prototype.js:1550(anonymous function) prototype.js:452klass prototype.js:101proxy.(anonymous function) bind.js:51renderOnDemand hudson-behavior.js:540updateDropDownList hudson-behavior.js:1103jenkinsRules.SELECT.dropdownList hudson-behavior.js:1118(anonymous function) behavior.js:111(anonymous function) behavior.js:107Behaviour.applySubtree behavior.js:93Behaviour.apply behavior.js:76(anonymous function) behavior.js:71window.onload behavior.js:125 XHR finished loading: POST "http://ewe.builds.sb.karmalab.net/$stapler/bound/8383bd25-8d9d-4313-a821-ad4edb221bc9/render". prototype.js:1585Ajax.Request.Class.create.request prototype.js:1585Ajax.Request.Class.create.initialize prototype.js:1550(anonymous function) prototype.js:452klass prototype.js:101proxy.(anonymous function) bind.js:51renderOnDemand hudson-behavior.js:540updateDropDownList hudson-behavior.js:1103jenkinsRules.SELECT.dropdownList hudson-behavior.js:1118(anonymous function) behavior.js:111(anonymous function) behavior.js:107Behaviour.applySubtree behavior.js:93Behaviour.apply behavior.js:76(anonymous function) behavior.js:71window.onload behavior.js:125 POST http://ewe.builds.sb.karmalab.net/$stapler/bound/0ff30232-ef2b-42e5-b26d-6beab66267ce/render 404 (Not Found) prototype.js:1585Ajax.Request.Class.create.request prototype.js:1585Ajax.Request.Class.create.initialize prototype.js:1550(anonymous function) prototype.js:452klass prototype.js:101proxy.(anonymous function) bind.js:51renderOnDemand hudson-behavior.js:540updateDropDownList hudson-behavior.js:1103jenkinsRules.SELECT.dropdownList hudson-behavior.js:1118(anonymous function) behavior.js:111(anonymous function) behavior.js:107Behaviour.applySubtree behavior.js:93Behaviour.apply behavior.js:76(anonymous function) behavior.js:71window.onload

          hridyesh pant added a comment -

          same thing working fine if we use https but not working with http.
          before using 1.580.1, both http and https working fine.

          hridyesh pant added a comment - same thing working fine if we use https but not working with http. before using 1.580.1, both http and https working fine.

          Jesse Glick added a comment -

          hridyeshpant I suspect your problem is an unrelated bug, perhaps in the Publish Over SSH plugin.

          Jesse Glick added a comment - hridyeshpant I suspect your problem is an unrelated bug, perhaps in the Publish Over SSH plugin.

          Jevon Wright added a comment -

          This occured to us when upgrading to 1.594 through `apt-get upgrade`.

          Removing and then reinstalling jenkins through `apt-get remove jenkins && apt-get install jenkins` seems to have fixed the issue.

          Jevon Wright added a comment - This occured to us when upgrading to 1.594 through `apt-get upgrade`. Removing and then reinstalling jenkins through `apt-get remove jenkins && apt-get install jenkins` seems to have fixed the issue.

          Daniel Beck added a comment -

          While investigating JENKINS-27311 I learned that Jenkins requires an active HttpSession / JSESSIONID cookie from the request. In that case, it was a mismatch between configured and actually used Jenkins URLs (which probably prevented the cookie from being set). So that's something to be aware of here.

          Daniel Beck added a comment - While investigating JENKINS-27311 I learned that Jenkins requires an active HttpSession / JSESSIONID cookie from the request. In that case, it was a mismatch between configured and actually used Jenkins URLs (which probably prevented the cookie from being set). So that's something to be aware of here.

            Unassigned Unassigned
            ahelfer1971 Andrew Helfer
            Votes:
            8 Vote for this issue
            Watchers:
            26 Start watching this issue

              Created:
              Updated:
              Resolved: