ejurgensen
6eaf47a8d6
Show items with genre=Podcast as Podcast items in Remote
...
- also add Podcast smart playlist to default playlists
2013-10-18 23:07:40 +02:00
ejurgensen
95fc525beb
Add support for artist group request (experimental)
...
The purpose of this is mainly to support Hyperfine Remote for Android
2013-08-29 22:00:37 +02:00
ejurgensen
fe79922c6e
Forgot return value
2013-08-21 23:30:30 +02:00
ejurgensen
9d0962407a
The m3u playlist scanner improvements in commit 6e9cf3a
resulted in
...
too many database lookups. This is a more efficient version.
2013-08-21 23:16:25 +02:00
ejurgensen
6e9cf3a243
This makes the scanner more flexible when matching paths in playlists
...
with the library paths.
2013-08-20 21:58:35 +02:00
ejurgensen
86cf922615
Prefer album artist even when DAAP says artist
2013-07-22 22:30:55 +02:00
Thijs Reus
6c7fa8f299
Now artists/albums are properly sorted and grouped
2013-05-24 18:51:57 +02:00
Julien BLACHE
ad4e15c362
Handle database upgrade v12 -> v13
2011-09-10 12:56:30 +02:00
Julien BLACHE
efcd463946
Add indexes for playlists
2011-09-10 12:56:30 +02:00
Julien BLACHE
664067fd88
Rewrite group queries, remove JOIN, add index
...
SQLite has trouble optimizing the query when written with JOIN, but does
pretty well using the indexes when written without JOIN. Add an index for
the query, too.
2011-09-10 12:56:30 +02:00
Julien BLACHE
cbc7108fcf
Use table aliases in all queries, update RSP & DAAP filters to match
2011-09-10 12:56:30 +02:00
Julien BLACHE
617c026060
Add covering indexes for *{,_sort} fields
...
These indexes help queries searching on these fields and will act as covering
indexes for sort strings, too.
2011-09-10 12:56:30 +02:00
Julien BLACHE
becdfdb062
Add new indexes for general speedup
...
An index on songalbumid helps for joins on songalbumid on the files table; a
covering index on disabled+media_kind+songalbumid helps in numerous queries
all over the place.
2011-09-10 12:56:30 +02:00
Julien BLACHE
1dfd27090e
Speedup startup rescan
2011-09-10 12:56:30 +02:00
Julien BLACHE
96c367f556
Kill useless database indexes
2011-09-10 12:56:30 +02:00
Julien BLACHE
333b7710bc
Queries must hit SQLITE_DONE to execute profiling callback
2011-09-10 12:56:30 +02:00
Julien BLACHE
d05634fddd
Print query execution time in milliseconds
2011-09-10 12:56:29 +02:00
Julien BLACHE
a2b7b811b8
Add query plan to DB profiling callback
2011-09-10 12:56:29 +02:00
Julien BLACHE
1909623d43
Run ANALYZE after DB startup
2011-09-10 12:56:29 +02:00
Peter Carmichael
3caae459be
Add DB maintenance routines
2011-09-10 12:56:29 +02:00
Julien BLACHE
759cc55b0f
Fix bad parameters in I_LAST index clause
2011-06-05 11:04:57 +02:00
Julien BLACHE
4f3635e354
Handle SQLITE_SCHEMA error in db_exec()
...
This happens under database load with many concurrent threads doing updates;
queries failing with SQLITE_SCHEMA at step time need to retried from scratch
until they succeeded or hit a best-effort limit of 5 retries.
2011-05-28 10:48:31 +02:00
Julien BLACHE
4594cc3d63
Enhance db_exec() error messages
2011-05-28 10:46:41 +02:00
Julien BLACHE
54c5314712
Handle empty files table when upgrading from schema v11 -> v12
2011-04-06 18:38:53 +02:00
Julien BLACHE
e5b4c1146e
Handle database upgrade v11 -> v12
2011-03-24 19:23:08 +01:00
Julien BLACHE
9759eeba71
Remove database upgrade for schema version before 10 (v0.12)
2011-03-21 18:48:00 +01:00
Kai Elwert
cb9dc5ad7c
Add COLLATE DAAP to all char-type fields
...
As a consequence, we can remove the explicit COLLATE DAAP from sort
clauses, index definitions and queries.
2011-03-21 18:48:00 +01:00
Kai Elwert
e226c38d4f
Add db_query_fetch_string_sort() to fetch string+sortstring results
2011-03-21 18:48:00 +01:00
Kai Elwert
d8bf5eedce
db_build_query_browse() query changes ("DISTINCT %s, %s", field, field)
2011-03-21 18:48:00 +01:00
Kai Elwert
9e5015ffc8
Switch sort clauses to *_sort fields
2011-03-21 18:47:59 +01:00
Kai Elwert
373c5584af
Add sort tags to the database
2011-03-21 18:47:59 +01:00
Julien BLACHE
eeb5a7974d
Trim metadata strings on files INSERT/UPDATE
2011-03-08 18:55:51 +01:00
Julien BLACHE
69396f3da0
Kill bogus comments
2011-03-07 19:51:43 +01:00
Julien BLACHE
6f7b12b1f2
Handle database upgrade v10 -> v11
2010-12-04 15:08:06 +01:00
Julien BLACHE
27c89cf312
Remove old db_config_* interface
2010-12-04 15:08:06 +01:00
Julien BLACHE
012e90b4a3
Add a dedicated table for speakers
2010-12-04 15:08:06 +01:00
Kai Elwert
e5af78fe9f
Implement sort=artist for DAAP queries
2010-10-09 16:06:00 +02:00
Kai Elwert
cd8686be82
Add DB profiling support
2010-09-29 18:56:38 +02:00
Julien BLACHE
5c81144beb
Revert to standard SQLite functions for DB startup, creation and upgrade
...
No need to use the blocking variants here as there is no concurrency during
DB startup.
2010-09-29 18:26:31 +02:00
Julien BLACHE
b79cf13c95
Remove custom collation and custom daap_songalbumid() function code
2010-09-28 18:39:43 +02:00
Julien BLACHE
da0011de3b
Load our SQLite extension
2010-09-28 18:38:10 +02:00
Julien BLACHE
c6c53e6a28
Fix integer type mismatch in SQL query
...
sample_count is uint64, not int.
2010-09-10 20:58:10 +02:00
Julien BLACHE
e90e81cdf5
Remove no-op "OR REPLACE"
2010-09-04 11:38:15 +02:00
John Thomson
f50e17b60f
Take disc number into account for track ordering inside albums
2010-09-04 11:33:30 +02:00
Kai Elwert
9dec6d23be
Use DAAP collation in sort clauses
2010-08-29 12:07:07 +02:00
Kai Elwert
5dd58ea7a8
Use DAAP collation for browse queries
2010-08-29 12:07:07 +02:00
Kai Elwert
b5e3163d35
Use DAAP collation for group queries
2010-08-29 12:07:07 +02:00
Kai Elwert
f79dbc93cb
Introduce DAAP-specific collation function for SQLite
2010-08-29 12:07:07 +02:00
Kai Elwert
1eec8e1a7b
Modify groups query to group by album name and with COLLATE NOCASE
2010-08-14 11:58:21 +02:00
Kai Elwert
dce9eb8d1f
Use COLLATE NOCASE for browse queries
2010-08-14 11:55:11 +02:00