Github user StefanRRichter commented on a diff in the pull request:
https://github.com/apache/flink/pull/5423#discussion_r167618791
--- Diff:
flink-runtime/src/main/java/org/apache/flink/runtime/io/network/partition/consumer/SingleInputGate.java
---
@@ -138,6 +142,12 @@
/** Channels, which notified this input gate about available data. */
private final ArrayDeque<InputChannel> inputChannelsWithData = new
ArrayDeque<>();
+ /**
+ * Field guaranteeing uniqueness for inputChannelsWithData queue. Both
of those fields should be unified
+ * onto one.
+ */
+ private final Set<Integer> enqueuedInputChannelsWithData = new
HashSet<>();
--- End diff --
I wonder if this should not better be a `BitSet`? Do we typically expect
very few enqueued channels with data from a large set of channels?
---