Skip to content

Commit 6876bb9

Browse files
authored
[python] Update PyPaimon Snapshot fields to not null (#6926)
1 parent 93d2623 commit 6876bb9

File tree

4 files changed

+11
-10
lines changed

4 files changed

+11
-10
lines changed

paimon-python/pypaimon/snapshot/snapshot.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
################################################################################
1818

1919
from dataclasses import dataclass
20-
from typing import Dict, Optional
20+
from typing import Optional
2121

2222
from pypaimon.common.json_util import json_field
2323

@@ -27,21 +27,20 @@
2727
@dataclass
2828
class Snapshot:
2929
# Required fields
30+
version: int = json_field("version")
3031
id: int = json_field("id")
3132
schema_id: int = json_field("schemaId")
3233
base_manifest_list: str = json_field("baseManifestList")
3334
delta_manifest_list: str = json_field("deltaManifestList")
35+
total_record_count: int = json_field("totalRecordCount")
36+
delta_record_count: int = json_field("deltaRecordCount")
3437
commit_user: str = json_field("commitUser")
3538
commit_identifier: int = json_field("commitIdentifier")
3639
commit_kind: str = json_field("commitKind")
3740
time_millis: int = json_field("timeMillis")
3841
# Optional fields with defaults
39-
version: Optional[int] = json_field("version", default=None)
40-
log_offsets: Optional[Dict[int, int]] = json_field("logOffsets", default_factory=dict)
4142
changelog_manifest_list: Optional[str] = json_field("changelogManifestList", default=None)
4243
index_manifest: Optional[str] = json_field("indexManifest", default=None)
43-
total_record_count: Optional[int] = json_field("totalRecordCount", default=None)
44-
delta_record_count: Optional[int] = json_field("deltaRecordCount", default=None)
4544
changelog_record_count: Optional[int] = json_field("changelogRecordCount", default=None)
4645
watermark: Optional[int] = json_field("watermark", default=None)
4746
statistics: Optional[str] = json_field("statistics", default=None)

paimon-python/pypaimon/tests/rest/rest_catalog_commit_snapshot_test.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,12 @@ def setUp(self):
5757
schema_id=0,
5858
base_manifest_list="manifest-list-1",
5959
delta_manifest_list="manifest-list-1",
60+
total_record_count=1,
61+
delta_record_count=1,
6062
commit_user="test_user",
6163
commit_identifier=12345,
6264
commit_kind="APPEND",
63-
time_millis=int(time.time() * 1000),
64-
log_offsets={}
65+
time_millis=int(time.time() * 1000)
6566
)
6667

6768
# Create test statistics

paimon-python/pypaimon/tests/rest/rest_server.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -541,11 +541,12 @@ def _write_snapshot_files(self, identifier: Identifier, snapshot, statistics):
541541
"schemaId": getattr(snapshot, 'schema_id', 0),
542542
"baseManifestList": getattr(snapshot, 'base_manifest_list', f"manifest-list-{uuid.uuid4()}"),
543543
"deltaManifestList": getattr(snapshot, 'delta_manifest_list', f"manifest-list-{uuid.uuid4()}"),
544+
"totalRecordCount": getattr(snapshot, 'total_record_count'),
545+
"deltaRecordCount": getattr(snapshot, 'delta_record_count'),
544546
"commitUser": getattr(snapshot, 'commit_user', 'rest-server'),
545547
"commitIdentifier": getattr(snapshot, 'commit_identifier', 1),
546548
"commitKind": getattr(snapshot, 'commit_kind', 'APPEND'),
547-
"timeMillis": getattr(snapshot, 'time_millis', 1703721600000),
548-
"logOffsets": getattr(snapshot, 'log_offsets', {})
549+
"timeMillis": getattr(snapshot, 'time_millis', 1703721600000)
549550
}
550551

551552
with open(snapshot_file, 'w') as f:

paimon-python/pypaimon/write/file_store_commit.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,7 @@ def _try_commit(self, commit_kind, commit_entries, commit_identifier):
199199
new_snapshot_id = self._generate_snapshot_id()
200200
total_record_count += delta_record_count
201201
snapshot_data = Snapshot(
202-
version=1,
202+
version=3,
203203
id=new_snapshot_id,
204204
schema_id=self.table.table_schema.id,
205205
base_manifest_list=base_manifest_list,

0 commit comments

Comments
 (0)