beetbox / beets

music library manager and MusicBrainz tagger
http://beets.io/
MIT License
12.57k stars 1.8k forks source link

Revert only fast queries #5326

Closed snejus closed 1 week ago

snejus commented 1 week ago

Fixes: #5325

As @arsaboo underlined, this change makes interaction with beets unbearably slow for systems that have SQLite version below 3.38.0. This is what Ubuntu ships with by default.

I have also tested other commands, like beet update, and found that even with up to date SQLite version, this command takes twice as long to execute as before.

Thus, I think that the performance gain we see using some of the more complex queries is not worth the performance loss for the most common operations. Therefore, at least for now, I am reverting this change an leaving this work on the only-fast-filtering branch to be revised.

arsaboo commented 1 week ago

I would still like fast queries to speed these queries for my Plexsync plugin (hopefully, in the future):

https://github.com/arsaboo/beets-plexsync/blob/a11c94c1fbdf7f7a2e132c80255dd144cc07f59a/beetsplug/plexsync.py#L815

But, for now, reverting these changes make sense.

snejus commented 1 week ago

I think we'll have to wait for a bit here - notably until Ubuntu ships with SQLite > 3.38.0, at least!