You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@drill.apache.org by Daniel Barclay <db...@maprtech.com> on 2015/05/14 02:29:00 UTC

canceling concurrent queries - memory leaks; maybe other errors

The attached rough test class frequently (though not deterministically)
yields errors.  (The class starts 10 (small) queries concurrently, and
then tries to cancel them after varying amounts of time.)


The run reflected in the attached log file has some memory leaks.
(Look for "IllegalStateException: Attempted to close accountor with ..."
and "IllegalStateException: Failure while closing accountor.  Expected
private and shared pools ...")


It also has a number of Netty exceptionCaught warnings, such as this:

16:35:21.538 [UserServer-1] WARN  io.netty.channel.DefaultChannelPipeline - An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception.


(There are also some "SYSTEM ERROR" errors with no error message text, for
example:

16:35:20.859 [2aac2051-c992-a00f-cb42-4fd7c70e4ce3:frag:0:0] INFO  org.apache.drill.exec.work.foreman.Foreman - State change requested.  CANCELLATION_REQUESTED --> FAILED
org.apache.drill.common.exceptions.UserRemoteException: SYSTEM ERROR:

Fragment 0:0

[Error Id: 76db912a-a566-4af5-83ff-e07595980695 on dev-linux2:31010]
	at org.apache.drill.exec.work.foreman.QueryManager$1.statusUpdate(QueryManager.java:481) [classes/:na]
	at org.apache.drill.exec.work.foreman.QueryManager$RootStatusReporter.statusChange(QueryManager.java:461) [classes/:na]
	at org.apache.drill.exec.work.fragment.AbstractStatusReporter.fail(AbstractStatusReporter.java:90) [classes/:na]
	at org.apache.drill.exec.work.fragment.AbstractStatusReporter.fail(AbstractStatusReporter.java:86) [classes/:na]
	at org.apache.drill.exec.work.fragment.FragmentExecutor.sendFinalState(FragmentExecutor.java:291) [classes/:na]
	at org.apache.drill.exec.work.fragment.FragmentExecutor.run(FragmentExecutor.java:255) [classes/:na]
	at org.apache.drill.common.SelfCleaningRunnable.run(SelfCleaningRunnable.java:38) [classes/:na]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_72]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_72]
	at java.lang.Thread.run(Thread.java:745) [na:1.7.0_72]

Are those expected?)


Daniel
-- 
Daniel Barclay
MapR Technologies