Chun Chang created DRILL-1799: --------------------------------- Summary: kvgen() leaking memory? Key: DRILL-1799 URL: https://issues.apache.org/jira/browse/DRILL-1799 Project: Apache Drill Issue Type: Bug Components: Functions - Drill Affects Versions: 0.7.0 Reporter: Chun Chang
#Mon Dec 01 11:15:02 PST 2014 git.commit.id.abbrev=a60e1db Running the following query that contains kvgen() appears running out of memory and fails. There appears to be a 50 row limit. If I add a limit to the query, limit 50 or less works, with limit 51, the query fails. 0: jdbc:drill:schema=dfs.drillTestDir> select kvgen(sub.esr) from `es/esr-part` sub; The query returns result but fails in the middle of displaying the result. No other error message except the following stack: 18:06:08.158 [2b82e176-0aeb-9b05-15f2-520eea269a1c:frag:0:0] WARN o.a.d.e.w.fragment.FragmentExecutor - Error while initializing or executing fragment java.lang.IllegalStateException: Attempted to close accountor with 151 buffer(s) still allocatedfor QueryId: 2b82e176-0aeb-9b05-15f2-520eea269a1c, MajorFragmentId: 0, MinorFragmentId: 0. Total 1 allocation(s) of byte size(s): 4096, at stack location: org.apache.drill.exec.memory.TopLevelAllocator$ChildAllocator.buffer(TopLevelAllocator.java:212) org.apache.drill.exec.vector.UInt1Vector.allocateNewSafe(UInt1Vector.java:137) org.apache.drill.exec.vector.NullableBigIntVector.allocateNewSafe(NullableBigIntVector.java:173) org.apache.drill.exec.vector.complex.MapVector.allocateNewSafe(MapVector.java:165) org.apache.drill.exec.vector.complex.RepeatedMapVector.allocateNewSafe(RepeatedMapVector.java:236) org.apache.drill.exec.vector.complex.MapVector.allocateNewSafe(MapVector.java:165) org.apache.drill.exec.vector.complex.MapVector.allocateNewSafe(MapVector.java:165) org.apache.drill.exec.vector.complex.impl.SingleMapWriter.allocate(SingleMapWriter.java:135) org.apache.drill.exec.vector.complex.impl.RepeatedMapWriter.allocate(RepeatedMapWriter.java:137) org.apache.drill.exec.vector.complex.impl.SingleListWriter.allocate(SingleListWriter.java:116) org.apache.drill.exec.vector.complex.impl.ComplexWriterImpl.allocate(ComplexWriterImpl.java:157) org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.doAlloc(ProjectRecordBatch.java:217) org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.doWork(ProjectRecordBatch.java:144) org.apache.drill.exec.record.AbstractSingleRecordBatch.innerNext(AbstractSingleRecordBatch.java:89) org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.innerNext(ProjectRecordBatch.java:129) org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:106) org.apache.drill.exec.physical.impl.validate.IteratorValidatorBatchIterator.next(IteratorValidatorBatchIterator.java:124) org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:86) org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:76) org.apache.drill.exec.record.AbstractSingleRecordBatch.innerNext(AbstractSingleRecordBatch.java:52) org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.innerNext(ProjectRecordBatch.java:129) org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:106) org.apache.drill.exec.physical.impl.validate.IteratorValidatorBatchIterator.next(IteratorValidatorBatchIterator.java:124) org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:67) -- This message was sent by Atlassian JIRA (v6.3.4#6332)