Bug 2417 - Indexed FLAC titles blank - 6.2.1 - 4926
: Indexed FLAC titles blank - 6.2.1 - 4926
Status: RESOLVED FIXED
Product: Logitech Media Server
Classification: Unclassified
Component: Playlists
: 6.2.1
: PC All
: P2 normal (vote)
: ---
Assigned To: Dan Sully
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2005-10-29 05:04 UTC by David Thomas
Modified: 2008-09-15 14:39 UTC (History)
1 user (show)

See Also:
Category: ---


Attachments
Playlist containing tracks from indexed FLAC file. (3.87 KB, audio/x-mpegurl)
2005-10-30 18:58 UTC, David Thomas
Details
Cue file indexing a continuous FLAC. (1.65 KB, application/octet-stream)
2005-10-30 18:59 UTC, David Thomas
Details

Note You need to log in before you can comment on or make changes to this bug.
Description David Thomas 2005-10-29 05:04:02 UTC
Tracks from indexed FLAC files show up blank in playlist.

Platform is RHEL 3.0, perl 5.8.2 (i686-linux).
Installed 6.2.1 2005-10-29 nightly build, performed clear/rescan.
FLAC files for continuous albums are indexed by cue sheets; for example:

FILE "../ClubMixes/DivasVol2.flac"
TITLE "Divas to the Dancefloor Vol.2"
PERFORMER "Various"

 TRACK 01 AUDIO
 TITLE "Cliché - Simone Denny"
 MESSAGE "(Chester Wong Dirty Dragon Mix)"
 INDEX 01 00:00:00

 TRACK 02 AUDIO
 TITLE "Nasty Girl - Inaya Day"
 MESSAGE "(Peter Rauhofer Reconstruction)"
 INDEX 01 06:20:09
...

When scanning, slimserver logs the following errors:

2005-10-29 06:15:11.9362 DBD::SQLite::st execute failed: column url is not
unique(1) at dbdimp.c line 401 at
/usr/local/slimserver/CPAN/DBIx/ContextualFetch.pm line 51.
2005-10-29 06:15:11.9547 Backtrace:
                                                                               
                                                         
   frame 0: Slim::DataStores::DBI::DBIStore::newTrack
(/usr/local/slimserver/Slim/DataStores/DBI/DBIStore.pm line 554)
   frame 1: Slim::DataStores::DBI::DBIStore::updateOrCreate
(/usr/local/slimserver/Slim/Formats/Parse.pm line 100)
   frame 2: Slim::Formats::Parse::_updateMetaData
(/usr/local/slimserver/Slim/Formats/Parse.pm line 161)
   frame 3: Slim::Formats::Parse::readM3U
(/usr/local/slimserver/Slim/Formats/Parse.pm line 58)
   frame 4: Slim::Formats::Parse::parseList
(/usr/local/slimserver/Slim/Utils/Scan.pm line 654)
   frame 5: Slim::Utils::Scan::readList
(/usr/local/slimserver/Slim/Utils/Scan.pm line 215)
   frame 6: Slim::Utils::Scan::addToList_run
(/usr/local/slimserver/Slim/Utils/Scheduler.pm line 99)
   frame 7: Slim::Utils::Scheduler::run_tasks
(/usr/local/slimserver/slimserver.pl line 618)
   frame 8: main::idle (/usr/local/slimserver/slimserver.pl line 570)
   frame 9: main::main (/usr/local/slimserver/slimserver.pl line 1226)
                                                                               
                                                         
2005-10-29 06:15:11.9548 Couldn't create track for
file:///db/audio/lib/ClubMixes/DivasVol2.flac#0-380.12 : Can't insert new
Slim::DataStores::DBI::Track: DBD::SQLite::st execute failed: column url is not
unique(1) at dbdimp.c line 401 at
/usr/local/slimserver/CPAN/DBIx/ContextualFetch.pm line 51.
 at /usr/local/slimserver/Slim/DataStores/DBI/DBIStore.pm line 448
                                                                               
                                                         
