[JIRA] (JENKINS-58349) git-plugin ignore timeouts for advances behaviours

13 views
Skip to first unread message

oren@icx-il.com (JIRA)

unread,
Jul 4, 2019, 11:27:02 AM7/4/19
to jenkinsc...@googlegroups.com
Oren Shpigel created an issue
 
Jenkins / Bug JENKINS-58349
git-plugin ignore timeouts for advances behaviours
Issue Type: Bug Bug
Assignee: Mark Waite
Components: git-plugin
Created: 2019-07-04 15:26
Environment: Jenkins 2.176.1
Git plugin 3.10.0
Labels: git plugin pipeline jenkins
Priority: Minor Minor
Reporter: Oren Shpigel

I have a pipeline projects that runs pipeline script from Git repo.

The repo became big, and the clone operation times out after 10 minutes.

I added "Advances checkout behaviours" and "Advances clone behaviours" with much bigger timeout, but it still times out after 10 minutes.

 

 
hudson.plugins.git.GitException: Command "git fetch --tags --progress origin +refs/heads/master:refs/remotes/origin/master --prune" returned status code 128:
stdout:
stderr: remote: Enumerating objects: 6828, done.
remote: Counting objects: 0% (1/6828)
remote: Counting objects: 1% (69/6828)
...

Receiving objects: 24% (5538/22691), 8.95 MiB | 14.00 KiB/s
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed

at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:2042)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1761)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.access$400(CliGitAPIImpl.java:72)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$1.execute(CliGitAPIImpl.java:442)
at jenkins.plugins.git.GitSCMFileSystem$BuilderImpl.build(GitSCMFileSystem.java:351)
at jenkins.scm.api.SCMFileSystem.of(SCMFileSystem.java:198)
at jenkins.scm.api.SCMFileSystem.of(SCMFileSystem.java:174)
at org.jenkinsci.plugins.workflow.cps.CpsScmFlowDefinition.create(CpsScmFlowDefinition.java:108)
at org.jenkinsci.plugins.workflow.cps.CpsScmFlowDefinition.create(CpsScmFlowDefinition.java:67)
at org.jenkinsci.plugins.workflow.job.WorkflowRun.run(WorkflowRun.java:293)
at hudson.model.ResourceController.execute(ResourceController.java:97)
at hudson.model.Executor.run(Executor.java:429)
Finished: FAILURE

Add Comment Add Comment
 
