Dave Borowitz d9679cdb60 Add an index-safe predicate that matches all changes
Iad564dd47 was problematic in the error case because it returned
Predicate.not(Predicate.any()). The "any" predicate is not an index
predicate, which produces at least two problems:

* When used in a with another non-index predicate, it
  might throw "no ChangeDataSource" from AndSource/OrSource.
* More dangerously, when combined with an index predicate, it is used as
  a post-filtering predicate. A post-filtering predicate that matches no
  results means it gets applied to every change in the index before
  returning an empty set, which is bad.

Instead, reuse a handy existing index predicate that is designed to
return no results efficiently from the index:
ChangeStatusPredicate.NONE. Expose this from a more general location,
ChangeIndexPredicate#none().

Change-Id: Ic9a7e277070cff7768ec91c1972cf8e9f6deacb1
2019-03-06 00:31:58 +00:00
..
2018-12-21 13:54:37 -08:00
2018-11-13 15:06:26 -08:00
2018-08-14 08:07:59 +02:00