2005-10-29 06:15:12.9457 Null track request!
2005-10-29 06:15:12.9459 Backtrace:
                                                                               
                                                         
   frame 0: Slim::DataStores::DBI::DBIStore::objectForUrl
(/usr/local/slimserver/Slim/Music/Info.pm line 382)
   frame 1: Slim::Music::Info::updateCacheEntry
(/usr/local/slimserver/Slim/Utils/Scan.pm line 687)
   frame 2: Slim::Utils::Scan::readList
(/usr/local/slimserver/Slim/Utils/Scan.pm line 215)
   frame 3: Slim::Utils::Scan::addToList_run
(/usr/local/slimserver/Slim/Utils/Scheduler.pm line 99)
   frame 4: Slim::Utils::Scheduler::run_tasks
(/usr/local/slimserver/slimserver.pl line 618)
   frame 5: main::idle (/usr/local/slimserver/slimserver.pl line 570)
   frame 6: main::main (/usr/local/slimserver/slimserver.pl line 1226)
                                                                               
                                                         
2005-10-29 06:15:12.9820 Null track request!
2005-10-29 06:15:12.9822 Backtrace:
                                                                               
                                                         
   frame 0: Slim::DataStores::DBI::DBIStore::objectForUrl
(/usr/local/slimserver/Slim/DataStores/DBI/Track.pm line 415)
   frame 1: Slim::DataStores::DBI::Track::setTracks
(/usr/local/slimserver/Slim/Music/Info.pm line 384)
   frame 2: Slim::Music::Info::updateCacheEntry
(/usr/local/slimserver/Slim/Utils/Scan.pm line 687)
   frame 3: Slim::Utils::Scan::readList
(/usr/local/slimserver/Slim/Utils/Scan.pm line 215)
   frame 4: Slim::Utils::Scan::addToList_run
(/usr/local/slimserver/Slim/Utils/Scheduler.pm line 99)
   frame 5: Slim::Utils::Scheduler::run_tasks
(/usr/local/slimserver/slimserver.pl line 618)
   frame 6: main::idle (/usr/local/slimserver/slimserver.pl line 570)
   frame 7: main::main (/usr/local/slimserver/slimserver.pl line 1226)
Comment 1 David Thomas 2005-10-29 05:12:31 UTC
Affected (m3u) playlist contains:

#EXTINF:-1,Cliché - Simone Denny
file:///db/audio/lib/ClubMixes/DivasVol2.flac#0-380.12
#EXTINF:-1,Nasty Girl - Inaya Day
file:///db/audio/lib/ClubMixes/DivasVol2.flac#380.12-875.12

...and so on.  All the titles for this flac file show up blank
when browsing the playlist, both on the web browser and the SB2.
Comment 2 Dan Sully 2005-10-30 11:14:56 UTC
David - could you attach the full CUE & M3U files to this bug?

Thanks.
Comment 3 David Thomas 2005-10-30 18:58:02 UTC
Created attachment 968 [details]
Playlist containing tracks from indexed FLAC file.

Items 30-40 in this playlist refer to indexed tracks in a continuous FLAC file.
Comment 4 David Thomas 2005-10-30 18:59:57 UTC
Created attachment 969 [details]
Cue file indexing a continuous FLAC.
Comment 5 Dan Sully 2005-11-03 14:17:40 UTC
This is working for me in the latest 6.2.1 nightly. Please give that a go.
Comment 6 David Thomas 2005-11-04 05:26:06 UTC
I downloaded and installed the 2005-11-03 nightly (6.2.1 5012), 
performed a clear and re-scan of my library, and found that the
problem still existed as described (same symptoms, same error
messages in the log).

This morning, I downloaded and installed the 2005-11-04 nightly (6.2.1 5024),
performed a clear and re-scan of my library, and found that the
same problem still exists, but I now have many more tracebacks
in the log file, slightly different from the ones that I observed
last week.  Perhaps these will give more insight into the root cause:

