Page MenuHomePhabricator

Fix an issue with selecting the right stemmed ngrams with Ferret engine queries
ClosedPublic

Authored by epriestley on Sep 12 2017, 2:48 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, May 3, 8:32 AM
Unknown Object (File)
Sun, Apr 28, 2:29 AM
Unknown Object (File)
Thu, Apr 25, 2:23 AM
Unknown Object (File)
Mon, Apr 22, 3:20 PM
Unknown Object (File)
Sun, Apr 21, 3:53 PM
Unknown Object (File)
Fri, Apr 19, 2:42 AM
Unknown Object (File)
Fri, Apr 19, 2:42 AM
Unknown Object (File)
Fri, Apr 19, 2:42 AM
Subscribers
None

Details

Summary

Ref T12819. In D18581, I corrected one bug (ngram selection for terms) but introduced a minor new bug. We now pass ' query ' (term corpus with boundary spaces) to the stemmer, but it bails out on this since English words don't start with spaces.

Trim these extra boundary spaces off before invoking the stemmer.

The practical effect of this is that searching for non-stem variations of a word ("detection") now finds stemmed variations again ("detect"). Prior to fixing this bug, the stem could find longer variations but not the other way around.

Test Plan

Searched for "detection", found results matching "detect" after patch (and saw same results for "detect" and "detection").

Diff Detail

Repository
rP Phabricator
Branch
ferret8
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 18426
Build 24811: Run Core Tests
Build 24810: arc lint + arc unit