You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flink.apache.org by "David Morávek (Jira)" <ji...@apache.org> on 2021/08/22 15:37:00 UTC

[jira] [Created] (FLINK-23908) Hint user about possibly non-deterministic key

David Morávek created FLINK-23908:
-------------------------------------

             Summary: Hint user about possibly non-deterministic key
                 Key: FLINK-23908
                 URL: https://issues.apache.org/jira/browse/FLINK-23908
             Project: Flink
          Issue Type: Sub-task
            Reporter: David Morávek
            Assignee: David Morávek
             Fix For: 1.14.0


If user has non-deterministic hashCode and equals implementation, he ends up with "confusing" (if you don't now details about Flink internals) exception.

RocksDBStateBackend:

{code}
Caused by: java.lang.IllegalArgumentException: Key group 0 is not in KeyGroupRange{startKeyGroup=32, endKeyGroup=63}.
at org.apache.flink.runtime.state.KeyGroupRangeOffsets.computeKeyGroupIndex(KeyGroupRangeOffsets.java:142)
at org.apache.flink.runtime.state.KeyGroupRangeOffsets.setKeyGroupOffset(KeyGroupRangeOffsets.java:104)
at org.apache.flink.contrib.streaming.state.snapshot.RocksFullSnapshotStrategy$SnapshotAsynchronousPartCallable.writeKVStateData(RocksFullSnapshotStrategy.java:319)
at org.apache.flink.contrib.streaming.state.snapshot.RocksFullSnapshotStrategy$SnapshotAsynchronousPartCallable.writeSnapshotToOutputStream(RocksFullSnapshotStrategy.java:261)
{code}

HeapStateBackend:

{code}
2021-08-16 16:28:54	java.lang.NullPointerException: null
2021-08-16 16:28:54		at org.apache.flink.runtime.state.heap.StateTable.put(StateTable.java:351) ~[flink-dist_2.11-1.12.3.jar:1.12.3]
2021-08-16 16:28:54		at org.apache.flink.runtime.state.heap.StateTable.put(StateTable.java:159) ~[flink-dist_2.11-1.12.3.jar:1.12.3]
2021-08-16 16:28:54		at org.apache.flink.runtime.state.heap.HeapListState.add(HeapListState.java:98) ~[flink-dist_2.11-1.12.3.jar:1.12.3]
2021-08-16 16:28:54		at org.apache.flink.streaming.runtime.operators.windowing.WindowOperator.processElement(WindowOperator.java:422) ~[flink-dist_2.11-1.12.3.jar:1.12.3]
2021-08-16 16:28:54		at org.apache.flink.streaming.runtime.tasks.OneInputStreamTask$StreamTaskNetworkOutput.emitRecord(OneInputStreamTask.java:191) ~[flink-dist_2.11-1.12.3.jar:1.12.3]
2021-08-16 16:28:54		at org.apache.flink.streaming.runtime.io.StreamTaskNetworkInput.processElement(StreamTaskNetworkInput.java:204) ~[flink-dist_2.11-1.12.3.jar:1.12.3]
2021-08-16 16:28:54		at org.apache.flink.streaming.runtime.io.StreamTaskNetworkInput.emitNext(StreamTaskNetworkInput.java:174) ~[flink-dist_2.11-1.12.3.jar:1.12.3]
2021-08-16 16:28:54		at org.apache.flink.streaming.runtime.io.StreamOneInputProcessor.processInput(StreamOneInputProcessor.java:65) ~[flink-dist_2.11-1.12.3.jar:1.12.3]
2021-08-16 16:28:54		at org.apache.flink.streaming.runtime.tasks.StreamTask.processInput(StreamTask.java:396) ~[flink-dist_2.11-1.12.3.jar:1.12.3]
2021-08-16 16:28:54		at org.apache.flink.streaming.runtime.tasks.mailbox.MailboxProcessor.runMailboxLoop(MailboxProcessor.java:191) ~[flink-dist_2.11-1.12.3.jar:1.12.3]
2021-08-16 16:28:54		at org.apache.flink.streaming.runtime.tasks.StreamTask.runMailboxLoop(StreamTask.java:617) ~[flink-dist_2.11-1.12.3.jar:1.12.3]
2021-08-16 16:28:54		at org.apache.flink.streaming.runtime.tasks.StreamTask.invoke(StreamTask.java:581) ~[flink-dist_2.11-1.12.3.jar:1.12.3]
2021-08-16 16:28:54		at org.apache.flink.runtime.taskmanager.Task.doRun(Task.java:755) ~[flink-dist_2.11-1.12.3.jar:1.12.3]
2021-08-16 16:28:54		at org.apache.flink.runtime.taskmanager.Task.run(Task.java:570) ~[flink-dist_2.11-1.12.3.jar:1.12.3]
2021-08-16 16:28:54		at java.lang.Thread.run(Unknown Source) ~[?:?]
{code}




--
This message was sent by Atlassian Jira
(v8.3.4#803005)