flink-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nico Kruber (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (FLINK-10727) Remove unnecessary synchronization in SingleInputGate#requestPartitions()
Date Wed, 31 Oct 2018 14:07:00 GMT

     [ 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)

Mime
View raw message