[Development] Sporadic QFileSystemWatcher autotest fails on Windows (was: https://bugreports.qt-project.org/browse/QTBUG-24029 unstable)

Robin Burchell robin+qt at viroteck.net
Tue Feb 14 16:23:30 CET 2012


Hi,
(CCing the list so there's a record of this in future)
On Tue, Feb 14, 2012 at 4:08 PM, Friedemann Kleint
<Friedemann.Kleint at nokia.com> wrote:
> Hi,
>
> we are currently looking at the autotests on Windows and noticed that the
> file watcher autotest has become unstable.
> In the test removeFileAndUnWatch():
>
>   QVERIFY(watcher.addPath(filename));
>   QFile::remove(filename);
>   QVERIFY(watcher.removePath(filename));
>
> the removing fails non-deterministically. The reason is apparently that
> after the file deletion, the notification thread kicks in and removes the
> deleted file path from the handle map. This could be a consequence  of the
> thread change?

Ah, of course, I didn't anticipate that. I think it would have always
happened, but previously, return values for add/removePath didn't
exist though, so they weren't checked of course.

I think it's probably safe enough to just stop checking removePath's
return value in QVERIFY there (plus a comment, noting this issue).

I'd expect the behaviour, I just didn't think of it when adding
checking of add/removepath calls...

> Anyways,  I am wondering if the behaviour is to be expected, or, what is the
> test supposed to test?
>
> [In addition, I created http://codereview.qt-project.org/#change,16313 to
> rule out all other influences].

Thanks for that, commented on it already before I saw this mail :]



More information about the Development mailing list