mxm commented on a change in pull request #11154:
URL: https://github.com/apache/beam/pull/11154#discussion_r411372859
##########
File path:
runners/flink/src/main/java/org/apache/beam/runners/flink/translation/wrappers/streaming/DoFnOperator.java
##########
@@ -837,11 +837,15 @@ public void onProcessingTime(InternalTimer<ByteBuffer,
TimerData> timer) {
// allow overriding this in ExecutableStageDoFnOperator to set the key
context
protected void fireTimerInternal(Object key, TimerData timerData) {
- fireTimer(timerData);
+ if (key instanceof java.nio.ByteBuffer) {
+ key = FlinkKeyUtils.decodeKey((ByteBuffer) key, keyCoder);
Review comment:
Yes, it assumes that the key is of type ByteBuffer because the key type
we pass to Flink is always `ByteBuffer`. We shouldn't be adding `instanceof`
checks to the main code in order for tests to pass. Let's adapt the tests
instead. You need to ensure that the `KeySelector` used in the tests returns
`ByteBuffer`. I can help you in case you get stuck.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]