Hi Flink Team: I am going to report an issue in `M...
# troubleshooting
a
Hi Flink Team: I am going to report an issue in
MapState
here: in my code I have created a map sate like
MapStateDescriptor<String, Integer> totalMapStateDescriptor =
new MapStateDescriptor<>(
"totalMapState",
Types._STRING_,
Types._INT_);
totalMap = getRuntimeContext().getMapState(totalMapStateDescriptor);
After I insert some values like
totalMap.put(rawPath, rawTotalChunk);
I see that
totalMap.get(rawPath)
is null for one those values. In fact
Iterable<String> signalKeys = totalMap.keys();
always returns one key and other keys will be disappear! So, why is like that? I forgot to mention that I get
rawPath
from a joined_stream:
public void processElement(Row left, Row right, ProcessJoinFunction<Row, Row, List<double[][][]>>.Context ctx, Collector<List<double[][][]>> out) throws Exception {String rawPath = String._valueOf_(left.getField(_SUBDIR_STR_)).toLowerCase();
I figured what is the issue: I am switching between two states and that’s why I see different results. I will have to solve this issue …