Control: tags -1 - unreproducible On 2023-07-01 17:18 +0200, Sven Joachim wrote:
> Control: tags -1 + unreproducible > > On 2023-06-29 21:06 +0200, Sven Joachim wrote: > >> Package: debhelper >> Version: 13.11.4 >> Severity: normal >> >> In the Salsa CI for ncurses a rather strange failure happens in the >> reprotest job[1]: >> >> ,---- >> | dh_missing -i --fail-missing >> | dh_missing: warning: usr/lib32/libncurses.so exists in debian/tmp but is >> not installed to anywhere (related file: >> "debian/tmp/usr/lib/x86_64-linux-gnu/libncurses.so") >> | dh_missing: warning: usr/lib32/libncursesw.so exists in debian/tmp but is >> not installed to anywhere (related file: >> "debian/tmp/usr/lib/x86_64-linux-gnu/libncursesw.so") >> | dh_missing: error: missing files, aborting >> `---- >> >> I recall that I had seen this error occasionally in my local builds, but >> was (and still am) not able to reproduce it :-(. Maybe there is also an >> error in the ncurses package that I do not see. Any help is appreciated. > > Small update: the reprotest job in ncurses failed four times on 2023-06-29, I > rescheduled the last one (for commit 1c832772[1]) on 2023-06-30 and it > succeeded. Commit 78b0c63b[2] should sidestep this problem in the > future. That was successful, but after some changes to ncurses' debian/rules today I got another dh_missing failure in the reprotest job[1]. > Clearly there is some kind of race condition involved here, but I have > not been able to figure out what it is, and will probably not spend more > time on it unless somebody gives me a hand. I think I am beginning to understand where the race condition is. In full builds of ncurses it is possible for 'make' to process the install-arch and binary-indep targets in parallel, which can cause new files to appear in debian/tmp after "dh_missing -i" has processed the debian/.debhelper/generated/*/installed-by-* files, but before it actually reads the contents of debian/tmp. Those files will then be falsely reported as not installed. Probably such a situation is relatively unusual, and I guess dh_missing has not been designed to handle it. Will see how best to work around it in ncurses. Sven 1. https://salsa.debian.org/debian/ncurses/-/jobs/4400129