GitHub user StephanEwen opened a pull request:
https://github.com/apache/flink/pull/289
Cleanups on top of #259 Make execution mode configurable
I made a few adjustments to the code:
1. The map driver now also supports this ;-)
2. In the merge iterator (merges sorted runs from external sort), we now
always use the non-reusing code path, because the reusing code path here
implies in all cases additional instances to be held concurrently, and copy
between elements, which voids the benefits of reusing elements.
3. For many utility iterators (in test cases), I consolidated the logic
between the two variants of the "next()" functions (one calls the other, where
possible)
4. I eliminated a few copies between elements in the non-reusing parts
(where possible)
5. I threw out unused variables in the non-reusing variants (mainly
serializers previously used to create instance or copy between instances)
6. Threw out some unused types
7. I tried to improve generic type safety (fewer raw types)
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/StephanEwen/incubator-flink switch_fix
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/flink/pull/289.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #289
----
commit 3832d7b7a0216e5cf6e5100bb56b5a703d4fb79e
Author: Aljoscha Krettek <[email protected]>
Date: 2014-12-02T16:34:46Z
[FLINK-1137] Enhance MutableObjectIterator with non-reuse next()
This is in preparation for configurable object-reuse mode. We previously
referred to this as mutable object vs. mutable object safe mode or some
such thing.
commit d529749c8f45af693efffe1f69860dae0bfe70bf
Author: Aljoscha Krettek <[email protected]>
Date: 2014-12-11T13:58:23Z
[FLINK-1285] Make Merge-Join aware of object-reuse setting
This closes #259
commit b7b32a050e4b77012b9b70bb98b2a22d293dfbad
Author: Aljoscha Krettek <[email protected]>
Date: 2014-12-15T17:40:11Z
[FLINK-1285] Make execution mode configurable
commit 26c9819edce13ab13d3789e5f825b7a31a12a987
Author: Stephan Ewen <[email protected]>
Date: 2015-01-07T20:43:50Z
[FLINK-1285] Various cleanup of object reusing and non-reusing code.
- The map driver now also supports this
- In the merge iterator (merges sorted runs from external sort), we now
always use the non-reusing code path,
because the reusing codepath here implies in all cases additional
instances to be held concurrently, and copy
between elements, which voids the benefits of reusing elements.
- For many utility iterators (in test cases), consolidates the logic
between the two variants of the "next()"
functions (one calls the other, where possible)
- Eliminates a few copies between elements in the non-reusing parts (where
possible)
- Removes unused variables in the non-reusing variants (mainly serializers
previously used to create instance
or copy between instances)
- Remove some unused types
- Improves generic type safety (fewer raw types)
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---