Environment
Delta-rs version: 0.25.4
Binding: pythom
Environment:
- Cloud provider:
- OS: widnows
- Other:
Bug
What happened:
When restoring to a previous version schema changes are not rolled back.
What you expected to happen:
I excpet they are rolled back similar to PySpark:

How to reproduce it:
from deltalake import DeltaTable, Field, Schema
import polars as pl
df = pl.DataFrame({"colA":[1,2,3]})
DeltaTable.create("delta-table",schema=Schema([Field("colA","integer")]))
dt = DeltaTable("delta-table")
df.write_delta("delta-table", mode="append")
dt = DeltaTable("delta-table")
print(dt.schema())
print(dt.version())
dt.alter.add_columns(Field("colB","integer"))
print(dt.schema())
print(dt.version())
dt.restore(0)
print(dt.schema())
dt.to_pandas()
print(dt.to_pandas())
gives:
Schema([Field(colA, PrimitiveType("integer"), nullable=True)])
1
Schema([Field(colA, PrimitiveType("integer"), nullable=True), Field(colB, PrimitiveType("integer"), nullable=True)])
2
Schema([Field(colA, PrimitiveType("integer"), nullable=True), Field(colB, PrimitiveType("integer"), nullable=True)])
Empty DataFrame
Columns: [colA, colB]
Index: []
More details:
Environment
Delta-rs version: 0.25.4
Binding: pythom
Environment:
Bug
What happened:
When restoring to a previous version schema changes are not rolled back.
What you expected to happen:
I excpet they are rolled back similar to PySpark:
How to reproduce it:
gives:
More details: