Skip to content

Remove ListingTable and FileScanConfig Unbounded (#8540) - #8573

Merged
mustafasrepo merged 4 commits into
apache:mainfrom
tustvold:remove-listing-table-unbounded
Dec 18, 2023
Merged

Remove ListingTable and FileScanConfig Unbounded (#8540)#8573
mustafasrepo merged 4 commits into
apache:mainfrom
tustvold:remove-listing-table-unbounded

Conversation

@tustvold

Copy link
Copy Markdown
Contributor

Which issue does this PR close?

Closes#8540

Rationale for this change

What changes are included in this PR?

Are these changes tested?

Are there any user-facing changes?

@tustvoldtustvold added the api change Changes the API exposed to users of the crate label Dec 17, 2023
@github-actionsgithub-actionsBot added the core Core DataFusion crate label Dec 17, 2023
}

#[tokio::test]
async fn test_with_lost_ordering_unbounded() -> Result<()> {

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I couldn't see a reason to keep these as they effectively duplicate the above

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These tests makes sure that when sources are unbounded, we try to preserve existing ordering as much as possible. I will re-add corresponding tests that enforces this functionality. For this PR, I just ignore these tests.

" CsvExec: file_groups={1 group: [[file_path]]}, projection=[a, c, d], output_ordering=[a@0 ASC NULLS LAST], has_header=true",
];
assert_optimized!(expected_input, expected_optimized, physical_plan);
assert_optimized!(expected_input, expected_optimized, physical_plan, true);

@tustvoldtustvoldDec 17, 2023

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#8572 tracks making this the default behaviour

@github-actionsgithub-actionsBot added the substrait Changes to the substrait crate label Dec 17, 2023

@metesynnadametesynnada left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall LGTM. Just a minor issue on tests.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think test logic may depend on infinite sources. So, we can use an unbounded executor like StreamingTableExec to preserve the test logic.

@tustvoldtustvoldDec 18, 2023

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It needs either infinite sources or prefer_existing_sort, I switched it to the latter

.await?;
let path = format!("{testdata}/csv/aggregate_test_100.csv");

match infinite {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍🏻

@mustafasrepomustafasrepo left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!. Thanks @tustvold for this cleanup.

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

Labels

api changeChanges the API exposed to users of the cratecoreCore DataFusion cratesubstraitChanges to the substrait crate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Remove ListingTable and FileScanConfig Unbounded

3 participants

@tustvold@metesynnada@mustafasrepo