You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flink.apache.org by "Aljoscha Krettek (JIRA)" <ji...@apache.org> on 2015/05/13 14:22:59 UTC

[jira] [Created] (FLINK-2009) Time-Based Windows fail with Chaining Disabled

Aljoscha Krettek created FLINK-2009:
---------------------------------------

             Summary: Time-Based Windows fail with Chaining Disabled
                 Key: FLINK-2009
                 URL: https://issues.apache.org/jira/browse/FLINK-2009
             Project: Flink
          Issue Type: Bug
          Components: Streaming
            Reporter: Aljoscha Krettek


When disabling chaining a streaming job with a time-based window fails right away with this:

{code}
14:17:50,917 ERROR org.apache.flink.streaming.api.collector.StreamOutput         - Emit failed due to: org.apache.flink.types.NullFieldException: Field 0 is null, but expected to hold a value.
	at org.apache.flink.api.java.typeutils.runtime.TupleSerializer.serialize(TupleSerializer.java:118)
	at org.apache.flink.api.java.typeutils.runtime.TupleSerializer.serialize(TupleSerializer.java:30)
	at org.apache.flink.streaming.runtime.streamrecord.StreamRecordSerializer.serialize(StreamRecordSerializer.java:89)
	at org.apache.flink.streaming.runtime.streamrecord.StreamRecordSerializer.serialize(StreamRecordSerializer.java:29)
	at org.apache.flink.runtime.plugable.SerializationDelegate.write(SerializationDelegate.java:51)
	at org.apache.flink.runtime.io.network.api.serialization.SpanningRecordSerializer.addRecord(SpanningRecordSerializer.java:76)
	at org.apache.flink.runtime.io.network.api.writer.RecordWriter.emit(RecordWriter.java:83)
	at org.apache.flink.streaming.api.collector.StreamOutput.collect(StreamOutput.java:63)
	at org.apache.flink.streaming.api.collector.CollectorWrapper.collect(CollectorWrapper.java:39)
	at org.apache.flink.streaming.api.operators.windowing.StreamDiscretizer.emitWindow(StreamDiscretizer.java:143)
	at org.apache.flink.streaming.api.operators.windowing.StreamDiscretizer.triggerOnFakeElement(StreamDiscretizer.java:131)
	at org.apache.flink.streaming.api.operators.windowing.StreamDiscretizer$WindowingCallback.sendFakeElement(StreamDiscretizer.java:194)
	at org.apache.flink.streaming.api.windowing.policy.TimeTriggerPolicy.activeFakeElementEmission(TimeTriggerPolicy.java:121)
	at org.apache.flink.streaming.api.windowing.policy.TimeTriggerPolicy$TimeCheck.run(TimeTriggerPolicy.java:148)
	at java.lang.Thread.run(Thread.java:745)
{code}

I assume it is because the window events that get emitted for fake elements are not properly filled. This does not surface if chaining is enabled because then the window events don't pass through the serialisation stack.



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