Details
-
Bug
-
Resolution: Unresolved
-
P2: Important
-
None
-
6.8.2
-
None
Description
I am using QDir::entryInfoList to find files on a SMB share containing just under 1000 files. The share is hosted on a Windows machine and the Qt application is running on macOS machine. I'm calling the function like:
QDir(dirPath).entryInfoList(QDir::Files | QDir::Hidden, QDir::Unsorted)
With QDir::Hidden to include hidden files because I noticed it speeds things up a lot not having to check whether the files are hidden. This worked fairly well with Qt through 6.7.3, taking around 500ms. However starting with Qt 6.8.0 and still happening on 6.8.2, it's about an order of magnitude slower at 5+ seconds. Not every single time (macOS or something is caching perhaps? but it's inconsistent), but at least the first time querying the directory and usually after retrying a few times or waiting a bit.
Per the discussion in a similar issue (QTBUG-134699), I am wondering if Qt 6.8+ is doing additional work (like checking isSymLink() even if it doesn't need to) which could be causing the slowdown. I tried using the new QDirListing class directly but it doesn't help.
Attachments
Issue Links
- relates to
-
QTBUG-134699 Performance regression in QDirIterator when going from 6.5.3 to 6.8.2 [REG 6.5.3->6.8.2]
-
- Closed
-