[ 
https://issues.apache.org/jira/browse/FLINK-5956?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15895919#comment-15895919
 ] 

ASF GitHub Bot commented on FLINK-5956:
---------------------------------------

Github user fhueske commented on a diff in the pull request:

    https://github.com/apache/flink/pull/3470#discussion_r104298390
  
    --- Diff: 
flink-libraries/flink-table/src/main/scala/org/apache/flink/table/functions/aggfunctions/SumAggFunction.scala
 ---
    @@ -148,12 +161,24 @@ class DecimalSumAggFunction extends 
AggregateFunction[BigDecimal] {
           val v = value.asInstanceOf[BigDecimal]
           val accum = accumulator.asInstanceOf[DecimalSumAccumulator]
           accum.f0 = accum.f0.add(v)
    -      accum.f1 = true
    +      accum.f1 += 1L
    +    }
    +  }
    +
    +  override def retract(accumulator: Accumulator, value: Any): Unit = {
    +    if (value != null) {
    +      val v = value.asInstanceOf[BigDecimal]
    +      val accum = accumulator.asInstanceOf[DecimalSumAccumulator]
    +      accum.f0 = accum.f0.add(v)
    +      accum.f1 -= 1L
    +      if (accum.f1 < 0) {
    --- End diff --
    
    remove?


> Add retract method into the aggregateFunction
> ---------------------------------------------
>
>                 Key: FLINK-5956
>                 URL: https://issues.apache.org/jira/browse/FLINK-5956
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Table API & SQL
>            Reporter: Shaoxuan Wang
>            Assignee: Shaoxuan Wang
>
> Retraction method is help for processing updated message. It will also very 
> helpful for window Aggregation. This PR will first add retraction methods 
> into the aggregateFunctions, such that on-going over window Aggregation can 
> get benefit from it.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to