1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-08-06 06:07:37 +02:00

* Switch to SimpleAnalyzer and optimize index in endIndexing() again.

This commit is contained in:
Christian Muehlhaeuser
2014-09-16 01:37:53 +02:00
parent f837e9e7e5
commit a38bf949dd
2 changed files with 9 additions and 9 deletions

View File

@@ -43,7 +43,7 @@ FuzzyIndex::FuzzyIndex( QObject* parent, const QString& filename, bool wipe )
tDebug() << "Opening Lucene directory:" << m_lucenePath;
try
{
m_analyzer = newLucene<StandardAnalyzer>(LuceneVersion::LUCENE_CURRENT);
m_analyzer = newLucene<SimpleAnalyzer>();
m_luceneDir = FSDirectory::open( m_lucenePath.toStdWString() );
}
catch ( LuceneException& error )
@@ -127,7 +127,7 @@ void
FuzzyIndex::endIndexing()
{
tDebug( LOGVERBOSE ) << Q_FUNC_INFO << "Finishing indexing:" << m_lucenePath;
// m_luceneWriter->optimize();
m_luceneWriter->optimize();
m_luceneWriter->close();
m_luceneWriter.reset();
@@ -146,13 +146,13 @@ FuzzyIndex::appendFields( const Tomahawk::IndexData& data )
if ( !data.track.isEmpty() )
{
doc->add(newLucene<Field>(L"fulltext", Tomahawk::DatabaseImpl::sortname( QString( "%1 %2" ).arg( data.artist ).arg( data.track ) ).toStdWString(),
Field::STORE_NO, Field::INDEX_NOT_ANALYZED ) );
Field::STORE_NO, Field::INDEX_ANALYZED ) );
doc->add(newLucene<Field>(L"track", Tomahawk::DatabaseImpl::sortname( data.track ).toStdWString(),
Field::STORE_NO, Field::INDEX_NOT_ANALYZED ) );
Field::STORE_NO, Field::INDEX_ANALYZED ) );
doc->add(newLucene<Field>(L"artist", Tomahawk::DatabaseImpl::sortname( data.artist ).toStdWString(),
Field::STORE_NO, Field::INDEX_NOT_ANALYZED ) );
Field::STORE_NO, Field::INDEX_ANALYZED ) );
doc->add(newLucene<Field>(L"artistid", QString::number( data.artistId ).toStdWString(),
Field::STORE_YES, Field::INDEX_NO ) );
@@ -163,7 +163,7 @@ FuzzyIndex::appendFields( const Tomahawk::IndexData& data )
else if ( !data.album.isEmpty() )
{
doc->add(newLucene<Field>(L"album", Tomahawk::DatabaseImpl::sortname( data.album ).toStdWString(),
Field::STORE_NO, Field::INDEX_NOT_ANALYZED ) );
Field::STORE_NO, Field::INDEX_ANALYZED ) );
doc->add(newLucene<Field>(L"albumid", QString::number( data.id ).toStdWString(),
Field::STORE_YES, Field::INDEX_NO ) );
@@ -268,11 +268,11 @@ FuzzyIndex::search( const Tomahawk::query_ptr& query )
minScore = 0.00;
}
TopScoreDocCollectorPtr collector = TopScoreDocCollector::create( 99999, false );
TopScoreDocCollectorPtr collector = TopScoreDocCollector::create( 50, false );
m_luceneSearcher->search( qry, collector );
Collection<ScoreDocPtr> hits = collector->topDocs()->scoreDocs;
for ( uint i = 0; i < collector->getTotalHits(); i++ )
for ( uint i = 0; i < collector->getTotalHits() && i < 50; i++ )
{
DocumentPtr d = m_luceneSearcher->doc( hits[i]->doc );
float score = hits[i]->score;

View File

@@ -68,7 +68,7 @@ private:
QMutex m_mutex;
QString m_lucenePath;
boost::shared_ptr<Lucene::StandardAnalyzer> m_analyzer;
boost::shared_ptr<Lucene::SimpleAnalyzer> m_analyzer;
Lucene::IndexWriterPtr m_luceneWriter;
Lucene::IndexReaderPtr m_luceneReader;
Lucene::DirectoryPtr m_luceneDir;