delta-io / delta

An open-source storage framework that enables building a Lakehouse architecture with compute engines including Spark, PrestoDB, Flink, Trino, and Hive and APIs
https://delta.io
Apache License 2.0
6.96k stars 1.58k forks source link

[Spark] Makes CommitOwnerClient independent of Delta Spark dependencies #3002

Closed LukasRupprecht closed 2 weeks ago

LukasRupprecht commented 2 weeks ago

Which Delta project/connector is this regarding?

Description

This PR is the first in a series of PRs that refactors the current CommitOwnerClient interface to become its own module. This is similar to storage module that currently exists and contains the LogStore interface and its implementations. In this PR, we remove any Delta Spark dependencies from the CommitOwnerClient in preparation for it to be moved outside of Delta Spark.

How was this patch tested?

Added tests to check equivalence of newly introduced AbstractProtocol/AbstractMetadata with Protocol/Metadata.

Does this PR introduce any user-facing changes?

No