2005-11-04 06:07:01.0746 Backtrace:
                                                                               
                                         
   frame 0: Slim::DataStores::DBI::Contributor::add
(/usr/local/slimserver/Slim/DataStores/DBI/DBIStore.pm line 1575)
   frame 1: Slim::DataStores::DBI::DBIStore::_postCheckAttributes
(/usr/local/slimserver/Slim/DataStores/DBI/DBIStore.pm line 502)
   frame 2: Slim::DataStores::DBI::DBIStore::newTrack
(/usr/local/slimserver/Slim/DataStores/DBI/DBIStore.pm line 595)
   frame 3: Slim::DataStores::DBI::DBIStore::updateOrCreate
(/usr/local/slimserver/Slim/Formats/FLAC.pm line 140)
   frame 4: Slim::Formats::FLAC::getTag
(/usr/local/slimserver/Slim/DataStores/DBI/DBIStore.pm line 1137)
   frame 5: (eval) (/usr/local/slimserver/Slim/DataStores/DBI/DBIStore.pm line 1137)
   frame 6: Slim::DataStores::DBI::DBIStore::readTags
(/usr/local/slimserver/Slim/DataStores/DBI/DBIStore.pm line 463)
   frame 7: Slim::DataStores::DBI::DBIStore::newTrack
(/usr/local/slimserver/Slim/DataStores/DBI/DBIStore.pm line 595)
   frame 8: Slim::DataStores::DBI::DBIStore::updateOrCreate
(/usr/local/slimserver/Slim/Formats/Parse.pm line 107)
   frame 9: Slim::Formats::Parse::_updateMetaData
(/usr/local/slimserver/Slim/Formats/Parse.pm line 168)
   frame 10: Slim::Formats::Parse::readM3U
(/usr/local/slimserver/Slim/Formats/Parse.pm line 59)
   frame 11: Slim::Formats::Parse::parseList
(/usr/local/slimserver/Slim/Utils/Scan.pm line 655)
   frame 12: Slim::Utils::Scan::readList
(/usr/local/slimserver/Slim/Utils/Scan.pm line 215)
   frame 13: Slim::Utils::Scan::addToList_run
(/usr/local/slimserver/Slim/Utils/Scheduler.pm line 99)
   frame 14: Slim::Utils::Scheduler::run_tasks
(/usr/local/slimserver/slimserver.pl line 618)
   frame 15: main::idle (/usr/local/slimserver/slimserver.pl line 570)
   frame 16: main::main (/usr/local/slimserver/slimserver.pl line 1226)

2005-11-04 06:07:01.1039 DBD::SQLite::st execute failed: column url is not
unique(1) at dbdimp.c line 401 at
/usr/local/slimserver/CPAN/DBIx/ContextualFetch.pm line 51.
2005-11-04 06:07:01.1048 Backtrace:
                                                                               
                                         
   frame 0: Slim::DataStores::DBI::DBIStore::newTrack
(/usr/local/slimserver/Slim/DataStores/DBI/DBIStore.pm line 595)
   frame 1: Slim::DataStores::DBI::DBIStore::updateOrCreate
(/usr/local/slimserver/Slim/Formats/Parse.pm line 107)
   frame 2: Slim::Formats::Parse::_updateMetaData
(/usr/local/slimserver/Slim/Formats/Parse.pm line 168)
   frame 3: Slim::Formats::Parse::readM3U
(/usr/local/slimserver/Slim/Formats/Parse.pm line 59)
   frame 4: Slim::Formats::Parse::parseList
(/usr/local/slimserver/Slim/Utils/Scan.pm line 655)
   frame 5: Slim::Utils::Scan::readList
(/usr/local/slimserver/Slim/Utils/Scan.pm line 215)
   frame 6: Slim::Utils::Scan::addToList_run
(/usr/local/slimserver/Slim/Utils/Scheduler.pm line 99)
   frame 7: Slim::Utils::Scheduler::run_tasks
