On 06/06/17 18:45, Emmanuel Lécharny wrote:


Le 06/06/2017 à 09:29, Brian Burch a écrit :
On 06/06/17 16:10, Stefan Seelmann wrote:

The two disks are identical and configured as a linux soft RAID array.
They are Hitachi HDS721010CLA332s - 1 Tb 7200 rpm.

I'm sure that's the cause. I also tried to build ApacheDS on a server
with spinning disks, and it takes forever. I assume that we just do too
many sync's when writing data to disk during the tests.

@Emmanuel: Is it possible to disable sync-on-write?


I seem to remember my "solution" was to implement some rather nasty
synchronized static semaphores with finalizers to allow each of the
several threads within a single test unit to follow each-other's
progress. I also had to configure jUnit to only run one test unit at a
time (to protect the statics). It was tricky and ugly, but I was
desperate to have every test always run properly on any platform. I
presume this is a surefire problem, not apacheds?

@Stefan : no, it would not be safe.

@Brian : SSD is the way to go, but if you don't have one, on linux, the
solution would be to run the build on a ram drive. That should speed up
the build considerably.


To make matters more depressing, I decided to do a clean checkout of
M24
on my laptop, which is super-slow by comparison. That failed much
earlier (goal apacheds-core-api - missing dependencies) and I will post
those details separately when I get back home again in a couple of
hours
from now.

That's probably another reason: The API 1.0.0 which ApacheDS M24 depends
on is not yet available in public Maven repo. On your other machine you
built it yourself and thus it's in you local maven repo.

You are correct! I copied my local API sandbox to the laptop and then
re-ran mvn clean. It now fails in exactly the same way as my desktop,
i.e.

<snip>

Sorry, I mistakenly appended the failure from building the API on my laptop, rather than the directory /after/ building the API.

Here is the relevant part of the subsequent directory build failure:

[INFO] ApacheDS Core Integration .......................... SUCCESS [ 01:18 h] [INFO] ApacheDS Protocol Kerberos Test .................... SUCCESS [02:01 min] [INFO] ApacheDS Server Integration ........................ FAILURE [30:10 min]
[INFO] ApacheDS DirectoryService-WebApp bridge ............ SKIPPED
[INFO] ApacheDS Jetty HTTP Server Integration ............. SKIPPED
[INFO] ApacheDS Service Builder ........................... SKIPPED
[INFO] Apache Directory LDAP Client API test .............. SKIPPED
[INFO] kerberos-client .................................... SKIPPED
[INFO] ApacheDS Service ................................... SKIPPED
[INFO] ApacheDS Wrapper ................................... SKIPPED
[INFO] ApacheDS Installers Maven Plugin ................... SKIPPED
[INFO] ApacheDS Installers ................................ SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 02:08 h
[INFO] Finished at: 2017-06-06T20:01:18+10:00
[INFO] Final Memory: 83M/557M
[INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test (default-test) on project apacheds-server-integ: There was a timeout or other error in the fork -> [Help 1]

... which still looks like the surefire race condition failure. If you agree with my suspicion, rather than it being something new, then I am satisfied with the release on two different systems (AMD and Intel, fast and slow spinning disks), both with ubuntu 17.04 64-bit and openjdk 1.8.0_131.

+1

Hard work! Well done!

Brian

p.s. Electricity infrastructure work in my area on Wednesday, then travelling on Thursday, so don't be surprised if you don't hear from me for a while.

Reply via email to