Uploaded image for project: 'Calcite'
  1. Calcite
  2. CALCITE-4140

Configure Gradle Remote Build Cache to speedup builds

    XMLWordPrintableJSON

    Details

    • Type: Task
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: avatica-1.17.0, 1.23.0
    • Fix Version/s: 1.27.0
    • Component/s: None

      Description

      Gradle build cache enables to reuse build artifacts across different build executions: https://docs.gradle.org/current/userguide/build_cache.html

      For instance, if linq4j code is not modified, its `compileJava` and `javadoc` results can be reused in the other builds (e.g. PR builds).

      test tasks should probably not be cached as the tests often include integrations with databases, so we should execute them from scratch.

      Note: the cache is sensitive to Gradle version, Java version, and extra files in the workspace, so the common practice is to seed the cache only from CI jobs.

      There's ticket for ASF build cache: https://issues.apache.org/jira/browse/INFRA-20516, however, it is likely we won't be able to use it in GitHub Actions :-/

      An alternative option is to setup AWS S3-backed cache via https://github.com/burrunan/gradle-s3-build-cache

      Note: the remote build cache can be disabled with -Ps3.build.cache=false

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                vladimirsitnikov Vladimir Sitnikov
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 1h 10m
                  1h 10m