This message was sent by Atlassian Jira (v7.11.2#711002-sha1:fdc329d)

mark.earl.waite@gmail.com (JIRA)

unread,
Jul 4, 2019, 12:28:02 PM7/4/19
to jenkinsc...@googlegroups.com
Mark Waite updated Bug JENKINS-58349
 

Refer to the JENKINS-38973 workaround comment for this problem.

Change By: Mark Waite
Status: Open Fixed but Unreleased
Resolution: Duplicate

mark.earl.waite@gmail.com (JIRA)

unread,
Jul 4, 2019, 12:28:03 PM7/4/19
to jenkinsc...@googlegroups.com

oren@icx-il.com (JIRA)

unread,
Jul 7, 2019, 4:09:02 AM7/7/19
to jenkinsc...@googlegroups.com
Oren Shpigel commented on Bug JENKINS-58349
 
Re: git-plugin ignore timeouts for advances behaviours

Hi, in my case I use a standard pipeline, and not a Multibranch-Pipeline.

I tried this workaround but it didn't change the 10 minute timeout.

(I have Jenkins installed on ubuntu 16.04, I edited the /etc/default/jenkins JENKINS_ARGS value to have the -Dorg.jenkinsci.plugins.gitclient.Git.timeOut=25 extra argument)

oren@icx-il.com (JIRA)

unread,
Jul 7, 2019, 4:10:03 AM7/7/19
to jenkinsc...@googlegroups.com
Oren Shpigel reopened an issue
 
Change By: Oren Shpigel
Resolution: Duplicate
Status: Closed Reopened

mark.earl.waite@gmail.com (JIRA)

unread,
Jul 7, 2019, 10:32:01 AM7/7/19
to jenkinsc...@googlegroups.com
Mark Waite commented on Bug JENKINS-58349
 
Re: git-plugin ignore timeouts for advances behaviours

I suspect it is the same issue as the duplicate bug, failure to honor the timeout when reading the initial Jenkinsfile.

I created a Pipeline definition test which confirms that the `checkout` step in the Pipeline honors the timeout. In that test, I clone a fresh copy of the linux-stable repository (1.5 GB) from a small, local, relatively low performance git server that I maintain inside my network. The Pipeline job asserts that the expected timeout error is reported during the checkout and that the `timeout=1` is correctly noted on the attempt to clone the linux-stable repository.

I've updated the title of JENKINS-38973 to note that it covers any Pipeline initial checkout of the Jenkinsfile from a large repository.

mark.earl.waite@gmail.com (JIRA)

unread,
Jul 7, 2019, 11:14:02 AM7/7/19
to jenkinsc...@googlegroups.com
Mark Waite edited a comment on Bug JENKINS-58349
I suspect it is the same issue as the duplicate bug, failure to honor the timeout when reading the initial Jenkinsfile.

I created a [Pipeline definition test|https://github.com/MarkEWaite/jenkins-bugs/tree/JENKINS-58349] which confirms that the `checkout` step in the Pipeline honors the timeout.  In that test, I clone a fresh copy of the linux-stable repository (1.5 GB) from a small, local, relatively low performance git server that I maintain inside my network.  The Pipeline job asserts that the expected timeout error is reported during the checkout and that the `timeout=1` is correctly noted on the attempt to clone the linux-stable repository.


I've updated the title of JENKINS-38973 to note that it covers any Pipeline initial checkout of the Jenkinsfile from a large repository.


Further exploring seems to indicate that if I create the solo Pipeline job with the `lightweight checkout` disabled, then the timeout is honored for the initial checkout of the Jenkinsfile.  The lightweight checkout enabled job takes much longer to perform the initial checkout of the Jenkinsfile (likely due to the large size of the repository which must be initially cloned for the lightweight checkout of just the Jenkinsfile).

See the job definitions (same job, one with lightweight checkout, one without lightweight checkout) as:
* [Without lightweight checkout|https://github.com/MarkEWaite/docker-lfs/blob/lts-jdk11-with-plugins/ref/jobs/Bugs-Individual/jobs/JENKINS-58349-initial-checkout-ignores-timeout/config.xml] - job completes in 95 seconds
* [With lightweight checkout|https://github.com/MarkEWaite/docker-lfs/blob/lts-jdk11-with-plugins/ref/jobs/Bugs-Individual/jobs/JENKINS-58349-initial-checkout-ignores-timeout-lightweight-checkout/config.xml] - job completes in 550 seconds

mark.earl.waite@gmail.com (JIRA)

unread,
Jul 7, 2019, 11:17:02 AM7/7/19
to jenkinsc...@googlegroups.com
Mark Waite edited a comment on Bug JENKINS-58349
I suspect it is the same issue as the duplicate bug, failure to honor the timeout when reading the initial Jenkinsfile.

I created a [Pipeline definition test|https://github.com/MarkEWaite/jenkins-bugs/tree/JENKINS-58349] which confirms that the `checkout` step in the Pipeline honors the timeout.  In that test, I clone a fresh copy of the linux-stable repository (1.5 GB) from a small, local, relatively low performance git server that I maintain inside my network.  The Pipeline job asserts that the expected timeout error is reported during the checkout and that the `timeout=1` is correctly noted on the attempt to clone the linux-stable repository.

I've updated the title of JENKINS-38973 to note that it covers any Pipeline initial checkout of the Jenkinsfile from a large repository.

Further exploring seems to indicate that if I create the solo Pipeline job with the `lightweight checkout` disabled, then the timeout is honored for the initial checkout of the Jenkinsfile.  The lightweight checkout enabled job takes much longer to perform the initial checkout of the Jenkinsfile (likely due to the large size of the repository which must be initially cloned for the lightweight checkout of just the Jenkinsfile).

See the job definitions (same job, one with lightweight checkout, one without lightweight checkout) as:
* [Without lightweight checkout|https://github.com/MarkEWaite/docker-lfs/blob/ lts-jdk11-with-plugins 64ceeaece7e21500251d4840d22f767ae48688ef /ref/jobs/Bugs-Individual/jobs/JENKINS-58349-initial-checkout-ignores-timeout/config.xml #L85 ] - job completes in 95 seconds
* [With lightweight checkout|https://github.com/MarkEWaite/docker-lfs/blob/
lts-jdk11-with-plugins 64ceeaece7e21500251d4840d22f767ae48688ef /ref/jobs/Bugs-Individual/jobs/JENKINS-58349-initial-checkout-ignores-timeout-lightweight-checkout/config.xml #L87 ] - job completes in 550 seconds

oren@icx-il.com (JIRA)

unread,
Jul 7, 2019, 11:23:01 AM7/7/19
to jenkinsc...@googlegroups.com

Disabling the "lightweight checkout" actually solves my problem, and made the timeout from the workaround to be effective.

Thanks!!

 

Reply all
Reply to author
Forward
0 new messages