[ 
https://issues.apache.org/jira/browse/DRILL-8188?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17523097#comment-17523097
 ] 

ASF GitHub Bot commented on DRILL-8188:
---------------------------------------

luocooong commented on code in PR #2515:
URL: https://github.com/apache/drill/pull/2515#discussion_r851626806


##########
exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/scan/v3/schema/ScanSchemaResolver.java:
##########
@@ -189,7 +189,7 @@ private void insertColumn(ColumnMetadata col) {
     switch (mode) {
       case FIRST_READER_SCHEMA:
       case READER_SCHEMA:
-        if (schema.projectionType() != ProjectionType.ALL) {
+        if (schema.projectionType() != ProjectionType.ALL && !col.isArray()) {

Review Comment:
   Let's look at this case :
   1. batch reader received the project column, from ` SELECT path, data_type, 
file_name FROM ` in the constructor().
   2. schema is [TupleSchema [ProjectedColumn [`path` (LATE:REQUIRED)]], 
[ProjectedColumn [`data_type` (LATE:REQUIRED)]], [ProjectedColumn [`file_name` 
(LATE:REQUIRED)]]].
   3. ProjectionType = 'SOME'.
   4. batch reader create new array column in next().
   5. do the project for the schema.
   ```java
   ColumnHandle existing = schema.find(colSchema.name());
    if (existing == null) {
     insertColumn(colSchema);
   }
   ```
   6. catch and throw the `IllegalStateException`.
   7. failed to reader the format data.
   
   In EVF1, creating array fields dynamically is allowed and does not throw 
such exceptions.





> Convert HDF5 format to EVF2
> ---------------------------
>
>                 Key: DRILL-8188
>                 URL: https://issues.apache.org/jira/browse/DRILL-8188
>             Project: Apache Drill
>          Issue Type: Improvement
>    Affects Versions: 1.20.0
>            Reporter: Cong Luo
>            Assignee: Cong Luo
>            Priority: Major
>
> Use EVF V2 instead of old V1.
> Also, fixed a few bugs in V2 framework.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to