Amarok not adding newly added files to my collection
Frederik Himpe
fhimpe at telenet.be
Sun Jul 22 21:35:31 UTC 2007
On Sun, 22 Jul 2007 18:14:16 +0200, Harald Sitter wrote:
> On Sunday 22 July 2007 17:42:35 Frederik Himpe wrote:
>> I'm clearly not the only one having trouble with Amarok's collection
>> scanner then. Can somebody of the developers comment on this, how we
>> could help debugging this further? This seems like a showstopper to fix
>> for 1.4.7...
>
> I don't consider 2 reports as a showstopper.
Maybe not for you, but for me as a user suffering this problem, it is (I
temporarily switched to another player)
> Anyway, letz digg into the problem:
> * What distribution are you using?
Mandriva Cooker x86_64
> * What filesystem are you using?
XFS
> * What database are you using?
sqlite (system sqlite 3.4.0)
> * How did you install Amarok?
Mandriva Cooker RPMS
> * Please compile with ... --enable-debug=full ... and have a look
> whether
> Amarok outputs anything useful to STDOUT.
Thanks for this hint, this got me in the right direction, as now there's
a lot of debugging info which was not there. It seems there are problems
in the database. First I made a dump and restore of the collection.db, to
be sure the db was not corrupted. This seemed to solve some errors. Now
when I move an album, there is still this error left though, and the
album does not appear in the collection:
amarok: BEGIN: void ScanController::initIncremental()
amarok: [MountPointManager] Trying to update 1432 statistics
rows
amarok: [ScanController] Collection dir changed: /mnt/Music/
Pearl Jam
amarok: [ScanController] Collection was modified.
amarok: END__: void ScanController::initIncremental() - Took 0.13s
amarok: END__: ScanController::ScanController(CollectionDB*, bool, const
QStringList&) - Took 0.13s
amarok: BEGIN: virtual void ThreadManager::Thread::run()
amarok: BEGIN: virtual bool ScanController::doJob()
amarok: BEGIN: SqliteConnection::SqliteConnection(const SqliteConfig*)
amarok: END__: SqliteConnection::SqliteConnection(const SqliteConfig*) -
Took 0.00046s
amarok: BEGIN: void CollectionDB::createTables(bool)
amarok: END__: void CollectionDB::createTables(bool) - Took 0.07s
amarok: BEGIN: void CollectionDB::prepareTempTables()
amarok: END__: void CollectionDB::prepareTempTables() - Took 0.16s
amarok: [KDE::ProgressBar::ProgressBar(QWidget*, QLabel*)]
amarok: [ScanController] itemcount event: 23
amarok: END__: virtual void ThreadManager::Thread::run() - Took 2.2s
amarok: [ThreadManager] Job completed: CurrentTrackJob. Jobs
pending: 0
amarok: [CollectionDB] Detected compilation: Elements Beyond - 3:1
amarok: [MountPointManager] Trying to update 0 tags_labels rows
amarok: END__: virtual bool UrlUpdateJob::doJob() - Took 2.7s
amarok: [ThreadManager] Job completed: UrlUpdateJob. Jobs pending: 0
amarok: END__: virtual void ThreadManager::Thread::run() - Took 2.7s
amarok: BEGIN: void CollectionDB::copyTempTables()
amarok: [CollectionDB] [ERROR!] [virtual int
SqliteConnection::insert(const QString&, const QString&)] sqlite_step
error.
amarok: [CollectionDB] [ERROR!] columns dir, deviceid are not unique
amarok: [CollectionDB] [ERROR!] on insert: INSERT INTO directories
SELECT * FROM directories_temp;
amarok: END__: void CollectionDB::copyTempTables() - Took 0.41s
I tried fixing that one by manually deleting all (wrong) references to
that album in the sqlite db. Now what I'm wondering, if the copy fails
because of duplicate records, could not it remove the old records, so
they are simply replaced by the new correct ones? That would have
prevented this error.
Then I moved the album out of the collection directory. I restarted
Amarok, and move the album to /mnt/Music (root of mountpoint). Nothing
happened; I also chose Update Collection by hand. Then I moved it to /mnt/
Music/Pearl Jam, and chose again Update Collection, but again nothing
happened. The log of this session is on
http://artipc10.vub.ac.be/amarok.log
I do not understand why in the previous test, it correctly detected the
album move, and now that the db has been fixed, it does not detect it at
all anymore...
> Also you might want to try
> amarokcollectionscanner -r "/mnt/Music/Pearl Jam/"
This gives no errors, I see it detects all files without any problem and
reads all tags correctly.
Thanks for your help!
--
Frederik Himpe
More information about the Amarok
mailing list