## What is the purpose of the change

Currently, calls to `PipelinedSubpartition#notifyDataAvailable()` are 
unnecessarily executed inside a synchronized (buffers) block which may lead to 
lock contention which this PR fixes.

Please note, that we build upon #6692.

## Brief change log

- move data notification out of the synchronized block

## Verifying this change

This change is already covered by existing tests.

## Does this pull request potentially affect one of the following parts:

  - Dependencies (does it add or upgrade a dependency): **no**
  - The public API, i.e., is any changed class annotated with 
`@Public(Evolving)`: **no**
  - The serializers: **no**
  - The runtime per-record code paths (performance sensitive): **yes** 
(depending on output flusher interval, rather per buffer)
  - Anything that affects deployment or recovery: JobManager (and its 
components), Checkpointing, Yarn/Mesos, ZooKeeper: **no**
  - The S3 file system connector: **no**

## Documentation

  - Does this pull request introduce a new feature? **no**
  - If yes, how is the feature documented? **not applicable**


[ Full content available at: https://github.com/apache/flink/pull/6693 ]
This message was relayed via gitbox.apache.org for [email protected]

Reply via email to