Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-573

Clean-up MapOperators in optimizer

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Minor
    • Resolution: Done
    • None
    • 1.0.0
    • None

    Description

      This issue continues a discussion started by @aljoscha in PR (#544 | FLINK-544).

      MapNode is responsible for PlainMapOperatorBase and not for
      MapOperatorBase, but this is a mess right now.

      Maybe we should think about cleaning the situation a bit. CollectorMap is the same as FlatMap, only the function in the interface is called map instead of flatMap. I know that this is because of historic reasons but it is still a mess because we handle all three types through the layers. For example, some code in PactCompiler looks like this:

      ```java
      else if (c instanceof MapOperatorBase) {
      n = new CollectorMapNode((MapOperatorBase<?>) c);
      }
      else if (c instanceof PlainMapOperatorBase) {
      n = new MapNode((PlainMapOperatorBase<?>) c);
      }
      else if (c instanceof FlatMapOperatorBase) {
      n = new FlatMapNode((FlatMapOperatorBase<?>) c);
      }
      ```

      ---------------- Imported from GitHub ----------------
      Url: https://github.com/stratosphere/stratosphere/issues/573
      Created by: fhueske
      Labels: enhancement, optimizer,
      Created at: Fri Mar 14 02:11:22 CET 2014
      State: open

      Attachments

        Activity

          People

            Unassigned Unassigned
            github-import GitHub Import
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: