Hello, can anyone explain me what exactly "Finger...
# gradle
m
Hello, can anyone explain me what exactly "Fingerprinting inputs" does (when viewing timeline in build scan)? Why can this take minutes even with 100% cache hits? It is significantly reducing the usefulness of build cache in our cases. Thanks
According to these issues it appears that making transforms is also part of this process: • https://issuetracker.google.com/issues/298888646https://github.com/gradle/gradle/issues/26514 However I'm confused on why this still needs to be done on a local machine after remote build cache hit.
v
It's not after cache hit, it is before cache hit. Because the fingerprint is the cache key.
m
ah I see. So it has to do this calculation to calculate the fingerprint. But is it normal for this to take a minute?
v
Heavily depends on what has to be done. If there are 20_000 input files any calculating hash could already need significant time. If a non-cacheable transformation is involved, the question is how long that takes and for how many files, and so on. You maybe could use the
gradle-profiler
to find out where the time is spent.
thank you color 1