[Logo] Jaikoz and SongKong Forums
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
Messages posted by: mailseth  XML
Profile for mailseth -> Messages posted by mailseth [6]
Author Message
I hoped that by paying for the upgrade, I would be able to avoid the slow lookups, but this is still much too slow. Like below. Five minutes for each lookup.
Code:
Nov 12, 2011 1:47:59 PM: INFO: Task 9:Successfully matched 40 songs to the MusicBrainz Release ae879bee-67f8-4036-9a36-ce81ad4ba661 with title Goodbye, Babylon (Compilation)
 Nov 12, 2011 1:54:43 PM: INFO: Task 9:Successfully matched 41 songs to the MusicBrainz Release ae879bee-67f8-4036-9a36-ce81ad4ba661 with title Goodbye, Babylon (Compilation)
 Nov 12, 2011 1:59:34 PM: INFO: Task 9:Successfully matched 42 songs to the MusicBrainz Release ae879bee-67f8-4036-9a36-ce81ad4ba661 with title Goodbye, Babylon (Compilation)
 N


I'm getting a lot of these exceptions in the debug log:
Code:
13/11/2011 01.45.24:com.jthink.jaikoz.manipulate.matchinghelper.ArtistCache:getArtistFromDatabase:WARNING: Failed getArtistFromDatabase:Connections could not be acquired from the underlying database!
 java.sql.SQLException: Connections could not be acquired from the underlying database!
 	at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:106)
 	at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:529)
 	at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:128)
 	at com.jthink.jaikoz.db.Db.createConnection(Db.java:421)
 	at com.jthink.jaikoz.db.Db.runQuery(Db.java:486)
 	at com.jthink.jaikoz.manipulate.matchinghelper.ArtistCache.getArtistFromDatabase(ArtistCache.java:95)
 	at com.jthink.jaikoz.manipulate.matchinghelper.ArtistCache.get(ArtistCache.java:71)
 	at com.jthink.jaikoz.manipulate.matchinghelper.ArtistCache.addFromWeb(ArtistCache.java:215)
 	at com.jthink.jaikoz.manipulate.matchinghelper.ArtistCache.getOrAdd(ArtistCache.java:253)
 	at com.jthink.jaikoz.manipulate.musicbrainzhelper.ArtistCreditHelper.getTrackArtistCredit(ArtistCreditHelper.java:322)
 	at com.jthink.jaikoz.manipulate.musicbrainzhelper.MusicBrainzUpdateSong.updateTagFromMusicBrainz(MusicBrainzUpdateSong.java:1652)
 	at com.jthink.jaikoz.manipulate.musicbrainzhelper.UpdateTrackFromMusicbrainzRelease.updateTagsFromReleaseScore(UpdateTrackFromMusicbrainzRelease.java:41)
 	at com.jthink.jaikoz.manipulate.CorrectFromMusicBrainzWorker.call(CorrectFromMusicBrainzWorker.java:352)
 	at com.jthink.jaikoz.manipulate.CorrectFromMusicBrainzWorker.call(CorrectFromMusicBrainzWorker.java:36)
 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
 	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
 	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
 	at java.lang.Thread.run(Thread.java:680)
 Caused by: com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source.
 	at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1319)
 	at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:557)
 	at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:477)
 	at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:525)
 	... 20 more
 13/11/2011 01.45.24:com.jthink.jaikoz.manipulate.musicbrainzhelper.MusicBrainzServerQuery:doQuery:SEVERE: 01:45:24:294:URL Decoded:http://musicbrainz.org/ws/2/artist/b09ae88f-4156-4caa-b129-1cacb5e1632e?inc=aliases tags
 13/11/2011 01.45.24:com.jthink.jaikoz.db.Db:printSQLException:SEVERE: Err:Connections could not be acquired from the underlying database!:ErrCode:0:State:null
 13/11/2011 01.45.24:com.jthink.jaikoz.manipulate.matchinghelper.ArtistCache:addArtistToDatabase:WARNING: Failed addArtistToDatabase:Connections could not be acquired from the underlying database!
 java.sql.SQLException: Connections could not be acquired from the underlying database!
 	at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:106)
 	at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:529)
 	at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:128)
 	at com.jthink.jaikoz.db.Db.createConnection(Db.java:421)
 	at com.jthink.jaikoz.manipulate.matchinghelper.ArtistCache.addArtistToDatabase(ArtistCache.java:169)
 	at com.jthink.jaikoz.manipulate.matchinghelper.ArtistCache.addFromWeb(ArtistCache.java:218)
 	at com.jthink.jaikoz.manipulate.matchinghelper.ArtistCache.getOrAdd(ArtistCache.java:253)
 	at com.jthink.jaikoz.manipulate.musicbrainzhelper.ArtistCreditHelper.getTrackArtistCredit(ArtistCreditHelper.java:322)
 	at com.jthink.jaikoz.manipulate.musicbrainzhelper.MusicBrainzUpdateSong.updateTagFromMusicBrainz(MusicBrainzUpdateSong.java:1652)
 	at com.jthink.jaikoz.manipulate.musicbrainzhelper.UpdateTrackFromMusicbrainzRelease.updateTagsFromReleaseScore(UpdateTrackFromMusicbrainzRelease.java:41)
 	at com.jthink.jaikoz.manipulate.CorrectFromMusicBrainzWorker.call(CorrectFromMusicBrainzWorker.java:352)
 	at com.jthink.jaikoz.manipulate.CorrectFromMusicBrainzWorker.call(CorrectFromMusicBrainzWorker.java:36)
 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
 	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
 	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
 	at java.lang.Thread.run(Thread.java:680)
 Caused by: com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source.
 	at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1319)
 	at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:557)
 	at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:477)
 	at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:525)
 	... 18 more
 13/11/2011 01.45.24:com.jthink.jaikoz.db.Db:printSQLException:SEVERE: Err:Connections could not be acquired from the underlying database!:ErrCode:0:State:null
 13/11/2011 01.45.24:com.jthink.jaikoz.db.Db:printSQLException:SEVERE: Err:Connections could not be acquired from the underlying database!:ErrCode:0:State:null:Sql:select xmldata from artist where guid='b09ae88f-4156-4caa-b129-1cacb5e1632e'
 13/11/2011 01.45.24:com.jthink.jaikoz.manipulate.matchinghelper.ArtistCache:getArtistFromDatabase:WARNING: Failed getArtistFromDatabase:Connections could not be acquired from the underlying database!
 java.sql.SQLException: Connections could not be acquired from the underlying database!
 	at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:106)
 	at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:529)
 	at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:128)
 	at com.jthink.jaikoz.db.Db.createConnection(Db.java:421)
 	at com.jthink.jaikoz.db.Db.runQuery(Db.java:486)
 	at com.jthink.jaikoz.manipulate.matchinghelper.ArtistCache.getArtistFromDatabase(ArtistCache.java:95)
 	at com.jthink.jaikoz.manipulate.matchinghelper.ArtistCache.get(ArtistCache.java:71)
 	at com.jthink.jaikoz.manipulate.matchinghelper.ArtistCache.getOrAdd(ArtistCache.java:251)
 	at com.jthink.jaikoz.manipulate.musicbrainzhelper.MusicBrainzUpdateSong.getReleaseArtistCredit(MusicBrainzUpdateSong.java:1609)
 	at com.jthink.jaikoz.manipulate.musicbrainzhelper.MusicBrainzUpdateSong.updateTagFromMusicBrainz(MusicBrainzUpdateSong.java:1659)
 	at com.jthink.jaikoz.manipulate.musicbrainzhelper.UpdateTrackFromMusicbrainzRelease.updateTagsFromReleaseScore(UpdateTrackFromMusicbrainzRelease.java:41)
 	at com.jthink.jaikoz.manipulate.CorrectFromMusicBrainzWorker.call(CorrectFromMusicBrainzWorker.java:352)
 	at com.jthink.jaikoz.manipulate.CorrectFromMusicBrainzWorker.call(CorrectFromMusicBrainzWorker.java:36)
 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
