2012-09-24, 21:38
(2012-09-24, 16:40)Koying Wrote:Not really multiple thumbs but multiple pieces of artwork. Currently we only have thumbnail and fanart which is why they are directly supported in the JSON-RPC calls but in the future xbmc will support clearart, logos, and all that stuff and we don't plan to add a single field for every one of those into the database view so while this approach might work right now it will utterly fail in the future.(2012-09-22, 11:17)jmarshall Wrote: 1. The separate queries for art.
[...]
The first can't really be - after all, art is a 1:many map, so you can't retrieve it all in one go.
But can there be multiple "thumb"'s for 1 item?
Because, mainly, the performance issue is because the remotes want to retrieve the thumb of a list of items.
If there is only 1 thumb (which seems to be the case, unless mistaken), we add it to the views and performance is great in this case.
(2012-09-24, 16:40)Koying Wrote: In my remote mysql case, it adds 100ms for a ~50 items query vs. adding nearly 1sec PER ITEM.Using mysql certainly doesn't help when it comes to better performance.
(2012-09-24, 16:40)Koying Wrote:As you can see in the numbers from my system it still makes quite a bit of a difference so it should certainly go in.(2012-09-22, 11:17)jmarshall Wrote: 2. The open/close of the db for each of those queries.
I already tried something which avoided the open/close.
Although the performances increased, it still wasn't usable, whether with Yatse or the official remote's fork which implement JSON.
(2012-09-24, 16:40)Koying Wrote: BTW, asking for "resume" also fetches from the database for each item, while the info is available from the views. This also degrades performance....
I'm working on a patch.
Thanks for reminding me. Wanted to fix that for a while after I integrated the resume point details into the views but always forgot about it. Done in https://github.com/xbmc/xbmc/commit/34f0...aaecde13a3