Log in

HCMC Journal

Trying to debug build problem with Landscapes repo

: Martin Holmes
Minutes: 200

Somehow, last Friday, the Landscapes build process was broken in a way that’s proving very difficult to pin down. The Monument build was also broken at the same time, by a commit from NA which introduced a duplicate child name, but that was fixed today and the Monument build is now proceeding without problems. However, the Landscapes build remained broken, and I spent a lot of time trying to pin it down.

The problem occurs when trying to build one of a number of different files in the createXhtml stage. The bug seems to trigger when running (for example) ant createXhtml -DdocsToBuild=C-9346_4630, and the error message is:

       createXhtml:
[echo] **************************
[echo] Creating the XHTML files ...
[echo] **************************
[java] Creating XHTML from 35075 documents...
[java] Error on line 1 column 1 of
...products/site/xml/standalone/; ...products/site/xml/standalone/:
[java] SXXP0003 Error reported by XML parser: Content is not
allowed in prolog.: Content is not
[java] allowed in prolog.
[java] ERROR processing document C-9346_4630:
[java] Description: err:FODC0002
[java] Reason: org.xml.sax.SAXParseException; systemId: 
    

After many hours of debugging, I narrowed the problem down to a missing @source attribute, which turned out to have been deleted inadvertently in a recent commit, presumably by accident. That attribute was needed to retrieve a document in the build process. I’m looking at how we might prevent the same problem in future.