drill-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DRILL-2288) ScanBatch violates IterOutcome protocol for zero-row sources [was: missing JDBC metadata (schema) for 0-row results...]
Date Wed, 04 Nov 2015 21:41:27 GMT

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

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

Github user dsbos commented on a diff in the pull request:

    https://github.com/apache/drill/pull/228#discussion_r43943789
  
    --- Diff: exec/java-exec/src/main/java/org/apache/drill/exec/vector/complex/fn/JsonReader.java
---
    @@ -93,13 +93,15 @@ public void ensureAtLeastOneField(ComplexWriter writer) {
         if (!atLeastOneWrite) {
           // if we had no columns, create one empty one so we can return some data for count
purposes.
           SchemaPath sp = columns.get(0);
    -      PathSegment root = sp.getRootSegment();
    +      PathSegment fieldPath = sp.getRootSegment();
           BaseWriter.MapWriter fieldWriter = writer.rootAsMap();
    -      while (root.getChild() != null && !root.getChild().isArray()) {
    -        fieldWriter = fieldWriter.map(root.getNameSegment().getPath());
    -        root = root.getChild();
    +      while (fieldPath.getChild() != null && ! fieldPath.getChild().isArray())
{
    +        fieldWriter = fieldWriter.map(fieldPath.getNameSegment().getPath());
    +        fieldPath = fieldPath.getChild();
    +      }
    +      if (fieldWriter.isEmptyMap()) {
    --- End diff --
    
    > can we remove the ensureAtLeastOneField property  
    
    Oh, you mean the atLeastOneWrite property?
    
    Yes, I think that will work.  I'll test that..


> ScanBatch violates IterOutcome protocol for zero-row sources [was: missing JDBC metadata
(schema) for 0-row results...]
> -----------------------------------------------------------------------------------------------------------------------
>
>                 Key: DRILL-2288
>                 URL: https://issues.apache.org/jira/browse/DRILL-2288
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Storage - Information Schema
>            Reporter: Daniel Barclay (Drill)
>            Assignee: Daniel Barclay (Drill)
>             Fix For: 1.3.0
>
>         Attachments: Drill2288NoResultSetMetadataWhenZeroRowsTest.java
>
>
> The ResultSetMetaData object from getMetadata() of a ResultSet is not set up (getColumnCount()
returns zero, and trying to access any other metadata throws IndexOutOfBoundsException) for
a result set with zero rows, at least for one from DatabaseMetaData.getColumns(...).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message