You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues-all@impala.apache.org by "Joe McDonnell (JIRA)" <ji...@apache.org> on 2019/04/30 20:02:00 UTC

[jira] [Updated] (IMPALA-5060) Change how Stream::GetBytes returns status

     [ https://issues.apache.org/jira/browse/IMPALA-5060?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Joe McDonnell updated IMPALA-5060:
----------------------------------
    Fix Version/s: Not Applicable

> 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
>             Fix For: Not Applicable
>
>
> 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
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-all-unsubscribe@impala.apache.org
For additional commands, e-mail: issues-all-help@impala.apache.org