Skip to content

Commit 3e05103

Browse files
authored
fix(datasets): Session handling for SnowParkDataset (#1036)
* Fix session handling Signed-off-by: Merel Theisen <[email protected]> * Update release notes Signed-off-by: Merel Theisen <[email protected]> --------- Signed-off-by: Merel Theisen <[email protected]>
1 parent 1898301 commit 3e05103

File tree

2 files changed

+5
-16
lines changed

2 files changed

+5
-16
lines changed

kedro-datasets/RELEASE.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Upcoming Release
1+
# Upcoming Release 7.0.0
22

33
## Major features and improvements
44

@@ -9,6 +9,7 @@
99

1010
- Fixed `polars.CSVDataset` `save` method on Windows using `utf-8` as default encoding.
1111
- Made `table_name` a keyword argument in the `ibis.FileDataset` implementation to be compatible with Ibis 10.0.
12+
- Fixed how sessions are handled in the `snowflake.SnowflakeTableDataset` implementation.
1213

1314
## Breaking Changes
1415

kedro-datasets/kedro_datasets/snowflake/snowpark_dataset.py

Lines changed: 3 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -232,11 +232,7 @@ def load(self) -> DataFrame:
232232
Returns:
233233
DataFrame: The loaded data as a Snowpark DataFrame.
234234
"""
235-
if self._session is None:
236-
raise DatasetError(
237-
"No active session. Please initialise a Snowpark session before loading data."
238-
)
239-
return self._session.table(self._validate_and_get_table_name())
235+
return self.session.table(self._validate_and_get_table_name())
240236

241237
def save(self, data: pd.DataFrame | DataFrame) -> None:
242238
"""
@@ -246,12 +242,8 @@ def save(self, data: pd.DataFrame | DataFrame) -> None:
246242
Args:
247243
data (pd.DataFrame | DataFrame): The data to save.
248244
"""
249-
if self._session is None:
250-
raise DatasetError(
251-
"No active session. Please initialise a Snowpark session before loading data."
252-
)
253245
if isinstance(data, pd.DataFrame):
254-
snowpark_df = self._session.create_dataframe(data)
246+
snowpark_df = self.session.create_dataframe(data)
255247
elif isinstance(data, DataFrame):
256248
snowpark_df = data
257249
else:
@@ -270,12 +262,8 @@ def _exists(self) -> bool:
270262
Returns:
271263
bool: True if the table exists, False otherwise.
272264
"""
273-
if self._session is None:
274-
raise DatasetError(
275-
"No active session. Please initialise a Snowpark session before loading data."
276-
)
277265
try:
278-
self._session.table(
266+
self.session.table(
279267
f"{self._database}.{self._schema}.{self._table_name}"
280268
).show()
281269
return True

0 commit comments

Comments
 (0)