in pyiceberg/table/snapshots.py [0:0]
def _truncate_table_summary(summary: Summary, previous_summary: Mapping[str, str]) -> Summary:
for prop in {
TOTAL_DATA_FILES,
TOTAL_DELETE_FILES,
TOTAL_RECORDS,
TOTAL_FILE_SIZE,
TOTAL_POSITION_DELETES,
TOTAL_EQUALITY_DELETES,
}:
summary[prop] = "0"
def get_prop(prop: str) -> int:
value = previous_summary.get(prop) or "0"
try:
return int(value)
except ValueError as e:
raise ValueError(f"Could not parse summary property {prop} to an int: {value}") from e
if value := get_prop(TOTAL_DATA_FILES):
summary[DELETED_DATA_FILES] = str(value)
if value := get_prop(TOTAL_DELETE_FILES):
summary[REMOVED_DELETE_FILES] = str(value)
if value := get_prop(TOTAL_RECORDS):
summary[DELETED_RECORDS] = str(value)
if value := get_prop(TOTAL_FILE_SIZE):
summary[REMOVED_FILE_SIZE] = str(value)
if value := get_prop(TOTAL_POSITION_DELETES):
summary[REMOVED_POSITION_DELETES] = str(value)
if value := get_prop(TOTAL_EQUALITY_DELETES):
summary[REMOVED_EQUALITY_DELETES] = str(value)
return summary