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

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

GitHub user bowenli86 opened a pull request:

    https://github.com/apache/flink/pull/5236

    [FLINK-8322] support getting number of existing timers in TimerService

    ## What is the purpose of the change
    
    
    There are pretty common use cases where users want to use timers as 
scheduled threads - e.g. add a timer to wake up x hours later and do something 
(reap old data usually) only if there's no existing timers, basically we only 
want at most 1 timer exists for the key all the time
    
    ## Brief change log
    
    Discussed with Aljoscha that we should use extra data structures to keep 
track number of timers. I decided to use Guava's Table to store `<Key, 
Namespace, NumberOfTimers>`. 
    
    ## Verifying this change
    
    
    This change added tests and can be verified as follows: 
`HeapInternalTimerServiceTest`, `KeyedProcessOperatorTest`, and 
`KeyedCoProcessOperatorTest`.
    
    ## Does this pull request potentially affect one of the following parts:
    
      - The public API, i.e., is any changed class annotated with 
`@Public(Evolving)`: (yes)
    
    ## Documentation
    
      - Does this pull request introduce a new feature? (yes)
      - If yes, how is the feature documented? (JavaDocs)


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/bowenli86/flink FLINK-8322

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/flink/pull/5236.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #5236
    
----
commit 8578eb6678ad54169e1769b8e69391a388d1d40a
Author: Bowen Li <bowenli86@...>
Date:   2018-01-02T19:21:28Z

    update local branch

commit b81a8e2aebe4d9cd61baef3904d1e6bef0d1702a
Author: Bowen Li <bowenli86@...>
Date:   2018-01-03T07:51:09Z

    [FLINK-8322] support getting number of existing timers in TimerService

commit 483c8a20ef6c2390d1491724755fbd95e88eb278
Author: Bowen Li <bowenli86@...>
Date:   2018-01-03T08:03:48Z

    add comments

commit 4c225df508ebb03acc0cd68c77681977161403f6
Author: Bowen Li <bowenli86@...>
Date:   2018-01-03T08:38:24Z

    update unit tests

commit 8876add25b7fbf576c045148cc35cee4086cb901
Author: Bowen Li <bowenli86@...>
Date:   2018-01-03T09:12:57Z

    add unit tests

----


> support getting number of existing timers in TimerService
> ---------------------------------------------------------
>
>                 Key: FLINK-8322
>                 URL: https://issues.apache.org/jira/browse/FLINK-8322
>             Project: Flink
>          Issue Type: Improvement
>          Components: DataStream API
>    Affects Versions: 1.4.0
>            Reporter: Bowen Li
>            Assignee: Bowen Li
>             Fix For: 1.5.0
>
>
> There are pretty common use cases where users want to use timers as scheduled 
> threads - e.g. add a timer to wake up x hours later and do something (reap 
> old data usually) only if there's no existing timers, basically we only want 
> at most 1 timer exists for the key all the time



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to