Chun Chang created DRILL-1700:
---------------------------------

             Summary: caught a memory assertion on an order by
                 Key: DRILL-1700
                 URL: https://issues.apache.org/jira/browse/DRILL-1700
             Project: Apache Drill
          Issue Type: Bug
          Components: Query Planning & Optimization
    Affects Versions: 0.7.0
            Reporter: Chun Chang
            Priority: Blocker


#Wed Nov 12 13:06:45 EST 2014
git.commit.id.abbrev=1e21045

The following query on a 1 million row data caused a memory assertion.

0: jdbc:drill:schema=dfs> select columns[0], columns[1], columns[2] from 
`aggregate_1m.csv` order by cast(columns[0] as int);
+------------+------------+------------+
|   EXPR$0   |   EXPR$1   |   EXPR$2   |
+------------+------------+------------+
Query failed: Failure while running fragment.[ 
7bc42b6c-c00a-41c2-af43-331655e5a178 on qa-node119.qa.lab:31010 ]


java.lang.RuntimeException: java.sql.SQLException: Failure while executing 
query.
        at sqlline.SqlLine$IncrementalRows.hasNext(SqlLine.java:2514)
        at sqlline.SqlLine$TableOutputFormat.print(SqlLine.java:2148)
        at sqlline.SqlLine.print(SqlLine.java:1809)

The same query adding a limit (say limit 100) worked. Here is the assertion 
stack in drill bit log:

2014-11-12 15:16:22,864 [f89183d7-f94d-4ece-818f-8e597859d529:frag:0:0] WARN  
o.a.d.e.w.fragment.FragmentExecutor - Error while initializing or executing 
fragment
java.lang.AssertionError: null
        at 
org.apache.drill.exec.memory.AtomicRemainder.get(AtomicRemainder.java:126) 
~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:0.7.0-incubating-SNAPSHOT]
        at 
org.apache.drill.exec.memory.AtomicRemainder.forceGet(AtomicRemainder.java:85) 
~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:0.7.0-incubating-SNAPSHOT]
        at 
org.apache.drill.exec.memory.Accountor.forceAdditionalReservation(Accountor.java:142)
 
~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:0.7.0-incubating-SNAPSHOT]
        at 
org.apache.drill.exec.memory.Accountor.transferTo(Accountor.java:111) 
~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:0.7.0-incubating-SNAPSHOT]
        at io.netty.buffer.DrillBuf.transferAccounting(DrillBuf.java:182) 
~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:4.0.24.Final]
        at 
org.apache.drill.exec.memory.TopLevelAllocator$ChildAllocator.takeOwnership(TopLevelAllocator.java:192)
 
~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:0.7.0-incubating-SNAPSHOT]
        at 
org.apache.drill.exec.physical.impl.xsort.ExternalSortBatch.takeOwnership(ExternalSortBatch.java:464)
 
~[drill-java-exec-0.7.0-incubating-SNAPSHOT-rebuffed.jar:0.7.0-incubating-SNAPSHOT]



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

Reply via email to