#17826 new Bugs

Estuary Categories don't work well with the FileItem query cache

Reported by: Milhouse Owned by:
Priority: 4 - Normal
Component: Other (un-categorized if does not fit anywhere else) Version: 18.0 "Leia" Alpha1
Severity: Normal Keywords: FileItem query cache
Cc: Blocked By:
Blocking: Platform: All

Description

Possibly following the introduction of Estuary(?) the FileItem query cache is not giving the benefits it should and is in fact now a waste of time (quite literally!)

When accessing the Category widgets, Estuary appears to be loading the FileItem cache with a different path to that which is ultimately used to save the FileItem cache.

For example, when entering the Movies -> Actors widget on the Home screen, the path used to compute the CRC of the corresponding cache file will be:

library://video/movies/actors.xml resulting in the cache filename special://temp/archive_cache/10025-4a8397e4.fi

As this cache file doesn't exist the database is always queried and the new database query is subsequently saved but now the path used to compute the CRC of the corresponding cache file has changed to:

videodb://movies/actors resulting in the cache filename special://temp/archive_cache/vdb-0c9c1bd4.fi

Consequently when the Movies -> Actors widget is entered a second or subsequent time the FileItem cache 10025-4a8397e4.fi is never found so the database is re-queried and the vdb-0c9c1bd4.fi FileItem cache is again saved (overwritten).

Another example is Music -> Songs, which tries to load the FileItem cache with the path library://music/songs.xml but then saves it based on the path musicdb://songs.

So not only are slow devices not getting the benefit of the saved FileItem cache when accessing content via Categories, but they're also being further penalised by having to write what is an unreadable/unusable FileItem cache file to a (most likely) relatively slow storage medium - in my Actors example the FileItem cache file is 22MB and is written to an SD card with 7MB/s write speed. It's a doubly whammy! :)

Is a fix possible? Presumably Category widgets would have to use a consistent path when both loading and saving the query cache.

Change History (0)

Note: See TracTickets for help on using tickets.