Преглед на файлове

减少map查询的频率,索引速度提升50%

Hui Chen преди 10 години
родител
ревизия
0bde79afa4
променени са 1 файла, в които са добавени 3 реда и са изтрити 4 реда
  1. 3 4
      core/indexer.go

+ 3 - 4
core/indexer.go

@@ -176,10 +176,6 @@ func (indexer *Indexer) Lookup(
 	for ; indexPointers[0] >= 0; indexPointers[0]-- {
 		// 以第一个搜索键出现的文档作为基准,并遍历其他搜索键搜索同一文档
 		baseDocId := indexer.getDocId(table[0], indexPointers[0])
-		if _, ok := indexer.tableLock.docs[baseDocId]; !ok {
-			continue
-		}
-
 		if docIds != nil {
 			_, found := docIds[baseDocId]
 			if !found {
@@ -212,6 +208,9 @@ func (indexer *Indexer) Lookup(
 		}
 
 		if found {
+			if _, ok := indexer.tableLock.docs[baseDocId]; !ok {
+				continue
+			}
 			indexedDoc := types.IndexedDocument{}
 
 			// 当为LocationsIndex时计算关键词紧邻距离