Detected hung build state. The build was detected as hung because the logs were quiet for "300" minutes and the build took "5.0" times longer than average. Attempting to generate stack trace and terminate spawned sub-processes.
CAS-14756: use AutoNoReadLocking(inspectInterval=1s) in writeBackToFullImage
NoLocking was allowing concurrent table.dat_tmp→table.dat renames to race
across MPI workers, causing "RegularFile::move error: No such file or
directory" in rank N's PagedImage destructor (job on cvpost124, build-5).
casacore's table.dat metadata file is always shared — even when tile data
blocks are strictly disjoint. NoLocking is therefore not safe for concurrent
writers.
AutoNoReadLocking with the default inspectInterval=0 is safe (the write lock
is held from first putSlice to flush), but autoRelease() becomes a no-op and
the entire writeback is serialized across workers — identical throughput to
UserLocking.
Setting inspectInterval=1.0 activates periodic lock inspection: every ~1 s
autoRelease() checks whether another worker wants the lock; if so it flushes
table.dat and releases, then the waiting worker acquires. Tile data I/O
interleaves across workers (disjoint blocks → no contention); only the brief
table.dat rename is serialized per transfer.
Comments on Build and package macOS 15 Python 3.12
Anonymous user
Detected hung build state. The build was detected as hung because the logs were quiet for "300" minutes and the build took "5.0" times longer than average. Attempting to generate stack trace and terminate spawned sub-processes.