## What is the purpose of the change

StreamTask support efficient object reuse. The purpose behind this is to reduce 
pressure on the garbage collector.

All objects are reused, without backup copies. The operators and UDFs must be 
careful to not keep any objects as state or not to modify the objects.

## Brief change log

- With `ExecutionConfig#isObjectReuseEnable` on, reuse `StreamRecord` 
associated to `StreamTask`.
- Also clean code as glancing over. 


## Verifying this change

Add case to unit test `OneInputStreamTaskTest.java` and 
`TwoInputStreamTaskTest.java`

## 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): (no)
  - 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/6643 ]
This message was relayed via gitbox.apache.org for [email protected]

Reply via email to