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

Suppress blaming for shallow git clones

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • warnings-ng-plugin
    • None
    • Warnings Plug-in 4.63
      Git plugin 3.5.1
      Jenkins ver. 2.60.3

      it's unable to build jobs if repo is cloned issuing shallow clone. warnings plugin sets the job as failed because it can't find the history.

      may be it's better to have some configuration parameter to disable this behavior or do not fail the whole job if commit history is unavailable?

      sometimes we can't do the full clone, due to huge load on GitHub and we want to use warnings scan in the same time.
       
      from log:
      19:12:40 <Git Blamer> Using GitBlamer to create author and commit information for all warnings.
      19:12:40 <Git Blamer> GIT_COMMIT=e77f2528d379b5d912247ae5dd4c298c3b785f2d, workspace=/mnt/workspace/mysql-5.7-param/BUILD_TYPE/release/Host/ubuntu-yakkety-64bit
      19:12:40 > git rev-parse e77f2528d379b5d912247ae5dd4c298c3b785f2d^{commit} # timeout=10
      19:12:41 ERROR: Build step failed with exception
      19:12:41 org.eclipse.jgit.errors.MissingObjectException: Missing commit 7d38cd4c267888deb3bdfd2460c50cae0be32973
      19:12:41 at org.eclipse.jgit.internal.storage.file.WindowCursor.open(WindowCursor.java:159)
      19:12:41 at org.eclipse.jgit.revwalk.RevWalk.getCachedBytes(RevWalk.java:903)
      19:12:41 at org.eclipse.jgit.revwalk.RevCommit.parseHeaders(RevCommit.java:155)
      19:12:41 at org.eclipse.jgit.revwalk.RevWalk.parseHeaders(RevWalk.java:1012)
      19:12:41 at org.eclipse.jgit.blame.BlameGenerator.processOne(BlameGenerator.java:601)
      19:12:41 at org.eclipse.jgit.blame.BlameGenerator.next(BlameGenerator.java:496)
      19:12:41 at org.eclipse.jgit.blame.BlameResult.computeAll(BlameResult.java:239)
      19:12:41 at org.eclipse.jgit.blame.BlameGenerator.computeBlameResult(BlameGenerator.java:450)
      19:12:41 at org.eclipse.jgit.api.BlameCommand.call(BlameCommand.java:230)
      19:12:41 at hudson.plugins.analysis.util.GitBlamer$BlameCallback.invoke(GitBlamer.java:130)
      19:12:41 at hudson.plugins.analysis.util.GitBlamer$BlameCallback.invoke(GitBlamer.java:104)
      19:12:41 at org.jenkinsci.plugins.gitclient.AbstractGitAPIImpl.withRepository(AbstractGitAPIImpl.java:29)
      19:12:41 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.withRepository(CliGitAPIImpl.java:71)
      19:12:41 at hudson.plugins.analysis.util.GitBlamer.loadBlameResultsForFiles(GitBlamer.java:61)
      19:12:41 at hudson.plugins.analysis.util.GitBlamer.blame(GitBlamer.java:54)
      19:12:41 at hudson.plugins.analysis.util.AbstractBlamer$1.invoke(AbstractBlamer.java:62)
      19:12:41 at hudson.plugins.analysis.util.AbstractBlamer$1.invoke(AbstractBlamer.java:59)
      19:12:41 at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2749)
      19:12:41 at hudson.remoting.UserRequest.perform(UserRequest.java:153)
      19:12:41 at hudson.remoting.UserRequest.perform(UserRequest.java:50)
      19:12:41 at hudson.remoting.Request$2.run(Request.java:336)
      19:12:41 at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
      19:12:41 at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      19:12:41 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      19:12:41 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      19:12:41 at java.lang.Thread.run(Thread.java:745)
      19:12:41 Caused: org.eclipse.jgit.api.errors.JGitInternalException: Missing commit 7d38cd4c267888deb3bdfd2460c50cae0be32973
      19:12:41 at org.eclipse.jgit.api.BlameCommand.call(BlameCommand.java:232)
      19:12:41 at hudson.plugins.analysis.util.GitBlamer$BlameCallback.invoke(GitBlamer.java:130)
      19:12:41 at hudson.plugins.analysis.util.GitBlamer$BlameCallback.invoke(GitBlamer.java:104)
      19:12:41 at org.jenkinsci.plugins.gitclient.AbstractGitAPIImpl.withRepository(AbstractGitAPIImpl.java:29)
      19:12:41 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.withRepository(CliGitAPIImpl.java:71)
      19:12:41 at hudson.plugins.analysis.util.GitBlamer.loadBlameResultsForFiles(GitBlamer.java:61)
      19:12:41 at hudson.plugins.analysis.util.GitBlamer.blame(GitBlamer.java:54)
      19:12:41 at hudson.plugins.analysis.util.AbstractBlamer$1.invoke(AbstractBlamer.java:62)
      19:12:41 at hudson.plugins.analysis.util.AbstractBlamer$1.invoke(AbstractBlamer.java:59)
      19:12:41 at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2749)
      19:12:41 at hudson.remoting.UserRequest.perform(UserRequest.java:153)
      19:12:41 at hudson.remoting.UserRequest.perform(UserRequest.java:50)
      19:12:41 at hudson.remoting.Request$2.run(Request.java:336)
      19:12:41 at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
      19:12:41 at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      19:12:41 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      19:12:41 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      19:12:41 at java.lang.Thread.run(Thread.java:745)
      19:12:41 at ......remote call to os-yakkety-x64-4821(Native Method)
      19:12:41 at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1545)
      19:12:41 at hudson.remoting.UserResponse.retrieve(UserRequest.java:253)
      19:12:41 at hudson.remoting.Channel.call(Channel.java:830)
      19:12:41 at hudson.FilePath.act(FilePath.java:987)
      19:12:41 at hudson.FilePath.act(FilePath.java:976)
      19:12:41 at hudson.plugins.analysis.util.AbstractBlamer.invokeBlamer(AbstractBlamer.java:59)
      19:12:41 at hudson.plugins.analysis.util.AbstractBlamer.blame(AbstractBlamer.java:45)
      19:12:41 at hudson.plugins.analysis.core.HealthAwarePublisher.blame(HealthAwarePublisher.java:109)
      19:12:41 at hudson.plugins.warnings.WarningsPublisher.annotate(WarningsPublisher.java:432)
      19:12:41 at hudson.plugins.warnings.WarningsPublisher.parseConsoleLog(WarningsPublisher.java:378)
      19:12:41 at hudson.plugins.warnings.WarningsPublisher.perform(WarningsPublisher.java:312)
      19:12:41 at hudson.plugins.analysis.core.HealthAwarePublisher.perform(HealthAwarePublisher.java:69)
      19:12:41 at hudson.plugins.analysis.core.HealthAwareRecorder.perform(HealthAwareRecorder.java:298)
      19:12:41 at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:81)
      19:12:41 at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
      19:12:41 at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:735)
      19:12:41 at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:676)
      19:12:41 at hudson.model.Build$BuildExecution.post2(Build.java:186)
      19:12:41 at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:621)
      19:12:41 at hudson.model.Run.execute(Run.java:1760)
      19:12:41 at hudson.matrix.MatrixRun.run(MatrixRun.java:146)
      19:12:41 at hudson.model.ResourceController.execute(ResourceController.java:97)
      19:12:41 at hudson.model.Executor.run(Executor.java:405)

            drulli Ulli Hafner
            abychko Alexey Bychko
            Votes:
            1 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: