Hi,

I finally found the culprit of a long running problem with Jenkins tasks failing for windows build.

We had the server failing on partition tests on windows due to some files that weren't able to be deleted at the end of tests. This was due to some file handler not being closed properly. The difficulty was to find out which of those handlers weren't released. Thanks to one of my friends, I was able to track them. I used this tool : http://file-leak-detector.kohsuke.org/

The simplest way to leverage it is by adding -javaagent:/<path to the jar>/file-leak-detector-1.13-jar-with-dependencies.jar=dumpatshutdown into the test VM arguments, and you get an output like this one :

File leak detector installed
18 descriptors are open
#1 /var/folders/kz/kzvhcwd904b5ww36551nmvtm0000gn/T/sortedUnique2580874898338090393data by thread:main on Fri Dec 25 08:07:17 CET 2020
    at java.io.FileInputStream.<init>(FileInputStream.java:139)
    at org.apache.directory.mavibot.btree.BulkLoader.processFiles(BulkLoader.java:228)     at org.apache.directory.mavibot.btree.BulkLoader.load(BulkLoader.java:306)     at org.apache.directory.mavibot.btree.AbstractValueHolder.addInArray(AbstractValueHolder.java:339)     at org.apache.directory.mavibot.btree.AbstractValueHolder.add(AbstractValueHolder.java:413)     at org.apache.directory.mavibot.btree.PersistedValueHolder.add(PersistedValueHolder.java:328)     at org.apache.directory.mavibot.btree.PersistedLeaf.replaceElement(PersistedLeaf.java:961)     at org.apache.directory.mavibot.btree.PersistedLeaf.insert(PersistedLeaf.java:97)     at org.apache.directory.mavibot.btree.PersistedBTree.processInsert(PersistedBTree.java:510)
...


Check all the open descriptors, and you'll be able to find out the culprits.


Directory Server jenkins build is now green for windows :-)


Happy Xmas !


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to