-
Couldn't load subscription status.
- Fork 537
Closed
Labels
binding/rustIssues for the Rust crateIssues for the Rust cratebugSomething isn't workingSomething isn't working
Description
Environment
Delta-rs version:
pyrhon-0.23.1
Binding:
Environment:
- Cloud provider:
- OS:
- Other:
Bug
DeltaRS load_cdf starting_timestamp still requires a starting version values passed into the method.
What happened:
I'm running following code:
timestamp = "2025-01-02T00:00:00Z"
table = DeltaTable(path)
cdf = table.load_cdf(starting_timestamp=timestamp).read_all()
This code errors out with following message:
self = DeltaTable(), starting_version = 0, ending_version = None
starting_timestamp = '2025-01-02T00:00:00Z', ending_timestamp = None
columns = None, allow_out_of_range = True
def load_cdf(
self,
starting_version: int = 0,
ending_version: Optional[int] = None,
starting_timestamp: Optional[str] = None,
ending_timestamp: Optional[str] = None,
columns: Optional[List[str]] = None,
allow_out_of_range: bool = False,
) -> pyarrow.RecordBatchReader:
> return self._table.load_cdf(
columns=columns,
starting_version=starting_version,
ending_version=ending_version,
starting_timestamp=starting_timestamp,
ending_timestamp=ending_timestamp,
allow_out_of_range=allow_out_of_range,
)
E _internal.DeltaError: Invalid table version: 0
What you expected to happen:
The table should return the rows from given timestamp.
How to reproduce it:
More details:
My guess is that starting version is still being evaluated even if it was not passed into the method. It defaults to 0, so if the table being used is vaccumed (like in this example) and the 0 version is missing, the starting_timestamp only cdf errors out
Metadata
Metadata
Assignees
Labels
binding/rustIssues for the Rust crateIssues for the Rust cratebugSomething isn't workingSomething isn't working