(/usr/local/slimserver/slimserver.pl line 618)
   frame 8: main::idle (/usr/local/slimserver/slimserver.pl line 570)
   frame 9: main::main (/usr/local/slimserver/slimserver.pl line 1226)
                                                                               
                                         
2005-11-04 06:07:01.1049 Couldn't create track for
file:///db/audio/lib/ClubMixes/DivasVol2.flac#0-380.12 : Can't insert new
Slim::DataStores::DBI::Track: DBD::SQLite::st execute failed: column url is not
unique(1) at dbdimp.c line 401 at
/usr/local/slimserver/CPAN/DBIx/ContextualFetch.pm line 51.
 at /usr/local/slimserver/Slim/DataStores/DBI/DBIStore.pm line 489
                                                                               
                                         
2005-11-04 06:07:01.9861 Null track request!
2005-11-04 06:07:01.9863 Backtrace:
                                                                               
                                         
   frame 0: Slim::DataStores::DBI::DBIStore::objectForUrl
(/usr/local/slimserver/Slim/Music/Info.pm line 363)
   frame 1: Slim::Music::Info::updateCacheEntry
(/usr/local/slimserver/Slim/Utils/Scan.pm line 688)
   frame 2: Slim::Utils::Scan::readList
(/usr/local/slimserver/Slim/Utils/Scan.pm line 215)
   frame 3: Slim::Utils::Scan::addToList_run
(/usr/local/slimserver/Slim/Utils/Scheduler.pm line 99)
   frame 4: Slim::Utils::Scheduler::run_tasks
(/usr/local/slimserver/slimserver.pl line 618)
   frame 5: main::idle (/usr/local/slimserver/slimserver.pl line 570)
   frame 6: main::main (/usr/local/slimserver/slimserver.pl line 1226)

As mentioned before, the affected tracks do appear in the Artist/Album
catalogs.  However, when I attempt to play one of them, the server refuses:

2005-11-04 06:15:24.4730 ERROR: Couldn't open song. Stopping.

The only tracks that are affected in this way are tracks in continuous
FLAC files, indexed by CUE sheets.  Tracks that are stored in individual
FLAC files do not exhibit this problem.
Comment 7 KDF 2005-11-04 08:59:06 UTC
do you have urls in the flac comments?
Comment 8 David Thomas 2005-11-04 09:47:04 UTC
There are no comments in the FLAC file.  The FLAC was encoded like this:

   flac --compression-level-6 --verify DivasVol2.wav
Comment 9 KDF 2005-11-06 00:48:47 UTC
I notice that some of the backtraces have readM3U in there.  This suggests that
a playlist is involved with the problem.  Can you run this using d_scan and
d_parse debugging?  This should help you locate the M3U file that is being
scanned/parsed a the time of this crash.  Please attach that playlist, and maybe
a section of the log where it crashes while scanning that playlist.  thanks.
Comment 10 KDF 2005-11-06 00:51:04 UTC
oops, sorry.  is it still the playlist you've already attached that is causing this?
Comment 11 David Thomas 2005-11-06 04:52:50 UTC
Yes, the attached playlist is the one that shows blank title/album/artist
when I bring it up from "Browse Playlists".  The same album shows correct
title/album/artist for all tracks when I bring it up from "Browse Albums"
or "Browse Artists".  The tracks do not play, however.

I have other playlists that refer to tracks on continuous FLAC files
indexed by CUE sheets; they have a slightly different symptom.  For
most of them, the title/album/artist is not blank, but the track title
(for all tracks) is the file name with the .flac extension removed.
Those do not play, either.

The difference may be due to the order in which the cue sheets and
playlists are scanned.  If I move the CUE sheet that I have attached from
my "playlists" directory to the same directory as the FLAC file, it behaves
like the others; after a clear/re-scan of the library, I see "DivasVol2"
as the title for all tracks, even on the playlist where the tracks were
previously blank.  When I do that, I also notice that the duration for all
tracks is the total duration of the file, even when viewed from the "Browse
Albums" or "Browse Artists" pages.  (BTW, I do adjust the FILE pathname at
the top of the CUE sheet to be correct whenever I move it; I've also tried
an absolute pathname, with identical results).

Since scan order may be signficant, I should probably mention that the
'playlists' directory is under '/db/audio/lib', which is the top directory
for the entire library.
Comment 12 KDF 2005-11-13 16:48:08 UTC
There is some amount of logic that tries to avoid parsing playlists that are found IN the music library directory tree.  the playlist folder is intended to be a directory that is not part of the music library.  try moving your playlist folder somewhere else and see if that causes things to work correctly.  It might also narrow down what needs to be done to avoid the crash shown in the above log.
Comment 13 David Thomas 2005-11-14 10:56:50 UTC
OK, I separated the playlists directory entirely from the library
(/db/audio/bug2417/playlists and /db/audio/bug2417/lib).  The cue
files are in the same directory with the FLAC files that they index.

I cleared and rescanned using 6.2.1 5024 and got a slightly
different result.  All the tracks from the indexed FLAC file
for this particular album still show up blank on the playlist.
However, when I browse to the album, I find that the tracks are
now playable.

The slimserver.log did not show any of the "column url is not unique"
errors previously observed.  There were 124 tracebacks in the log,
but they were all of this type:

2005-11-14 11:40:52.4554 Backtrace:
                                                                                                                                              
   frame 0: Slim::DataStores::DBI::Contributor::add (/usr/local/slimserver/Slim/DataStores/DBI/DBIStore.pm line 1575)
   frame 1: Slim::DataStores::DBI::DBIStore::_postCheckAttributes (/usr/local/slimserver/Slim/DataStores/DBI/DBIStore.pm line 502)
   frame 2: Slim::DataStores::DBI::DBIStore::newTrack (/usr/local/slimserver/Slim/DataStores/DBI/DBIStore.pm line 595)
   frame 3: Slim::DataStores::DBI::DBIStore::updateOrCreate (/usr/local/slimserver/Slim/Formats/Parse.pm line 107)
   frame 4: Slim::Formats::Parse::_updateMetaData (/usr/local/slimserver/Slim/Formats/Parse.pm line 168)
   frame 5: Slim::Formats::Parse::readM3U (/usr/local/slimserver/Slim/Formats/Parse.pm line 59)
   frame 6: Slim::Formats::Parse::parseList (/usr/local/slimserver/Slim/Utils/Scan.pm line 655)
   frame 7: Slim::Utils::Scan::readList (/usr/local/slimserver/Slim/Utils/Scan.pm line 215)
   frame 8: Slim::Utils::Scan::addToList_run (/usr/local/slimserver/Slim/Utils/Scheduler.pm line 99)
   frame 9: Slim::Utils::Scheduler::run_tasks (/usr/local/slimserver/slimserver.pl line 618)
   frame 10: main::idle (/usr/local/slimserver/slimserver.pl line 570)
   frame 11: main::main (/usr/local/slimserver/slimserver.pl line 1226)

After that, I stopped the server, pulled the latest nightly build
(6.2.1 5179), installed that, and performed another clear and rescan.
There were no tracebacks in the log.  The tracks still show up blank
when I browse the stored playlists, however.

In my "production" library, I've worked around this problem by re-ripping
these albums as individual FLAC files for each track and dispensing with
the cuesheets.  I've preserved the original library/playlists only to
reproduce this testcase.  This bug is not stopping me from playing anything
I wish, including these old playlists.  So, this is a non-critical bug for
me, but other users may run into the same problem until it is fixed.
Comment 14 KDF 2006-01-03 01:08:13 UTC
I believe this should be good now with recent fixes.
Comment 15 Dan Sully 2006-04-29 13:36:56 UTC
This sounds like it's fixed then..

Please reopen if I missed something.

Thanks.