You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Nico Kruber (JIRA)" <ji...@apache.org> on 2018/10/31 14:07:00 UTC

[jira] [Resolved] (FLINK-10727) Remove unnecessary synchronization in SingleInputGate#requestPartitions()

     [ https://issues.apache.org/jira/browse/FLINK-10727?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Nico Kruber resolved FLINK-10727.
---------------------------------
       Resolution: Fixed
    Fix Version/s: 1.7.0

fixed via:
- master: 194603a89844af1f6613b88d6401d28a170494a6

> Remove unnecessary synchronization in SingleInputGate#requestPartitions()
> -------------------------------------------------------------------------
>
>                 Key: FLINK-10727
>                 URL: https://issues.apache.org/jira/browse/FLINK-10727
>             Project: Flink
>          Issue Type: Improvement
>          Components: Network
>    Affects Versions: 1.5.5, 1.6.2, 1.7.0
>            Reporter: Nico Kruber
>            Assignee: Nico Kruber
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.7.0
>
>
> For every {{SingleInputGate#getNextBufferOrEvent()}}, {{SingleInputGate#requestPartitions()}} is called and this always synchronizes on the {{requestLock}} before checking the {{requestedPartitionsFlag}}. Since {{SingleInputGate#requestPartitions()}} is only called from the same thread (the task thread getting the record), it is enough to check the {{requestedPartitionsFlag}} first before synchronizing for the actual requests (if needed). {{UnionInputGate}} already goes the same way in its {{requestPartitions()}} implementation.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)