[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: NPE in flink sql over-window

I also get warnning that CodeCache is full around that time. It's printed by JVM and doesn't have timestamp. But I suspect that it's because so many failure recoveries from checkpoint and the sql queries are dynamically compiled too many times.

Java HotSpot(TM) 64-Bit Server VM warning: CodeCache is full. Compiler has been disabled.
Java HotSpot(TM) 64-Bit Server VM warning: Try increasing the code cache size using -XX:ReservedCodeCacheSize=
CodeCache: size=245760Kb used=244114Kb max_used=244146Kb free=1645Kb
bounds [0x00007fa4fd000000, 0x00007fa50c000000, 0x00007fa50c000000]
total_blobs=54308 nmethods=53551 adapters=617
compilation: disabled (not enough contiguous free space left)

From: Yan Zhou [FDS Science] <yzhou@xxxxxxxxxxx>
Sent: Tuesday, May 29, 2018 10:52:18 PM
To: user@xxxxxxxxxxxxxxxx
Subject: NPE in flink sql over-window


I am using flink sql 1.5.0. My application throws NPE. And after it recover from checkpoint automatically, it throws NPE immediately from same line of code. 

My application read message from kafka, convert the datastream into a table, issue an Over-window aggregation and write the result into a sink. NPE throws from class ProcTimeBoundedRangeOver. Please see exception log at the bottom.

The exceptions always happens after the application started for maxIdleStateRetentionTime time.  What could be the possible causes? 



2018-05-27 11:03:37,656 INFO  org.apache.flink.runtime.taskmanager.Task                     - over: (PARTITION BY: uid, ORDER BY: proctime, RANGEBETWEEN 86400000 PRECEDI
NG AND CURRENT ROW, select: (id, uid, proctime, group_concat($7) AS w0$o0)) -> select: 
(id, uid, proctime, w0$o0 AS EXPR$3) -> to: Row -> Flat Map -> Filter -> Sink: Unnamed (3/15) (327
efe96243bbfdf1f1e40a3372f64aa) switched from RUNNING to FAILED.
       at org.apache.flink.streaming.runtime.tasks.SystemProcessingTimeService$
       at java.util.concurrent.Executors$
       at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(
       at java.util.concurrent.ScheduledThreadPoolExecutor$
       at java.util.concurrent.ThreadPoolExecutor.runWorker(
       at java.util.concurrent.ThreadPoolExecutor$
Caused by: java.lang.NullPointerException
       at org.apache.flink.table.runtime.aggregate.ProcTimeBoundedRangeOverWithLog.onTimer(ProcTimeBoundedRangeOver.scala:181)
       at org.apache.flink.streaming.api.operators.LegacyKeyedProcessOperator.invokeUserFunction(
       at org.apache.flink.streaming.api.operators.LegacyKeyedProcessOperator.onProcessingTime(
       at org.apache.flink.streaming.api.operators.HeapInternalTimerService.onProcessingTime(
       at org.apache.flink.streaming.runtime.tasks.SystemProcessingTimeService$