Any thoughts on how to make the matching run faster than geologic speeds?

paultaylor wrote:
Hi, if its only a few seconds too short it may just be that the Musicbrainz info is wrong, maybe its been matched against the wrong version of the song, it doesn't mean the track is necessarily broken/incomplete. 


But what about more than a few seconds too short?

paultaylor wrote:
I've replied to your other suggestions above. 


I think there are a few more past "BUG:" that you might have missed.
Thanks again,
Seth

paultaylor wrote:
Hi, sorry I thought Id answered these questions already, but it appears not.

mailseth wrote:
Would it be possible to check for incomplete tracks? For example, I know I have tracks that are incomplete due to historical I/O error, or broken network connection, or interrupted download. It would be great if Jaikoz could find tracks that are much to short for the song they are labeled as, and flag them as partial.
 

No, I think this out of scope Jaikoz only looks at the metadata not the audio.
 

What I had in mind was looking at the metadata, and comparing it against the MusicBrainz DB. If it's more than a few seconds too short, it would be flagged as too short.

What do you think of the remaining items?
Bump. I wouldn't want my suggestions to go unnoticed.
I use iVolume for this, but I think it's based on an open source gain measurement utility.
I'm working on tagging over 100k tracks; I'll keep a running wishlist and/or grand ideas here. Feel free to post support for ideas you like.

