ASF GitHub Bot commented on KAFKA-5562:

GitHub user dguy opened a pull request:


    KAFKA-5562: Do streams state directory cleanup on a single thread

    Backported from trunk: https://github.com/apache/kafka/pull/3516

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

    $ git pull https://github.com/dguy/kafka cherry-pick-stream-thread-cleanup

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


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

    This closes #3654
commit 5df82dabac2ccc1cb035f89ee45cf3405e42ab06
Author: Damian Guy <damian....@gmail.com>
Date:   2017-07-26T09:10:50Z

    Use a single `StateDirectory` per streams instance.
    Use threadId to determine which thread owns the lock.
    Only allow the owning thread to unlock.
    Execute cleanup on a scheduled thread in `KafkaStreams`

commit ddb66fde7c0c4cfb10107ce89531356ab99b8a21
Author: Damian Guy <damian....@gmail.com>
Date:   2017-08-10T11:39:42Z

    backport stream thread cleaning to 0.11


> Do streams state directory cleanup on a single thread
> -----------------------------------------------------
>                 Key: KAFKA-5562
>                 URL: https://issues.apache.org/jira/browse/KAFKA-5562
>             Project: Kafka
>          Issue Type: Bug
>            Reporter: Damian Guy
>            Assignee: Damian Guy
> Currently in streams we clean up old state directories every so often (as 
> defined by {{state.cleanup.delay.ms}}). However, every StreamThread runs the 
> cleanup, which is both unnecessary and can potentially lead to race 
> conditions.
> It would be better to perform the state cleanup on a single thread and only 
> when the {{KafkaStreams}} instance is in a running state.

This message was sent by Atlassian JIRA

Reply via email to