Adam Retter

15 May, 2019 11:03 AM

Hi there,

We have a pretty standard large Java project which is built with Maven. On your Ubuntu Linux instances the project builds in ~20 mins quite successfully. Also on Travis this builds in approx ~20 mins on Linux and Mac - https://travis-ci.com/eXist-db/exist/builds/111856227

However, on your Windows instances, the build takes over 1 hour and then is killed for exceeding the time-limit.

As we are using Maven, each module in our build reports the elapsed time that it took to run. However, even when I request the full log from the AppVeyor Dashboard, I am still be presenting with a truncated log :-( So I cannot work out which stages are so much slower on Windows. Our build is here - https://ci.appveyor.com/project/AdamRetter/exist/builds/24554085

Could someone provide us with the full log, or an explanation for why Windows on AppvVeyor is so much slower than Linux on AppVeyor?

At a guess, it seems Windows is not correctly caching the .m2 directory, whereas the Linux builds are.

So, i did some testing on a fork (some fairly random, some less so). At first I thought it may just be a pretty intensive build and so i changed to a more powerful build cloud and extended the time, but i still hit the same hanging on the maven test call.

I tried some other things like changing the thread count to -T 1C and one of those jobs made it further but fell down on tests that rely on some xml file (macbeth.xml i believe). I deleted that test and another test failed on that file as well so i gave up on that (though i guess you may have some path error to that file).

Do you have this building successfully on a local windows machine, and if so what are the specs of that machine?

Also, I want to make sure you're aware of the possibility of debugging via RDP session on the build VM.

Finally, caching was working on my builds, but only for builds that ended in an error. Caching doesn't happen on builds that timeout.