Description
When running the whole test suite from commandline, tests are parallelized and gradle/junit tries to use as many cores as possible (16 on my machine). But the tests take a very long time, approximatevely 90minutes on my machine, and several of them failed because they took too long to complete.
Using jstack to look at the threads state while tests are running show that most of them are waiting on DiffRepository methods (DiffRepository#expand in most cases) while one of the thread obtained the lock (and is usually flushing data on disk).