[ 
https://issues.apache.org/jira/browse/BEAM-4400?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16523156#comment-16523156
 ] 

Scott Wegner commented on BEAM-4400:
------------------------------------

Bummer. I gave it a try as well, just using a local cache directory before even 
setting up an HTTP cache, and also saw similar results: very few tasks actually 
hit the cache, and we didn't end up saving much execution time. Here's the 
[build scan|https://scans.gradle.com/s/yvyyptb5nl6ns/performance/execution] 
(produced via the --scan flag, which gives useful information about whether 
tasks hit the cache and if not why).

It seems that we have various tasks early in the task dependency tree which 
don't have caching implemented. For example 
[Protobuf|https://github.com/google/protobuf-gradle-plugin/issues/228].  I 
suspect that until these plugins are updated to support task output caching, we 
won't realize the benefits of using a build cache.

/cc [~lcwik]

> Integrate Jenkins Job Cacher Plugin for improved build caching
> --------------------------------------------------------------
>
>                 Key: BEAM-4400
>                 URL: https://issues.apache.org/jira/browse/BEAM-4400
>             Project: Beam
>          Issue Type: Improvement
>          Components: build-system
>            Reporter: Scott Wegner
>            Assignee: Udi Meiri
>            Priority: Minor
>
> See discussion on 
> [dev|https://lists.apache.org/thread.html/c59289787c665c7732df4095bda0877637eee59e3add4d26a11f6b7f@%3Cdev.beam.apache.org%3E].
>  With the new Gradle build, we are now able to build incrementally, but are 
> not yet taking advantage of it on Jenkins. This would give us the benefit of 
> much faster pre-commits for files that aren't changed. For example, A change 
> in the Python which doesn't touch any Java would not need to re-run Java 
> pre-commits.
> By default, Gradle uses a build cache local to the workspace, and in Jenkins 
> the workspace gets nuked on each build. There is a [Jenkins Job Cacher 
> Plugin|https://wiki.jenkins.io/display/JENKINS/Job+Cacher+Plugin] which 
> solves this exact plugin and integrates with Gradle's build cache support. I 
> believe all we need to do is enable and configure this plugin to realize the 
> benefits of incremental builds.
> To enable the plugin, we likely need to reach out the Apache INFRA team.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to