[
https://issues.apache.org/jira/browse/IMPALA-5060?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Joe McDonnell resolved IMPALA-5060.
-----------------------------------
Resolution: Won't Fix
After thinking about this, I don't think this interface should change.
> Change how Stream::GetBytes returns status
> ------------------------------------------
>
> Key: IMPALA-5060
> URL: https://issues.apache.org/jira/browse/IMPALA-5060
> Project: IMPALA
> Issue Type: Improvement
> Components: Backend
> Affects Versions: Impala 2.9.0
> Reporter: Joe McDonnell
> Assignee: Joe McDonnell
> Priority: Minor
>
> ScannerContext::Stream::GetBytes currently returns a boolean and also takes
> in a Status*. It will always fill in the Status* when it returns false, but
> it may not fill it in when it returns true. This is error prone, because code
> might assume that GetBytes initializes the status. See IMPALA-5055 as an
> example bug.
> There are two approaches to consider:
> 1. Have GetBytes initialize the status to Status::OK() when it returns true.
> 2. Change GetBytes to return a Status rather than returning a boolean.
> Since GetBytes is used underneath several other functions like ReadBytes,
> SkipBytes, and more specialized functions like ReadInt, ReadVLong, ReadText,
> etc, every scanner is impacted by these changes. This makes it important to
> do performance/functionality testing on any solution.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)