[
https://issues.apache.org/jira/browse/IMPALA-11046?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Steve Carlin reassigned IMPALA-11046:
-------------------------------------
Assignee: Steve Carlin
> When GetTupleIdx fails, it should return INVALID_IDX, not bring down impalad
> ----------------------------------------------------------------------------
>
> Key: IMPALA-11046
> URL: https://issues.apache.org/jira/browse/IMPALA-11046
> Project: IMPALA
> Issue Type: Improvement
> Components: Backend
> Reporter: Steve Carlin
> Assignee: Steve Carlin
> Priority: Major
>
> The following code exists in runtime/descriptors.cc:
> int RowDescriptor::GetTupleIdx(TupleId id) const {
> DCHECK_LT(id, tuple_idx_map_.size()) << "RowDescriptor: " << DebugString();
> return tuple_idx_map_[id];
> }
>
> If the id doesn't exist in the map, it returns INVALID_IDX. However, if the
> id >= tuple_idx_size, it crashes the server.
> I was working on an issue on the frontend where I passed an incorrect index
> and it failed the query when I passed a bad index in both instances, but it
> was much preferable not to crash the server and only fail the query. So the
> proposal here is to get rid of the DCHECK_LT and replace it with a "return
> INVALID_IDX" when it fails.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]