JingsongLi commented on a change in pull request #11490: 
[FLINK-15579][table-planner-blink] UpsertStreamTableSink should work on batch 
mode
URL: https://github.com/apache/flink/pull/11490#discussion_r396859204
 
 

 ##########
 File path: 
flink-table/flink-table-planner-blink/src/main/scala/org/apache/flink/table/planner/plan/nodes/physical/batch/BatchExecSink.scala
 ##########
 @@ -81,13 +82,26 @@ class BatchExecSink[T](
   override protected def translateToPlanInternal(
       planner: BatchPlanner): Transformation[Any] = {
     val resultTransformation = sink match {
-      case _: RetractStreamTableSink[T] | _: UpsertStreamTableSink[T] =>
-        throw new TableException("RetractStreamTableSink and 
UpsertStreamTableSink is not" +
-          " supported in Batch environment.")
-
       case streamTableSink: StreamTableSink[T] =>
-        // we can insert the bounded DataStream into a StreamTableSink
-        val transformation = translateToTransformation(withChangeFlag = false, 
planner)
+        val transformation = streamTableSink match {
+          case _: RetractStreamTableSink[T] =>
+            translateToTransformation(withChangeFlag = true, planner)
 
 Review comment:
   Like print sink, there is no way to know isBatch or isStreaming now. We can 
use a unify RetractSink to support.

----------------------------------------------------------------
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:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to