diff --git a/server/djrandom/metadata_fixer/metadata_fixer.py b/server/djrandom/metadata_fixer/metadata_fixer.py index c89ed8fed76251b858ad7facef3649fc4ed10da1..03005e09624acd696e254296289c596d7122dfb7 100644 --- a/server/djrandom/metadata_fixer/metadata_fixer.py +++ b/server/djrandom/metadata_fixer/metadata_fixer.py @@ -9,9 +9,8 @@ import urllib2 from djrandom import daemonize from djrandom import utils from djrandom.model.mp3 import MP3 -from djrandom.database import Session, init_db +from djrandom.database import Session, init_db, indexer from djrandom.scanner import metadata -from djrandom.scanner import indexer log = logging.getLogger(__name__) @@ -26,7 +25,6 @@ class MetadataFixer(object): def __init__(self, solr_url, echonest_api_key): self.api_key = echonest_api_key - self.idx = indexer.Indexer(solr_url) def identify_song(self, mp3): json_fp = mp3.get_fingerprint() @@ -72,7 +70,6 @@ class MetadataFixer(object): try: self.process(mp3) mp3.state = MP3.READY - self.idx.add_mp3(mp3) log.info('found: %s / %s' % (mp3.artist, mp3.title)) n_ok += 1 except NoMetadataError: @@ -82,9 +79,10 @@ class MetadataFixer(object): log.error(traceback.format_exc()) n_err += 1 mp3.state = MP3.ERROR + indexer.add_mp3(mp3) Session.add(mp3) Session.commit() - self.idx.commit() + indexer.commit() log.debug('total: %d songs, found: %d' % (n_bad, n_ok)) def run(self, run_once): @@ -99,8 +97,8 @@ class MetadataFixer(object): def run_fixer(solr_url, echonest_api_key, db_url, run_once): socket.setdefaulttimeout(300) - init_db(db_url) - fixer = MetadataFixer(solr_url, echonest_api_key) + init_db(db_url, solr_url) + fixer = MetadataFixer(echonest_api_key) fixer.run(run_once)