Incompatible query processor options in content and accessibility auditor

Background

Specific query processor options are incompatible with content and accessibility auditor and cause them to return an error. This article outlines the incompatible options and provides a workaround if you require them for your search.

Any query processor options’s that enable term at a time mode will cause accessibility auditor and content auditor to fail. For information on document matching modes within Funnelback see our documentation on the document matching modes of Funnelback ranking algorithms.

Workaround

Ensure your search, any profiles or extra searches within your collection does not include the following incompatible query processor options:

  • truncation_allowed=3 (any value greater than 0)

  • daat=0

  • service_volume=low

If you require term at a time document matching mode in your collection and also utilise the content and accessibility auditor please set these query processor options via hook scripts checking the search type is SEARCH or EXTRA_SEARCH.

hook_pre_process.groovy - Configure Search query processor options

hook_pre_process.groovy
import com.funnelback.publicui.search.model.transaction.SearchQuestion.SearchQuestionType

//Include these query processor options only in SEARCH type as these break CA and AA
if( com.funnelback.publicui.search.model.transaction.SearchQuestion.SearchQuestionType.SEARCH.equals( transaction.getQuestion().getQuestionType() ) ) {
        //Add to DynamicQueryProcessorOptions as 'truncation_allowed' cannot be set via cgi
        transaction.getQuestion().getDynamicQueryProcessorOptions().add("-daat=0");
        transaction.getQuestion().getDynamicQueryProcessorOptions().add("-truncation_allowed=3");
}

hook_extra_searches.groovy - Configure extra searches query processor options

hook_extra_searches.groovy
import com.funnelback.publicui.search.model.transaction.SearchQuestion.SearchQuestionType

//Include these query processor options only in SEARCH type as these break CA and AA
if( com.funnelback.publicui.search.model.transaction.SearchQuestion.SearchQuestionType.SEARCH.equals( transaction.getQuestion().getQuestionType() ) ) {
        transaction.extraSearchesQuestions.each() {
                //Add to DynamicQueryProcessorOptions as 'truncation_allowed' cannot be set via cgi
                it.value.getDynamicQueryProcessorOptions().add("-daat=0");
                it.value.getDynamicQueryProcessorOptions().add("-truncation_allowed=3");
        }
}