Skip to content

Conversation

@kbendick
Copy link
Contributor

This backports #4873 to Spark 2.4, 3.0, and 3.1 as well as Flink 1.13 and 1.14.

The only usage of the deprecated functions that remains is the call to snapshot.allManifests() in SnapshotParser at line 86, which we explicitly chose to leave in for now as there should be very few tables that do not already have the manifest list in them (and are storing manifests instead).

cc @rdblue @nastra @danielcweeks

@kbendick kbendick force-pushed the kb-deprecate-fileio-state-in-basesnapshot-backport branch from 8cc3fff to e1db6a3 Compare May 26, 2022 21:08
}

return currentSnapshot.dataManifests().stream()
return currentSnapshot.dataManifests(fileIO).stream()
Copy link
Contributor Author

Choose a reason for hiding this comment

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

For this usage, there's a class level fileIO that is wrapped to avoid Kryo serialization issues. So we use that instead of table..io().

@kbendick
Copy link
Contributor Author

kbendick commented May 26, 2022

It's worth noting that this changes only 4 lines of code that are in source files. The rest is in test files.

I've checked those 4 lines for serialization concerns and there are none (other than the commented area in BaseRewriteManifestsSparkAction, which is already wrapped for Kryo serialization needs).

@rdblue rdblue merged commit f412ce5 into apache:master May 27, 2022
@rdblue
Copy link
Contributor

rdblue commented May 27, 2022

Thanks, @kbendick!

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants