Joe McDonnell created IMPALA-13057:
--------------------------------------
Summary: Incorporate tuple/slot information into the tuple cache
key
Key: IMPALA-13057
URL: https://issues.apache.org/jira/browse/IMPALA-13057
Project: IMPALA
Issue Type: Bug
Components: Frontend
Affects Versions: Impala 4.4.0
Reporter: Joe McDonnell
Assignee: Joe McDonnell
Since the tuple and slot information is kept separately in the descriptor
table, it does not get incorporated into the PlanNode thrift used for the tuple
cache key. This means that the tuple cache can't distinguish between these two
queries:
{noformat}
select int_col1 from table;
select int_col2 from table;{noformat}
To solve this, the tuple/slot information needs to be incorporated into the
cache key. PlanNode::initThrift() walks through each tuple, so this is a good
place to serialize the TupleDescriptor/SlotDescriptors and incorporate it into
the hash.
The tuple ids and slot ids are global ids, so the value is influenced by the
entirety of the query. This is a problem for matching cache results across
different queries. As part of incorporating the tuple/slot information, we
should also add an ability to translate tuple/slot ids into ids local to a
subtree.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)