mxm commented on a change in pull request #11154: [BEAM-1819] Key should be 
available in @OnTimer methods
URL: https://github.com/apache/beam/pull/11154#discussion_r410239653
 
 

 ##########
 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:
   Isn't `timer.getKey()` a new interface? Keys are always internally stored 
encoded as ByteBuffer. The keys itself can of course be of any type. The test 
might not instrument the code correctly.

----------------------------------------------------------------
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]


With regards,
Apache Git Services

Reply via email to