Skip to content

One workload-level PhysicalASAPDAG and PlanOutput deduplication — after #511 #521

Description

@zzylol

Goal

#509 defines a candidate as a DAG for the whole workload, and selection returns one PhysicalASAPDAG with each shared summary costed once. Today:

Blocked on

Implementation of #511 (unified operator graph: OperatorNode with common metadata, no KeepPreAsap wrappers). Do not start before #511 is implemented.
The merged per-workload graph should be built on #511's common operator graph rather than on today's per-root post-ASAP DAG.

Scope

  1. Assemble the selected per-root plans into one workload DAG with shared nodes deduplicated, and compile that DAG into one PhysicalASAPDAG.
  2. PlanOutput carries the workload-level plan, each query's root ID, and deduplicated deployments.
  3. Replace feat: share identical summary producers across queries after Pass 1 #515's approximate shared-root raw-vs-summary check with a single whole-workload comparison.
  4. Decide whether selection costs complete whole-workload candidates directly, or keeps per-group selection with class-level sharing (feat: share identical summary producers across queries after Pass 1 #515).

References

#509 (Stages, "3. Plan selection"), #514, #515, #519.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions