This change adds methods that provide access to the actual, underlying
mossStore instance in the bleve/index/store/moss KVStore adaptor.
This enables applications to utilize advanced, mossStore-specific
features (such as partial rollback of indexes). See also
https://issues.couchbase.com/browse/MB-17805
changed date parsing to NOT update internal state of the date
range object (avoids races)
second, when marshaling a facet date range, we now use the
string version, if the time.Time is zero and the string version
is not ""
MultiSearch previously had its own timeout checking. This commit
removes that timeout checking, so that now MultiSearch instead depends
upon the bleve.Index implementations to perform their own context
deadline/timeout checking.
Because deadline/timeout checking is now handled by the bleve.Index
implementations, this change allows applications to provide richer
error and status results during timeouts.
our policy has been to vendor the libraries required for the
command-line portion of the bleve command-line tool. this
included spf13/cobra etc, unfortunately we missed this library
as it is only required for windows users.
bleve check was a consistency checking tool originally developed
as a part of cbft. currently it checks that the term dictionary
counts match the number of postings for the term. in the future
additional checks could be added. this tool has been back
ported to bleve as we've now adopted a single common tool for
both cbft and bleve.
This commit reverts a previous optimization attempt 3f588cd4a that
tried to trim or shrink the array of child searchers in a
search-disjunction.
Although I am not sure why at the moment, that optimization
incorrectly broke higher level boolean queries, but reverting so that
functionality is restored.
In this commit, I saw that there was a simple incrementBytes()
implementation elsewhere in bleve that seemed simpler than using the
big int package.
Edge case note: if the input bytes would overflow in incrementBytes(),
such as with an input of [0xff 0xff 0xff], it returns nil. moss then
treats a nil endKeyExclusive iterator param as a logical
"higher-than-topmost" key, which produces the prefix iteration
behavior that we want for this edge situation.