Page MenuHomePhabricator

Make Ferret query functions sticky only if their values are not quoted
ClosedPublic

Authored by epriestley on Apr 14 2020, 5:03 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Dec 7, 3:54 PM
Unknown Object (File)
Thu, Dec 5, 4:57 PM
Unknown Object (File)
Wed, Dec 4, 3:52 PM
Unknown Object (File)
Tue, Dec 3, 10:07 AM
Unknown Object (File)
Tue, Dec 3, 4:31 AM
Unknown Object (File)
Thu, Nov 28, 9:59 PM
Unknown Object (File)
Thu, Nov 28, 9:42 PM
Unknown Object (File)
Mon, Nov 25, 4:43 PM
Subscribers
None

Details

Summary

Ref T13509. Currently, functions are "sticky", but this stickness is in the query execution layer.

Instead:

  • move stickiness to the query compiler; and
  • make it so that functions are not sticky if their arguments are quoted.

For example:

  • title:x y previously meant title:x title:y (and still does). The "title:" is sticky.
  • title:"x" y previously meant title:x title:y. It now means title:x all:y. The "title:" is not sticky because the argument is quoted.
Test Plan

Added unit tests, ran unit tests.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

This revision was not accepted when it landed; it landed in state Needs Review.Apr 14 2020, 5:47 PM
This revision was automatically updated to reflect the committed changes.