0
0

Merge pull request #645 from steveyen/scorch

scorch InternalID() handles case of unknown docId
This commit is contained in:
Marty Schoch 2017-12-01 07:21:26 -05:00 committed by GitHub
commit f521d80835
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 10 additions and 3 deletions

View File

@ -49,8 +49,7 @@ func (s *Scorch) mainLoop() {
if s.root.segment[i].deleted == nil {
newSnapshot.segment[i].deleted = delta
} else {
newSnapshot.segment[i].deleted = s.root.segment[i].deleted.Clone()
newSnapshot.segment[i].deleted.Or(delta)
newSnapshot.segment[i].deleted = roaring.Or(s.root.segment[i].deleted, delta)
}
newSnapshot.offsets[i] = running

View File

@ -93,6 +93,14 @@ func TestIndexReader(t *testing.T) {
t.Errorf("count was 2, but only saw %d", actualCount)
}
internalIDBogus, err := indexReader.InternalID("a-bogus-docId")
if err != nil {
t.Fatal(err)
}
if internalIDBogus != nil {
t.Errorf("expected bogus docId to have nil InternalID")
}
internalID2, err := indexReader.InternalID("2")
if err != nil {
t.Fatal(err)

View File

@ -256,7 +256,7 @@ func (i *IndexSnapshot) InternalID(id string) (rv index.IndexInternalID, err err
}()
next, err := tfr.Next(nil)
if err != nil {
if err != nil || next == nil {
return nil, err
}