Details
Description
On Fedora, for example, waitForNewTimestamp has been observed to enter an infinite loop (possibly due to the Docker and/or rpmbuild environment).
Instead of playing games with timestamps, should we instead check the filesystem type of the test data directory for a limited number of filesystems which are the most common and wait for an appropriate amount of time:
- APFS, ext4, ZFS: 1 ns => qWait(1)
- NTFS: 100 ns => qWait(1)
- FAT: 2 s => qWait(2000)
- exFAT: 10 ms => qWait(10)
- HFS, ext2, ext3: 1 s => qWait(1000)
and simply wait 1 second for the remaining filesystems, assuming no filesystem except FAT has a worse timestamp granularity and accepting the degraded performance under those environments?
Attachments
For Gerrit Dashboard: QBS-1169 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
201174,2 | Autotests: Ensure that waitForNewTimestamp() always terminates | 1.9 | qbs/qbs | Status: MERGED | +2 | 0 |