Skip to content
This repository was archived by the owner on Feb 18, 2026. It is now read-only.

Commit bd4ac4a

Browse files
authored
Backup cols (#129)
* Remove unused, backwards-incompat columns arg on backup * Provide explicit columns when writing source archive * Don't show deprecation warning during restore
1 parent 7e5f095 commit bd4ac4a

File tree

3 files changed

+12
-26
lines changed

3 files changed

+12
-26
lines changed

src/gretel_trainer/relational/backup.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
@dataclass
1111
class BackupRelationalDataTable:
1212
primary_key: list[str]
13-
columns: list[str]
1413
invented_table_metadata: Optional[dict[str, Any]] = None
1514

1615

@@ -53,7 +52,6 @@ def from_relational_data(cls, rel_data: RelationalData) -> BackupRelationalData:
5352
for table in rel_data.list_all_tables():
5453
backup_table = BackupRelationalDataTable(
5554
primary_key=rel_data.get_primary_key(table),
56-
columns=rel_data.get_table_columns(table),
5755
)
5856
if (
5957
invented_table_metadata := rel_data.get_invented_table_metadata(table)

src/gretel_trainer/relational/multi_table.py

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -103,10 +103,11 @@ def __init__(
103103
):
104104
self._strategy = _validate_strategy(strategy)
105105
if gretel_model is not None:
106-
logger.warning(
107-
"The `gretel_model` argument is deprecated and will be removed in a future release. "
108-
"Going forward you should provide a config to `train_synthetics`."
109-
)
106+
if backup is None:
107+
logger.warning(
108+
"The `gretel_model` argument is deprecated and will be removed in a future release. "
109+
"Going forward you should provide a config to `train_synthetics`."
110+
)
110111
model_name, model_config = self._validate_gretel_model(gretel_model)
111112
self._gretel_model = model_name
112113
self._model_config = model_config
@@ -945,7 +946,11 @@ def _upload_sources_to_project(self) -> None:
945946
filename = f"source_{table}.csv"
946947
out_path = self._working_dir / filename
947948
df = self.relational_data.get_table_data(table)
948-
df.to_csv(out_path, index=False)
949+
df.to_csv(
950+
out_path,
951+
index=False,
952+
columns=self.relational_data.get_table_columns(table),
953+
)
949954
tar.add(out_path, arcname=filename)
950955
self._artifact_collection.upload_source_archive(
951956
self._project, str(archive_path)

tests/relational/test_backup.py

Lines changed: 2 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,9 @@ def test_backup_relational_data(trips):
1919
tables={
2020
"vehicle_types": BackupRelationalDataTable(
2121
primary_key=["id"],
22-
columns=["id", "name"],
2322
),
2423
"trips": BackupRelationalDataTable(
2524
primary_key=["id"],
26-
columns=["id", "purpose", "vehicle_type_id"],
2725
),
2826
},
2927
foreign_keys=[
@@ -43,19 +41,9 @@ def test_backup_relational_data(trips):
4341
def test_backup_relational_data_with_json(documents):
4442
expected = BackupRelationalData(
4543
tables={
46-
"users": BackupRelationalDataTable(
47-
primary_key=["id"], columns=["id", "name"]
48-
),
44+
"users": BackupRelationalDataTable(primary_key=["id"]),
4945
"purchases-sfx": BackupRelationalDataTable(
5046
primary_key=["id", "~PRIMARY_KEY_ID~"],
51-
columns=[
52-
"~PRIMARY_KEY_ID~",
53-
"id",
54-
"user_id",
55-
"data>item",
56-
"data>cost",
57-
"data>details>color",
58-
],
5947
invented_table_metadata={
6048
"invented_root_table_name": "purchases-sfx",
6149
"original_table_name": "purchases",
@@ -64,16 +52,13 @@ def test_backup_relational_data_with_json(documents):
6452
),
6553
"purchases-data-years-sfx": BackupRelationalDataTable(
6654
primary_key=["~PRIMARY_KEY_ID~"],
67-
columns=["~PRIMARY_KEY_ID~", "purchases~id", "content", "array~order"],
6855
invented_table_metadata={
6956
"invented_root_table_name": "purchases-sfx",
7057
"original_table_name": "purchases",
7158
"empty": False,
7259
},
7360
),
74-
"payments": BackupRelationalDataTable(
75-
primary_key=["id"], columns=["id", "purchase_id", "amount"]
76-
),
61+
"payments": BackupRelationalDataTable(primary_key=["id"]),
7762
},
7863
foreign_keys=[
7964
BackupForeignKey(
@@ -116,11 +101,9 @@ def test_backup():
116101
tables={
117102
"customer": BackupRelationalDataTable(
118103
primary_key=["id"],
119-
columns=["a", "b", "c"],
120104
),
121105
"address": BackupRelationalDataTable(
122106
primary_key=[],
123-
columns=["x", "y", "z"],
124107
),
125108
},
126109
foreign_keys=[

0 commit comments

Comments
 (0)