USE_NULL_SLOTS_CACHE Query Option

Impala optimizes expressions that contain null-rejecting conjuncts - expressions that are false if all "slots" (values returned from a table) are NULL. Evaluating whether a conjunct is null-rejecting can be expensive when performed over a lot of expressions. The "null slots cache" speeds analysis of generated queries with many similar expressions by caching the result of evaluating an expression after slots have been replaced with NULLs.

If query analysis uses a lot of memory, performance of the "null slots cache" can be reviewed by enabling logging org.apache.impala.analysis.Analyzer=DEBUG and searching coordinator logs for messages like


null slots cache size: 286, median entry: 4416.0, 99th entry: 252688.88, hit rate: 0.99456364

Type: BOOLEAN

Default: TRUE

Added in: Impala 4.5