Skip to content

Display column names in MetaCacheExec EXPLAIN output #25582

@hiltontj

Description

@hiltontj

Problem

The MetaCacheExec displays column IDs in the EXPLAIN output. This adds a layer of indirection to operators trying to triage EXPLAIN output since they would need to look up what the column ID refers to. In addition, it is displayed as an integer, which is somewhat confusing given that DataFusion uses integers to refer to column indexes within the table schema.

Proposed solution

Pass forward the Arc<TableDefinition> to the MetaCacheExec so that it can convert the ColumnId in the predicate to a name.

Alternatives

N/A

Additional Context

The MetaCacheFunctionProvider already has a reference to the TableDefinition here:

table_def: Arc<TableDefinition>,

So, this can be passed directly in the TableProvider::scan to the created MetaCacheExec.

See discussion: #25566 (comment)

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions