scorch zap optimize processDocument() loc inner loop
This commit is contained in:
parent
15242af465
commit
8c0f402d4b
|
@ -266,21 +266,34 @@ func (s *Segment) processDocument(result *index.AnalysisResult) {
|
||||||
locationBS := s.PostingsLocs[pid]
|
locationBS := s.PostingsLocs[pid]
|
||||||
if len(tokenFreq.Locations) > 0 {
|
if len(tokenFreq.Locations) > 0 {
|
||||||
locationBS.AddInt(int(docNum))
|
locationBS.AddInt(int(docNum))
|
||||||
|
|
||||||
|
locfields := s.Locfields[pid]
|
||||||
|
locstarts := s.Locstarts[pid]
|
||||||
|
locends := s.Locends[pid]
|
||||||
|
locpos := s.Locpos[pid]
|
||||||
|
locarraypos := s.Locarraypos[pid]
|
||||||
|
|
||||||
for _, loc := range tokenFreq.Locations {
|
for _, loc := range tokenFreq.Locations {
|
||||||
var locf = fieldID
|
var locf = fieldID
|
||||||
if loc.Field != "" {
|
if loc.Field != "" {
|
||||||
locf = uint16(s.getOrDefineField(loc.Field))
|
locf = uint16(s.getOrDefineField(loc.Field))
|
||||||
}
|
}
|
||||||
s.Locfields[pid] = append(s.Locfields[pid], locf)
|
locfields = append(locfields, locf)
|
||||||
s.Locstarts[pid] = append(s.Locstarts[pid], uint64(loc.Start))
|
locstarts = append(locstarts, uint64(loc.Start))
|
||||||
s.Locends[pid] = append(s.Locends[pid], uint64(loc.End))
|
locends = append(locends, uint64(loc.End))
|
||||||
s.Locpos[pid] = append(s.Locpos[pid], uint64(loc.Position))
|
locpos = append(locpos, uint64(loc.Position))
|
||||||
if len(loc.ArrayPositions) > 0 {
|
if len(loc.ArrayPositions) > 0 {
|
||||||
s.Locarraypos[pid] = append(s.Locarraypos[pid], loc.ArrayPositions)
|
locarraypos = append(locarraypos, loc.ArrayPositions)
|
||||||
} else {
|
} else {
|
||||||
s.Locarraypos[pid] = append(s.Locarraypos[pid], nil)
|
locarraypos = append(locarraypos, nil)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
s.Locfields[pid] = locfields
|
||||||
|
s.Locstarts[pid] = locstarts
|
||||||
|
s.Locends[pid] = locends
|
||||||
|
s.Locpos[pid] = locpos
|
||||||
|
s.Locarraypos[pid] = locarraypos
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue