Cdash build test failing for Windows without error log

Hi,

one of the self tests I wrote for one of my extensions keeps failing on Cdash for the Windows build without giving me a reasonable error log:

http://slicer.cdash.org/testDetails.php?test=8729220&build=1223692
The test output is “vtkDebugLeaks has found no leaks.” and the test status is “Failed”

The same test passes on Mac and on my Linux machine.
http://slicer.cdash.org/testDetails.php?test=8742239&build=1223531

When I download Slicer nighly build for Windows, install the extension and run the test inside of Slicer, the self test also passes without any issues. Just on cdash it seems to have issue.

Any idea how to debug and fix this?

Thanks in advance.

Hello all,

I was wondering what might cause an extension to not be built on the dashboard?

The SlicerVASST extension was built (and failed) on the mac build machine, but was not built for Windows.

Cheers,
Adam

@adamrankin @chribaue Thanks for the reports, we will follow up shortly with an update.

Cc: @Sam_Horvath

Does it depend on another extension?
There is a known issue on Windows there are any test failures in any of the extensions that you depend on, your extension will not be attempted to be built, it will be just skipped.

This shouldn’t be the case anymore, we are also testing for this:

https://github.com/Slicer/Slicer/blob/c38d9754c55c7615e59e4a045774455dcd416015/Extensions/CMake/Testing/SlicerExtensionBuildSystemTest.py#L284-L290

Unfortunately it’s still a problem. It’s enough to take a look at the latest dashboard (see this one with convenient filters). You can see that none of the dependent extensions build on Windows.

Just to say that I think the assumption it is failing because dependent extension tests fails is invalid. Few days ago, it look like they all got built as expected:

I think the problem is different. Most likely a regression introduced with the recent refactoring of dashboard script and associated driver scripts.

Oh… Yup that’s it. I’ll start fixing tests!

Thanks!

My extension also depends on another extension. cdash builds it for Windows. Just that the test fails without any output telling me why.

Sounds promising! We have been struggling with the issue of dependent extensions not building and the only factor we could identify was failing tests, but maybe it was just coincidence.

That may indicate that the application crashes during shutdown. Also note that on Windows, the application may be built without console support. In that case, console output does not appear on the dashboard.

Hi Andras,

Thank you for the feedback.

According to: http://slicer.cdash.org/testSummary.php?project=11&name=py_PETLiverUptakeMeasurementQR&date=2018-03-20
the test for the Windows nightly only takes 15 seconds before it fails.
The Mac version runs for 255 seconds until the end.

What is the quickest way to figure out what’s going on?

I’ve checked what’s happening on perklab-factory.

The problem with PETLiverUptakeMeasurement extension test on Windows is that DEPENDENCIES_ADDITIONAL_MODULE_PATHS is set incorrectly. On Windows, binaries are within Release, Debug, RelWithDebInfo, or MinSizeRel subfolder. You can find a working example here.

I would also recommend to use DICOMUtils.LoadDICOMFilesToDatabase for downloading, importing, and loading DICOM data set. It is more robust and faster than what the module does. See usage example here.

That’s helpful! Thank you Andras!

I’ll start working on it.

Does the factory.perklab experience the same glitches as overload.kitware?

If so, I will setup my own build configuration and debug from there.

Thanks @jcfr @lassoan for the knowledge

Building all extensions is really simple, so I would recommend to set it up on a computer so that you can debug extension build failures.

If the same error occurs on factory.perklab and overload.kitware then most likely it is not a glitch. Is there any particular issue that you are investigating?

Yes, the SlicerVASST extension is still not being built on windows.

I am setting up a build.