Package com.yahoo.schema.processing
Class MakeDefaultSummaryTheSuperSet
java.lang.Object
com.yahoo.schema.processing.Processor
com.yahoo.schema.processing.MakeDefaultSummaryTheSuperSet
All summary fields which are not attributes
must currently be present in the default summary class,
since the default summary class also defines the docsum.dat format.
This processor adds any missing summaries to the default summary.
When that is decoupled from the actual summaries returned, this
processor can be removed. Note: the StreamingSummary also takes advantage of
the fact that default is the superset.
All other summary logic should work unchanged without this processing step
except that IndexStructureValidator.validateSummaryFields must be changed to
consider all summaries, not just the default, i.e change to
if (search.getSummaryField(expr.getFieldName()) == null)
This must be done after other summary processors.
- Author:
- bratseth
-
Field Summary
Fields inherited from class com.yahoo.schema.processing.Processor
deployLogger, queryProfiles, rankProfileRegistry, schema
-
Constructor Summary
ConstructorDescriptionMakeDefaultSummaryTheSuperSet
(Schema schema, com.yahoo.config.application.api.DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles) -
Method Summary
Modifier and TypeMethodDescriptionvoid
process
(boolean validate, boolean documentsOnly) Processes the input search definition by modifying the input search and its documents, and returns the input search definition.Methods inherited from class com.yahoo.schema.processing.Processor
addField, fail, formatError, info, info, matchingRankSettingsIterator, newProcessException, newProcessException, process, warn, warn
-
Constructor Details
-
MakeDefaultSummaryTheSuperSet
public MakeDefaultSummaryTheSuperSet(Schema schema, com.yahoo.config.application.api.DeployLogger deployLogger, RankProfileRegistry rankProfileRegistry, QueryProfiles queryProfiles)
-
-
Method Details
-
process
public void process(boolean validate, boolean documentsOnly) Description copied from class:Processor
Processes the input search definition by modifying the input search and its documents, and returns the input search definition.- Specified by:
process
in classProcessor
- Parameters:
validate
- true to throw exceptions on validation errors, false to make the best possible effort at completing processing without throwing an exception. If we are not validating, emitting warnings have no effect and can (but must not) be skipped.documentsOnly
- true to skip processing (including validation, regardless of the validate setting) of aspects not relating to document definitions (e.g rank profiles)
-