[ https://issues.apache.org/jira/browse/DRILL-3229?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14970439#comment-14970439 ]
Parth Chandra commented on DRILL-3229: -------------------------------------- Nice doc. I have a couple of quick questions - In the list writer, when the map() method is called, I didn't quite follow the reason for tracking the current field name. What is it needed for? The Type promotion proposal is excellent. But with type promotion we will update the underlying writer to a UnionWriter the moment a type change occurs. Is it possible for us to to have a hierarchy of promotable types and we promote to a higher Scalar type (e.g. Int gets promoted to a Varchar) as a first step and Union if we encounter more than one type change or a change to a complex type. I'm OK if we think this is too complex to implement. How will Screen handle a Union type? In general, a user level tool (sqlline included) will not know how to handle this. Can we have screen return a varchar representation of the Union type? During data exploration the user will then see there are type changes and can then use the type introspection and cast methods appropriately. What about metadata only queries ( i.e select * ... limit 0)? What type would the user application get? For Function Evaluation my preference is to have code generation rather than have UDFs that take a union parameter. For case statements - If a case statment can output a Union type, the end user will presumably have to resolve the different types using type introspection and an outer case statement. Actually I don't have enough idea about end user use cases to choose which is more desirable. Should we leave it as choice #2 and see what users ask for? Jacques had mentioned that you have an idea for introducing a Untyped null type. How would that fit in with this design? > Create a new EmbeddedVector > --------------------------- > > Key: DRILL-3229 > URL: https://issues.apache.org/jira/browse/DRILL-3229 > Project: Apache Drill > Issue Type: Sub-task > Components: Execution - Codegen, Execution - Data Types, Execution - > Relational Operators, Functions - Drill > Reporter: Jacques Nadeau > Assignee: Steven Phillips > Fix For: Future > > > Embedded Vector will leverage a binary encoding for holding information about > type for each individual field. -- This message was sent by Atlassian JIRA (v6.3.4#6332)