When I search & delete duplicate tracks, is there a way for my rating, play count, etc. in iTunes to get copied to the new track? Sometimes both tracks have been played/rated, so perhaps the greatest rating and the sum of the play count should be copied.

When cancel is pressed during a save, do you think you could give an option of synchronizing all processed tracks with iTunes?

The 300 second limit for acoustic analysis is causing me problems. I have a large number of 1-2 hour long electronic mixes, and none of the tracks can be analyzed because of the time limit. It would make more sense to dynamically change the timeout period depending on the length of the track.

I'm not sure what word list this is in, but the album "Born in the U.S.A." by Bruce Springsteen was changed to "Born in the U.S.a." by your auto filters. You might want to recognize "U.S.A." as something that should be capitalized. Same with "M.I.A."

Would it be possible to check for incomplete tracks? For example, I know I have tracks that are incomplete due to historical I/O error, or broken network connection, or interrupted download. It would be great if Jaikoz could find tracks that are much to short for the song they are labeled as, and flag them as partial.

Genres which are only 2-3 digit numbers should be on a blacklist by default. I'm not sure what's the best way to do that, but I somehow have a bunch which are "14", or "20", or "255"...

Years which are less than 1800 should be on some blacklist also. And/or year values between 0 and 100 could be remapped to 19xx or 20xx as makes sense.

An option to "Overwrite Genre if not on Whitelist" would be nice under Format2, where whitelist is the iTunes/WinAmp defaults.

When a file is found to be unreadable or otherwise corrupted, run a utility to fix it, and try again. I know the MusicIP folks have utilities for fixing AAC and MP3 formatted files.

What's in Preferences/Jaikoz/jaikozdb/seg0/ ? That folder is using over 10 GB of space on my HD. Perhaps it could be trimmed down if not needed?

There are a handful of albums with names like "1998-04-12: Bottom of the Hill, San Francisco, CA, USA" and are missing the Year field. Perhaps you could use the info from the Album field to complete the Year?

I've been getting a significant number of mpicore crashes. What's the best way to debug them? Is it MusicIP's problem?

BUG: Time shown in the details at the bottom does not include hours. A track 2 hours and three minutes long appears as "03" minutes long.

A more useful option for Find Duplicates would be to delete all tracks with a duplicate MB ID, and also without a MB ID which have a duplicate Acoustic ID.

If more than 100 tracks are selected and the user hits the "Play" button, ask for confirmation that the user really wants to open hundreds (or thousands) of files in Quicktime...

It would be great if you could fill out the ID3 info needed for "Disk X of Y". If that info is sparse, the sorting of albums in iTunes doesn't work right. The tracks of the album get grouped according to which contain that info (and which don't).

When a track is linked to a wikipedia entry, it would be great if the text from wikipedia was entered into the comments section of the track.

On error messages which list files (The following files could not be loaded...) could we have a button to save the list of files to a file. That way I can run them through command line tools to fix them (or whatever).
 
Profile for mailseth -> Messages posted by mailseth [6]
Go to:   
Powered by JForum 2.1.6 © JForum Team