Windows > Third Party Plug-ins, Programs, and Skins

ZELDA v1.0 released (Expression Language editor)

<< < (4/45) > >>

Moe:
Logging found the culprit.  It was the built in playlist "Audio -- Task -- Missing files" that was causing the problems.  I deleted that playlist and it booted right up.  Thanks for the quick update.

zybex:
Great :)
Then I'll keep the normal startup sequence that gets the file count for each playlist, and just skip that playlist if it exists.

Hendrik:
Users could have other pretty slow playlists. I deleted all the built-in ones in my library and then at some point re-made a missing file playlist.
If you can look at the expression that make up a smartlist, you could skip those with IsMissing() in them or such, thats the only expression thats truely going to be incredibly slow over a large library - that I currently remember, anyway.

zybex:
The COM API doesn't give me the field expression, just the name. I'll have to switch to MWCS at some point, but there are some missing stuff there compared to the COM API, so that would need to be checked first.

But actually, I think IsMissing() should be fixed, it's almost unusable as it is. Other network access internals in MC also sometimes cause it to hang for 30 seconds when clicking on something, just because the NAS happens to be offline.

Possible improvements:
- MC could cache network access results - 1 or 2 timeouts could add the hostname to a blacklist for some time - a background thread could then periodically re-rest the blacklist elements to clean it up when they come back online
- IsMissing() could timeout in 500ms instead of waiting for the Windows call to return
- Playlists with IsMissing() could return a cached set instead of trying to re-check the availability on each access

Hendrik:
IsMissing() is not only slow when a drive is down, it needs to hit the file system for every single file if it exists. That is just a slow operation for thousands of files.

I would generally suggest to avoid blindly loading every single smartlist without a user request.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version