Skip to content

Add shims layer, Delete command base classes and refactor delta-33x Delete - #13620

Merged
nartal1 merged 2 commits into
NVIDIA:branch-25.12from
nartal1:delta_lake_400_shims_and_delete_cmd
Oct 20, 2025
Merged

Add shims layer, Delete command base classes and refactor delta-33x Delete#13620
nartal1 merged 2 commits into
NVIDIA:branch-25.12from
nartal1:delta_lake_400_shims_and_delete_cmd

Conversation

@nartal1

@nartal1 nartal1 commented Oct 17, 2025

Copy link
Copy Markdown
Collaborator

Contributes to #13339

Description

In this PR, we mainly refactored delta-33x Delete command to use base classes.

  • Added DeltaCommandShims trait to abstract Spark API differences between Delta 3.3.x and 4.0.x
  • Added Delta33xCommandShims implementation for Delta 3.3.x
  • Added DeleteCommandMetaBase and GpuDeleteCommandBase in common directory
  • Refactored delta-33x DeleteCommandMeta and GpuDeleteCommand to use base classes
  • Updated delta-33x pom.xml (both Scala 2.12 and 2.13) to include delta-33x-40x common directory
  • Functionality is preserved - just moved to base classes

Testing

Delta 3.3.0 (Scala 2.12, Spark 3.5.6): BUILD SUCCESS, Ran delta integration tests locally.
Delta 4.0.0 (Scala 2.13, Spark 4.0.0): BUILD SUCCESS

Checklists

  • This PR has added documentation for new or modified features or behaviors.
  • This PR has added new tests or modified existing tests to cover new code paths.
    (Please explain in the PR description how the new code paths are tested, such as names of the new/existing tests that cover them.)
  • Performance testing has been performed and its results are added in the PR description. Or, an issue has been filed with a link in the PR description.

@nartal1 nartal1 self-assigned this Oct 17, 2025
@nartal1 nartal1 added the task Work required that improves the product but is not user facing label Oct 17, 2025
@nartal1
nartal1 requested a review from a team as a code owner October 17, 2025 16:44
@nartal1 nartal1 added the delta label Oct 17, 2025
…elete

- Add DeltaCommandShims trait to abstract Spark API differences
- Add Delta33xCommandShims implementation for Delta 3.3.x
- Add DeleteCommandMetaBase and GpuDeleteCommandBase in common directory
- Refactor delta-33x DeleteCommandMeta and GpuDeleteCommand to use base classes
- Update delta-33x pom.xml to include delta-33x-40x common directory

Tested:
- Delta 3.3.0 (buildver=356): BUILD SUCCESS
- Delta 4.0.0 (buildver=400): BUILD SUCCESS

Signed-off-by: Niranjan Artal <nartal@nvidia.com>
@nartal1
nartal1 force-pushed the delta_lake_400_shims_and_delete_cmd branch from bff42ce to f6f50a2 Compare October 17, 2025 16:45
@nartal1 nartal1 changed the title Add shims layer, Delete command base classes and refactor delta-33x D… Add shims layer, Delete command base classes and refactor delta-33x Delete Oct 17, 2025
@nartal1

nartal1 commented Oct 17, 2025

Copy link
Copy Markdown
Collaborator Author

build

@razajafri razajafri left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Did first pass and it looks OK. I will take a look at it again

* Implements the Delta Probe interface for Delta Lake 4.0.x
* @note This is instantiated via reflection from ShimLoader
*/
class DeltaProbeImpl extends DeltaProbe {

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

This file was added in the previous PR. Nothing to do here, just a comment for reviewers

@jihoonson jihoonson left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

LGTM overall, left a minor comment on the doc.

@nartal1

nartal1 commented Oct 17, 2025

Copy link
Copy Markdown
Collaborator Author

build

@jihoonson jihoonson left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

LGTM. Thanks for updating the docs.

*
*/
type RunSparkSession <: SparkSession
type ShimSparkSession <: SparkSession

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

👍

Comment on lines +49 to +50
* Type alias for the version-specific SparkSession type used for internal operations.
* This is the SparkSession type used within command execution for operations like:

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

👍

@nartal1 nartal1 mentioned this pull request Oct 20, 2025
10 tasks
@nartal1
nartal1 merged commit 737bfb6 into NVIDIA:branch-25.12 Oct 20, 2025
62 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

delta task Work required that improves the product but is not user facing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants