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

if jenkins user lookup is expensive, requesting changelogs can place undue burden on the master

      if jenkins user lookup is expensive, requesting changelogs can place undue burden on the master.

      "Handling GET /a_master/job/a_folder/job/a_job/branch/master/5/wfapi/changesets from 10.41.80.190 : RequestHandlerThread[#466] / waiting for hudson.remoting.Channel@1aed37e6:OperationsCenter at http://JOC_URL" #32037 daemon prio=5 os_prio=0 tid=0x00007fbdd6db3800 nid=0xa34a in Object.wait() [0x00007fbd99dca000]
         java.lang.Thread.State: TIMED_WAITING (on object monitor)
          at java.lang.Object.wait(Native Method)
          at hudson.remoting.Request.call(Request.java:147)
          - locked <0x00000007271f3470> (a hudson.remoting.UserRequest)
          at hudson.remoting.Channel.call(Channel.java:780)
          at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:250)
          at com.sun.proxy.$Proxy84.loadUserByUsername(Unknown Source)
          at com.cloudbees.opscenter.security.OperationsCenterSecurityRealm.loadUserByUsername(OperationsCenterSecurityRealm.java:201)
          at hudson.model.User$UserIDCanonicalIdResolver.resolveCanonicalId(User.java:1049)
          at hudson.model.User.get(User.java:395)
          at hudson.model.User.get(User.java:364)
          at hudson.plugins.git.GitChangeSet.findOrCreateUser(GitChangeSet.java:374)
          at hudson.plugins.git.GitChangeSet.getAuthor(GitChangeSet.java:435)
          at com.cloudbees.workflow.rest.external.ChangeSetExt.mapFields(ChangeSetExt.java:176)
          at com.cloudbees.workflow.rest.external.ChangeSetExt.create(ChangeSetExt.java:151)
          at com.cloudbees.workflow.rest.endpoints.RunAPI.doChangesets(RunAPI.java:112)
          at sun.reflect.GeneratedMethodAccessor758.invoke(Unknown Source)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          at java.lang.reflect.Method.invoke(Method.java:498)
          at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:298)
          at com.cloudbees.workflow.util.ServeJson$Processor.invoke(ServeJson.java:29)
          at org.kohsuke.stapler.Function$InterceptedFunction.invoke(Function.java:399)
      

          [JENKINS-35484] if jenkins user lookup is expensive, requesting changelogs can place undue burden on the master

          Sam Van Oort added a comment -

          To be resolved by creating a user-settable property that can be turned off to disable resolving changelog users to Jenkins users.

          Sam Van Oort added a comment - To be resolved by creating a user-settable property that can be turned off to disable resolving changelog users to Jenkins users.

          Code changed in jenkins
          User: Sam Van Oort
          Path:
          rest-api/src/main/java/com/cloudbees/workflow/rest/external/ChangeSetExt.java
          http://jenkins-ci.org/commit/pipeline-stage-view-plugin/647f03fc8cdb7422af259d78e96173491df7dad1
          Log:
          Add system config option to avoid doing user lookup for changelog entries to resolve JENKINS-35484

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Sam Van Oort Path: rest-api/src/main/java/com/cloudbees/workflow/rest/external/ChangeSetExt.java http://jenkins-ci.org/commit/pipeline-stage-view-plugin/647f03fc8cdb7422af259d78e96173491df7dad1 Log: Add system config option to avoid doing user lookup for changelog entries to resolve JENKINS-35484

          Sam Van Oort added a comment - - edited

          The property can be set at runtime to disable user resolution by running the following in the script console:

          System.setProperty("com.cloudbees.workflow.rest.external.ChangeSetExt.resolveCommitAuthors","false");
          

          This will disable user lookup.

          Sam Van Oort added a comment - - edited The property can be set at runtime to disable user resolution by running the following in the script console: System .setProperty( "com.cloudbees.workflow. rest .external.ChangeSetExt.resolveCommitAuthors" , " false " ); This will disable user lookup.

          Sam Van Oort added a comment -

          Pending some suggested user experience changes from reviewers and then it will be merged. Target is the 1.5 plugin release.

          Sam Van Oort added a comment - Pending some suggested user experience changes from reviewers and then it will be merged. Target is the 1.5 plugin release.

          Sam Van Oort added a comment -

          Released with version 1.5

          Sam Van Oort added a comment - Released with version 1.5

            svanoort Sam Van Oort
            owood Owen Wood
            Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: