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 "Paul Rogers (JIRA)" <ji...@apache.org> on 2018/11/18 22:21:00 UTC

[jira] [Created] (IMPALA-7867) Expose collection interfaces, not implementations

Paul Rogers created IMPALA-7867:
-----------------------------------

             Summary: Expose collection interfaces, not implementations
                 Key: IMPALA-7867
                 URL: https://issues.apache.org/jira/browse/IMPALA-7867
             Project: IMPALA
          Issue Type: Improvement
          Components: Frontend
    Affects Versions: Impala 3.0
            Reporter: Paul Rogers
            Assignee: Paul Rogers


When using Java collections, a common Java best practice is to expose the collection interface, but hide the implementation choice. This pattern allows us to start with a generic implementation (an {{ArrayList}}, say), but evolve to a more specific implementation to achieve certain goals (a {{LinkedList}} or {{ImmutableList}}, say.)

For whatever reason, the Impala FE code exposes {{ArrayList}}, {{HashMap}} and other implementation choices as variable types and in method signatures.

This ticket tracks a gradual process of revising the declarations and signatures to use the interfaces {{List}} instead of the implementation {{ArrayList}}.



--
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