Apparently, Ds2 will allow the state of a BI to linger after the BI has finished:
Add a (broken in some way) DC to the config
Build the containing docset; wait until finished ("fail")
Remove(!) the broken DC from the config again
Rebuild containing docset; wait until finished
-> It fails again. Looking at the API, you can still see the broken DC's name under "deliverables", along with its failing status. To fix the issue, you need to quit Ds2, and importantly, delete the JSON from /var/cache/docserv.
There are two reasons why we did not notice this so far:
We usually fix source documents rather than removing from the config.
Only with Docserv 5.x did we actually introduce an overall build status. Before that we just used a document-based build status and copied whatever documents built successfully.
Apparently, Ds2 will allow the state of a BI to linger after the BI has finished:
-> It fails again. Looking at the API, you can still see the broken DC's name under "deliverables", along with its failing status. To fix the issue, you need to quit Ds2, and importantly, delete the JSON from /var/cache/docserv.
There are two reasons why we did not notice this so far: