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

Heal incremental maven compilation: each mvn install rebuilds the whole thing

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.0.0-incubating
    • Fix Version/s: 1.0.0-incubating
    • Component/s: None
    • Labels:

      Description

      Currently the jar files are rebuild even if the source files were not modified.
      It would be nice to eliminate unnecessary work from the build.

      The list of bad plugins is:
      1) maven-resources-plugin. It always regenerate files above files from
      velocity templates.
      2) git.properties – we might not need the exact build timestamp for dev builds
      3) generate-fmpp-sources – seems to regenerate the same parser again and again
      4) hydromatic-resource-maven-plugin seems to regenerate the same
      runtime for each execution
      5) org-apache-calcite-jdbc.properties includes build.timestamp

      If I "disable" those plugins, the subsequent builds take 6-7 seconds
      and the jars are not updated.

      Total time: 6.237 s

      Most time consuming are:
      1.4s Calcite
      1.2s Calcite Ubenchmark
      0.9s Calcite Plus
      0.8s Calcite Core
      0.6s Calcite Spark

      http://mail-archives.apache.org/mod_mbox/incubator-calcite-dev/201411.mbox/%3CCAB%3DJe-FviBdTtSm%3D74vUSPrwQBESU4XsDpDtmGgJhS2rsp%2BdpA%40mail.gmail.com%3E

      http://mail-archives.apache.org/mod_mbox/incubator-calcite-dev/201411.mbox/%3CCAB=Je-GqE83F3qhCoFXNiU8EQ9YYGOs-JY4dScR-qMpuxxo-JA@mail.gmail.com%3E

        Attachments

          Activity

            People

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

              Dates

              • Created:
                Updated:
                Resolved: