chme
3896f61d06
[dacp] Keep the now playing item in the queue when calling ( #353 )
...
playqueueedit_clear
2017-02-11 09:28:35 +01:00
chme
9680fa093a
[db] Fix mpd command 'delete' removing to many items
...
Previously db_queue_delete_bypos iterated over the items and called
delete for each item. The delete also adjusted the pos/shuffle_pos
values for the remaining items.
A delete of pos = 0 resulted therefor in:
- fetch item with pos = 0
- delete item at pos
- update remaining items to pos = pos - 1
- fetch item with pos = 0 (returns the new item at pos 0)
- delete item at pos
- ...
2017-02-04 08:37:58 +01:00
chme
d293356d8b
[db] Extract function to fix queue position values
2017-02-04 08:37:58 +01:00
chme
1c8263224e
[db] Fix incorrect query for db_queue_delete_bypos
2017-02-04 08:37:58 +01:00
ejurgensen
97aa544945
[library] Move library update trigger to new library module
2017-01-28 22:20:35 +01:00
ejurgensen
4d4a4ffd70
[db] Remove special icy update function, add db_queue_update_item()
...
- we will use the latter generalised form from now on, even though it is perhaps a tad slower
2017-01-27 22:36:00 +01:00
ejurgensen
18918ce489
[db] Rename db_file_save_seek -> db_file_seek_update
2017-01-27 22:35:15 +01:00
ejurgensen
1258481202
[listener] Rename LISTENER_PLAYLIST to LISTENER_QUEUE
2017-01-27 22:25:32 +01:00
ejurgensen
60daf03f66
[cache/scan] Let notifications from db.c about library updates go through
...
filescanner/listener instead of directly to the cache
2017-01-27 22:25:32 +01:00
sshambar
b128271656
Merge branch 'master' into fixthreads
2017-01-21 10:27:26 -05:00
Scott Shambarger
8e3797ec43
[threads] Update mutex/cond functions to use new CHECK_ERR macros
...
Added various macros to check return values and log any errors and abort
if the call fails.
Updated logging to handle early errors before logging initialized.
2017-01-21 07:11:20 -08:00
chme
6163269832
[dacp/db] Fix issue found with scan-build
...
- Result of operation is garbage or undefined in dacp_reply_cue_play
- Uninitialized argument value in dacp_reply_playqueuecontents
- Uninitialized argument value in queue_fetch_byposrelativetoitem
2017-01-20 19:00:11 +01:00
Scott Shambarger
b54d94fda6
[threads] Added missing initializers, check errors on mutex/cond calls
2017-01-13 17:32:59 -05:00
chme
4e60626749
[db] Add missing purge of directories in db_purge_all
2017-01-13 18:56:37 +01:00
chme
ae1a45bacc
[library/spotify] Implement rescan in spotify.c and purge old files
...
after rescan
2017-01-13 18:56:37 +01:00
chme
56ce3f9cba
[library/filescanner/spotify] Add library source abstraction and new
...
"library" thread
- Implement filescanner as a library_source
- Add library source implementation for spotify
- Move process_media_info to library with small adjustments:
- Remove dependency to F_SCAN_TYPE defines
- Pass data_kind as parameter
- Pass media_kind and compilation as parameter if a source forces a
specific value for these
- Move declaration of scan_ffmpeg to library; add
library_add_playlist_info to library
2017-01-13 18:56:37 +01:00
ejurgensen
213b58c012
[db] Forgot to add Q_FIND_PL as a playlist query
2017-01-06 19:58:38 +01:00
ejurgensen
27946a472b
[artwork] Add handler for playlist local artwork (for http items)
...
- ref https://www.raspberrypi.org/forums/viewtopic.php?p=1090166#p1090166
2017-01-06 19:35:05 +01:00
ejurgensen
b7c4256df4
[db] Refactor db_build_query_* to reduce redundancy
2017-01-04 22:29:47 +01:00
chme
be6b4376e8
[db] wrap db_purge_cruft in a transaction
2016-12-27 21:31:01 +01:00
ejurgensen
1748430c48
[db] Review of cache regeneration triggers
2016-12-18 21:18:15 +01:00
ejurgensen
40d34ed4ad
Merge pull request #324 from chme/db3
...
Remove rebuilding the persistent-ids on startup
2016-12-18 11:20:10 +01:00
chme
7856498951
[db] Remove unused functions db_files_update_songartistid,
...
db_files_update_songalbumid
2016-12-17 16:17:23 +01:00
chme
3d3c27190b
[db] Add function to cleanup the 'groups' table (artists and albums)
...
Allows removing of item no longer referenced from the files table
2016-12-17 07:38:47 +01:00
chme
351725c8b2
[db] initialize id parameter with 0
2016-12-17 07:11:43 +01:00
chme
de61a3a851
[db] Remove db_admin_update and rename db_admin_add
2016-12-10 06:15:43 +01:00
chme
c4732b835f
[db] Remove unused function db_file_id_byfilebase
2016-12-09 16:20:50 +01:00
chme
588fe120b7
[db] Rename db_get_count to db_get_one_int
2016-12-09 16:20:03 +01:00
chme
2d1e5f6d60
[player/db] Remove function "db_file_get_seekpos"
2016-12-04 17:48:35 +01:00
chme
d339f5bcd2
[db] fixup
2016-12-04 11:34:54 +01:00
chme
edc609b531
[db] Queue fetch functions should end the query after start and fetch
2016-12-04 09:32:50 +01:00
chme
09c2e7ca76
[db] Add missing free of query_param.filter
2016-12-04 09:16:49 +01:00
chme
fb55960b0a
[db] Remove db_queue_enum struct and use generic query_params
2016-12-04 08:18:33 +01:00
chme
b9117f9abd
[db] Remove unnecessary setting of query param fields to 0
2016-12-04 07:42:38 +01:00
chme
6c6f02fdfa
Rename "queue_item.item_id" to "queue_item.id"
2016-12-03 11:14:03 +01:00
chme
eb896a1085
[db] Fix loglevel
2016-12-03 11:12:19 +01:00
chme
0251f3c514
[db] Rename "queue_add_mediafileinfo" to "queue_add_file"
2016-12-03 11:12:19 +01:00
chme
b5bf1928ff
[db] Rename "plversion" to "queue_version", add missing init query for
...
queue_version
2016-12-03 11:12:19 +01:00
chme
6c7df96371
[db] Remove forward declaration of queue_fetch_byitemid
2016-12-03 11:12:19 +01:00
chme
6c66d39d91
[player] Fix segfault if player reaches end of queue, fix repeat single
2016-12-03 11:12:19 +01:00
chme
a0590ce548
[db/player] Icy metadata update
2016-12-03 11:12:19 +01:00
chme
c504abe451
Use queue db table instead of in memory queue struct
2016-12-03 11:11:33 +01:00
chme
8ebf2f9307
[db] Add functions to access/modify the queue table
2016-12-03 10:58:26 +01:00
ejurgensen
3921cf5732
Merge branch 'spwebapi2'
2016-11-27 22:54:06 +01:00
ejurgensen
bb2a73ddab
[spotify] Keep saved tracks through restarts + misc fixing up
2016-11-13 22:13:35 +01:00
chme
2c801ca6db
[db] Small code improvements (avoid hard coded values in query strings)
2016-11-12 12:35:22 +01:00
chme
f7aa3c225b
[db] Move initialization of new db into its own file (db_init.c)
2016-11-04 14:31:15 +01:00
ejurgensen
a99d1b2038
[db] Add song_length to group info ( fixes #265 )
2016-06-11 23:10:13 +02:00
ejurgensen
cbaea95ff4
[filescanner] Support for songdatereleased and songhasbeenplayed
2016-03-04 22:37:56 +01:00
chme
c1dcc0a937
[db] Make loading of playlistitem count optional
2016-02-21 18:05:11 +01:00
ejurgensen
bd75281340
[player] Save speaker name and rename raop_ to output_
2016-02-11 20:04:30 +01:00
chme
491bf54fdb
[directories/spotify] Init db with disabled spotify-root-directory and
...
enable only on successful login to spotify
2016-01-31 08:14:03 +01:00
chme
8600c21424
[db-upgrade] add column date_released to files table, add column name to
...
speakers table
2016-01-31 08:14:03 +01:00
chme
1a6565e512
[directories] Initialize root directories on db init
2016-01-24 18:51:22 +01:00
chme
7703a997c4
[db/filescanner/spotify] Replace filelist-view with separate
...
directories-table
to increase the performance of the mpd command 'lsinfo'
2016-01-24 18:51:22 +01:00
chme
3740486348
[db] Move database upgrade logic to separate file
2016-01-24 18:51:22 +01:00
chme
532e9c3a32
[spotify/artwork] Remove spotify songs after playlist update and delete
...
cached artwork for removed spotify songs
2016-01-16 17:02:57 +01:00
chme
461a956288
[mpd] Return the correct values for number of songs, artists, albums and
...
song length sum in the "stats" command (wrong values are still reported
for uptime, db_update and playtime)
2015-11-06 19:11:00 +01:00
ejurgensen
5125e24cfe
Let db_build_query_index_clause() always return an initialized idx, even on failure
2015-09-29 22:51:23 +02:00
chme
cf70c514b6
Fix memory leak if index clause is used
2015-09-29 22:43:32 +02:00
chme
a1e2f53ab1
Fix memory leak if index clause is used
2015-09-29 22:42:53 +02:00
ejurgensen
68912efa1f
Enable resuming playback from saved position for certain media kinds (eg audiobooks)
2015-08-04 22:33:32 +02:00
chme
1ab318d725
[mpd] support serving artwork over http
2015-07-18 07:17:21 +02:00
ejurgensen
879c2ef350
Avoid cache regeneration triggering during db_query_run (in case the query is long running, like db_files_update_songalbumid might be)
2015-06-08 23:07:56 +02:00
ejurgensen
7d231b992b
Fix typo
2015-06-04 22:17:49 +02:00
ejurgensen
cd14522915
Swap misplaced args in db.c
2015-06-04 22:10:30 +02:00
ejurgensen
271c5ff344
Change DB upgrade from v18->v19 to v18->v18.01
2015-06-04 21:58:01 +02:00
chme
7cd96690c0
Remove file extension for playlists from virtual_path during scan and
...
update db to v19 removing the file extensions from the stored playlists
An existing file extension in the virtual path leads to wrong entries in
MPDroid (and mpd does also not return the file extension).
2015-06-04 08:11:46 +02:00
ejurgensen
3655e26703
Code style
2015-06-02 23:10:04 +02:00
ejurgensen
64ef66f030
Merge pull request #162 from stephan-01010011/master
...
Fixed bug that caused icy header metadata to be not correctly encoded
2015-06-03 00:05:56 +03:00
ejurgensen
7a0dfef136
Add sub-sorting when sort=artists, because otherwise Tunesremote SE will not play the artist's tracks in proper order
2015-06-01 23:36:16 +02:00
stephan-01010011
32727bd296
Fixed bug that caused icy header metadata to be not correctly
...
encoded/converted. Characters above x7F were replaced by '?' character
although the rfc defines a ISO−8859−1 encoding for descriptive
field-content.
According to rfc2616 the field-content is defined as follows:
<the OCTETs making up the field-value and consisting of either *TEXT or
combinations of token, separators, and quoted-string>
The TEXT rule is only used for descriptive field contents and values
that are not intended to be interpreted by the message parser. Words of
*TEXT MAY contain characters from character sets other than ISO- 8859-1
only when encoded according to the rules of RFC 2047.
In the previous implementation the icy metadata was converted based on
fromcode "ascii".
Following incoming icy header field-values should be encoded as
"ISO−8859−1" before adding them to the metadata structure.
- misc.c unicode_fixup_string enhanced by an additional parameter to
define the fromcode
- misc.h unicode_fixup_string prototype updated
- filescanner.c function fixup_tags updated to stay compatible to the
previous implementation using fromcode "ascii"
- db.c function unicode_fixup_mfi updated to stay compatible to the
previous implementation using fromcode "ascii"
- http.c function metadata_header_get enhanced to encode the header
field-content as "ISO−8859−1" to comply with rfc2616
2015-05-31 14:05:31 +01:00
chme
2a04740ca2
[mpd] support "file" argument in list command
2015-05-30 05:56:52 +02:00
ejurgensen
4a50a7a326
[spotify] Improve Spotify loading efficiency and set time_added so smart playlists will work
2015-05-29 19:47:53 +02:00
ejurgensen
a1e417c571
Rename count_info to fix issue #157
2015-05-26 21:24:10 +02:00
ejurgensen
8dd1e0fde2
Fix problem introduced with commit 475d5db
where genres and composers don't get sorted
2015-05-26 21:10:28 +02:00
chme
fefd91fabc
[mpd] support "track" parameter in commands "list", "find", "search"
2015-05-09 07:35:15 +02:00
chme
1300b2f018
[mpd] support "disc" parameter in commands "list", "find", "search"
2015-05-09 07:35:15 +02:00
ejurgensen
f6f584bf84
Fix stupid oversight that can cause segfault
...
- how typical to discover this right after making a release
2015-05-05 20:51:59 +02:00
ejurgensen
0e1de8e0bb
Add media_kind music videos and add forgotten return in db upgrade
2015-04-23 23:38:36 +02:00
chme
9f6afe0607
change pl_type for plain and special playlists and upgrade db to v18
2015-04-23 08:21:11 +02:00
chme
baa97b886d
[smartpl] include smart playlists in filelist view and recreate the view
...
during db upgrade to v17
2015-04-23 08:21:11 +02:00
chme
4cac01ed88
[smartpl] Add support for smart playlists
2015-04-23 08:21:10 +02:00
chme
a174a1d18c
[smartpl] refactoring: repurpose playlist type PL_SMART for user created
...
smart playlists and introduce new type PL_SPECIAL for special system
playlists
2015-04-23 08:21:10 +02:00
ejurgensen
7982bca6f0
Merge branch 'pl2'
...
Conflicts:
src/db.c
2015-04-11 21:00:49 +02:00
chme
b7d5b1650e
[mpd] add support for count command
2015-04-08 19:34:59 +02:00
ejurgensen
e49c941a00
Add a worker thread to support async tasks from the player thread
...
(and maybe others later)
2015-03-31 23:05:24 +02:00
ejurgensen
41f39ea5ca
Sort playlists with ascending parent id, so that more nested playlists come after
...
the less nested ones (required by Retune)
2015-03-30 08:54:17 +02:00
ejurgensen
986b37ed29
Adds a playlist folder type, it is needed for sorting since some clients (eg Retune)
...
require that playlist folders are sent before their content. Playlist folders should,
however, be sent after the base playlists, so the numbering is changed. At the same
time makes the value of the smart playlist type a bit less hardcoded.
2015-03-30 01:03:15 +02:00
chme
516d46232b
[mpd] db upgrade v16: remove unused data_kind column from files-query
...
and rename variable to "type" to match the pl-query
2015-03-20 13:44:29 +01:00
ejurgensen
e5a1495b49
Add DAAP logic for the Radio item
2015-03-16 23:33:42 +01:00
ejurgensen
8359a9018d
Fixup parent playlist
2015-03-14 23:35:19 +01:00
ejurgensen
e68c6c4932
Change db_pl_add/db_pl_update so input is playlist struct
...
- so they work like db_file_add/update and can accept all the struct data (incl. parent_id)
2015-03-14 22:34:03 +01:00
ejurgensen
9fdb8a5247
Add DB and DAAP support for nested playlists
2015-03-14 22:00:57 +01:00
ejurgensen
6221e24f1b
Support for live ICY metadata for streams (incl. artwork)
2015-03-14 21:42:53 +01:00
chme
f41e7014e4
[mpd] add support for commands 'listplaylists', 'listplaylist',
...
'listplaylistinfo', 'ping'; add support for additional tags
2015-03-10 22:15:33 +01:00
chme
9c979ef584
[mpd] fix issues with utf8 characters when selecting from filelist (lead
...
to an infinite loop in MPoD while importing the library and to missing
or wrong entries in ympd)
2015-03-07 10:05:09 +01:00
chme
1bbfcf61a5
Enclose DB upgrade in a single transaction (improves performance and in
...
case of an error does a rollback, keeping the db in a valid state)
2015-02-26 14:09:14 +01:00
chme
795926605d
db: add missing field "virtual_path" in struct db_playlist_info (fixes
...
segfault when loading playlists)
2015-02-23 20:49:53 +01:00
chme
6f7d9f5b44
db: fix wrong number of elements for purge queries
2015-02-23 20:26:42 +01:00
chme
3eab952867
fixup: rename db_mpd_build_query to db_mpd_start_query, removed unused
...
function from db.h
2015-02-15 13:59:35 +01:00
chme
df5b0f779a
Use view for filelist instead of separate table
2015-02-14 22:38:14 +01:00
chme
ad23c0ff30
Add missing free of virtual_path for playlists
2015-02-14 08:50:18 +01:00
chme
8401d5ad09
Removed unnecessary creation of index on db update
2015-02-14 08:50:18 +01:00
chme
830054bd71
Initial support for mpd protocol
2015-02-14 08:50:18 +01:00
ejurgensen
266d05f5eb
Revert "Don't add duplicates (same fname, artist, album and title), issue #85 "
...
This reverts commit 70365422b4
.
2015-01-16 22:32:23 +01:00
ejurgensen
70365422b4
Don't add duplicates (same fname, artist, album and title), issue #85
2015-01-14 22:07:24 +01:00
ejurgensen
baa3ee63ca
Adjust a few log messages
2015-01-14 20:46:03 +01:00
ejurgensen
da376cbeb9
Upgrade database schema to v15.0 -> 15.1
2015-01-14 20:37:29 +01:00
ejurgensen
d16cf2fe7c
Introduce major and minor schema versioning to improve vers compability
...
- also make database vacuuming on startup optional
2015-01-14 20:32:36 +01:00
ejurgensen
829619be5d
Vacuum on startup and also make index changes possible without schema updates
2015-01-10 22:44:26 +01:00
ejurgensen
1f81b5ce7e
Revert "Upgrade db schema to v16"
...
This reverts commit bfa9f4d5cf
.
2015-01-10 20:31:13 +01:00
ejurgensen
b605dc2fc3
Spelling mistake
2015-01-10 19:19:45 +01:00
ejurgensen
a96af67a30
Some fixing up of prev commit
2015-01-10 00:45:19 +01:00
ejurgensen
bfa9f4d5cf
Upgrade db schema to v16
2015-01-10 00:08:50 +01:00
ejurgensen
2208c021aa
Improve browse queries (credit @chme)
...
Adjusted re-commit of commit ec47c6e730
2015-01-09 23:59:38 +01:00
ejurgensen
27a2fabb56
Modify groups queries and improve index
2015-01-09 23:04:50 +01:00
ejurgensen
ea598bfeaf
Remove upgrade paths for indices (since they don't have any data anyway), and instead implement db_create_indices and db_drop_indices to reduce redundancy
2015-01-09 00:28:06 +01:00
ejurgensen
ad48ccb804
Revert "Merge branch 'db' of git://github.com/chme/forked-daapd into chme-db"
...
This reverts commit b8d5e32160
, reversing
changes made to 5a02f926e3
.
2015-01-08 22:40:47 +01:00
chme
ec47c6e730
optimize queries and indexes for composer/genre
2014-12-29 09:24:29 +01:00
chme
5cb06980e3
Optimize the indexes on the files table to speed up select queries
2014-12-29 09:24:29 +01:00
chme
e321e5137f
db update v16 and cache update v2
2014-12-29 09:24:28 +01:00
chme
31870fe046
improve selects for files table by removing the join to the groups table
2014-12-29 09:24:28 +01:00
ejurgensen
3e412b5e65
Remove misplaced quotes in db_group_type_bypersistentid()
2014-12-28 23:32:21 +01:00
chme
3208315503
fix delete query for removing files if a spotify playlist is deleted
2014-12-27 21:44:25 +01:00
chme
7578bb1205
Artwork caching (pull request #61 ), and also:
...
- introduced new section in config file for sqlite pragma settings,
added config for artwork cache
- added setting of pragma synchronous, cache size and journal mode to
daap cache
2014-11-10 22:53:08 +01:00
ejurgensen
2545aedc2a
Avoid duplicate rows in the admin table
2014-08-27 22:12:42 +02:00
ejurgensen
624dd40c59
Include DAAP queries from Retune and TunesRemote+ for caching
...
+ misc fixing up
2014-08-22 22:51:13 +02:00
ejurgensen
f997aca452
More DAAP cache adjustments
2014-08-21 23:06:52 +02:00
ejurgensen
eac718ea0f
Some more daap cache triggers
2014-08-21 10:14:24 +02:00
ejurgensen
f3a19fce8e
Add DAAP cache backend
2014-08-20 00:21:48 +02:00
ejurgensen
a594455e09
Add db_query_run() to get rid of some redundancy in db.c
2014-08-18 00:20:23 +02:00
ejurgensen
d5efc2dcb3
Add db interface to update the admin table
2014-08-15 22:54:47 +02:00
chme
974c6e6323
add missing "#undef Q_TMPL"
2014-07-27 11:16:00 +02:00
chme
46c0239a79
Added options to modify the operation of the SQLite database (through PRAGMA statements)
...
- set cache size (in number of pages)
- set synchronous flag
- set journal mode
2014-07-13 10:35:38 +02:00
ejurgensen
1bd11d2895
Fix so permission changes in the library are handled (issue #8 )
2014-06-09 23:42:02 +02:00
ejurgensen
b566c41a36
Setting log level to info gave a lot of meaningless db.c messages
2014-06-01 23:58:44 +02:00
ejurgensen
915719f0f8
Fix Spotify exemption from purge during init-rescan
2014-05-14 20:44:07 +02:00
ejurgensen
c1be585469
Extra log message for debugging apparent db locking issue
2014-05-13 22:02:32 +02:00
ejurgensen
a5b2fbc0fe
Wrap bulk scan in a db transaction (credit @chme)
2014-05-11 23:13:09 +02:00
ejurgensen
a2f90a997c
Make sure albums/artists appear the same despite different capitalization
2014-04-30 23:30:08 +02:00
ejurgensen
2c16b070ed
Make the update of playcount non-blocking for playback
...
- otherwise slow updates would disrupt streaming when switching track
2014-04-18 22:31:37 +02:00
ejurgensen
35e9b3dc30
Fix bug in m3u scanner
2014-04-18 13:08:31 +02:00
ejurgensen
7c3da47eb7
Small DAAP changes to align with iTunes
2014-03-23 00:23:34 +01:00
ejurgensen
7ed6cc98c3
Add support for Spotify (squashed commit), and:
...
- Try to not return items which a client can't play
- Remove inotify subscription to IN_MODIFY and IN_CREATE
- Fix crash on unknown codec type in transcode.c
- Probably added some new bugs...
2014-03-11 23:20:29 +01:00
ejurgensen
190f91114e
Support songartistid (asri) in group requests and queuefilter=artist
...
- credit misenhower of wp8remote.com
2014-02-21 20:39:57 +01:00
ejurgensen
dd4ebfc42e
Make sure there are no remnants from last upgrade before upgrading the db
2014-01-15 18:29:57 +01:00
ejurgensen
eac404fa3a
Add artwork field to db (upgrade to v15). Set field when embedded
...
artwork found by the filescanner. Reenable support for embedded
artwork in group requests.
2014-01-11 23:05:29 +01:00
ejurgensen
371ed3070c
Add seek to standard db queries
2013-12-19 20:26:38 +01:00
ejurgensen
ab86e30be4
Fix bug where sort fields were not implemented in group replies
2013-12-18 19:14:39 +01:00
ejurgensen
fe16a9ca4e
Merge branch 'audiobooks' into db_upgrade_14
2013-12-17 21:03:26 +01:00
ejurgensen
dbb043198d
Upgrade database to version 14 (artist groups and seek)
...
- add songartistid to support artist groups
- add corresponding trigger
- add seek field for later use (to save playback position)
- add G_ARTISTS and adjust queries
- add smart playlists Podcasts/Audiobooks with db upgrade
2013-12-17 20:58:55 +01:00
ejurgensen
ec2637285d
In group?group-type=artists type queries return better persistent id
...
- this is a temporary solution until real persistent id's can be
used. This change uses a hash of album_artist instead of returning
a fixed value of 1. Thank you SquallyDoc, author of Retune, for
helping out with this and suggesting this solution.
2013-12-16 22:29:47 +01:00
ejurgensen
a925268d50
Include groups table in database purge
2013-12-16 22:21:04 +01:00
ejurgensen
b5247aab1d
Don't cast to char with malloc and some error handling
2013-12-15 22:15:45 +01:00
ejurgensen
b3ea04a047
Some cleaning up in group handling in db.c in prep for artist groups
2013-12-15 21:47:49 +01:00
ejurgensen
a35f6c4376
Basic audiobook support
2013-12-08 23:03:03 +01:00
ejurgensen
2765a12f76
Forgot composer-sort and two instances of strip_article()
2013-12-05 22:46:12 +01:00
ejurgensen
a102d3f138
Set sort headers from sort fields in db
2013-12-05 21:56:02 +01:00
ejurgensen
a30069c0c7
Honor sorting in more daap replies and some minor restructuring of http_daapd.c
2013-12-03 23:16:07 +01:00
ejurgensen
8882374a75
Disable instead of purging when root library dir is not present
2013-11-30 23:12:09 +01:00
ejurgensen
414817031d
Configurable library names
...
Names of Library, Music, Movies, TV Shows and Podcasts made configurable
2013-11-30 12:57:38 +01:00
ejurgensen
adc9c03763
Allow user to trigger full rescan with a .force-rescan file
2013-11-29 22:48:53 +01:00
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