snowpark-connect 0.27.0__py3-none-any.whl → 1.7.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- snowflake/snowpark_connect/__init__.py +1 -0
- snowflake/snowpark_connect/analyze_plan/map_tree_string.py +8 -4
- snowflake/snowpark_connect/client/__init__.py +15 -0
- snowflake/snowpark_connect/client/error_utils.py +30 -0
- snowflake/snowpark_connect/client/exceptions.py +36 -0
- snowflake/snowpark_connect/client/query_results.py +90 -0
- snowflake/snowpark_connect/client/server.py +717 -0
- snowflake/snowpark_connect/client/utils/__init__.py +10 -0
- snowflake/snowpark_connect/client/utils/session.py +85 -0
- snowflake/snowpark_connect/column_name_handler.py +404 -243
- snowflake/snowpark_connect/column_qualifier.py +43 -0
- snowflake/snowpark_connect/config.py +309 -26
- snowflake/snowpark_connect/constants.py +2 -0
- snowflake/snowpark_connect/dataframe_container.py +102 -8
- snowflake/snowpark_connect/date_time_format_mapping.py +71 -13
- snowflake/snowpark_connect/error/error_codes.py +50 -0
- snowflake/snowpark_connect/error/error_utils.py +172 -23
- snowflake/snowpark_connect/error/exceptions.py +13 -4
- snowflake/snowpark_connect/execute_plan/map_execution_command.py +15 -160
- snowflake/snowpark_connect/execute_plan/map_execution_root.py +26 -20
- snowflake/snowpark_connect/execute_plan/utils.py +5 -1
- snowflake/snowpark_connect/expression/error_utils.py +28 -0
- snowflake/snowpark_connect/expression/function_defaults.py +9 -2
- snowflake/snowpark_connect/expression/hybrid_column_map.py +53 -5
- snowflake/snowpark_connect/expression/integral_types_support.py +219 -0
- snowflake/snowpark_connect/expression/literal.py +37 -13
- snowflake/snowpark_connect/expression/map_cast.py +224 -15
- snowflake/snowpark_connect/expression/map_expression.py +80 -27
- snowflake/snowpark_connect/expression/map_extension.py +322 -12
- snowflake/snowpark_connect/expression/map_sql_expression.py +316 -81
- snowflake/snowpark_connect/expression/map_udf.py +86 -20
- snowflake/snowpark_connect/expression/map_unresolved_attribute.py +451 -173
- snowflake/snowpark_connect/expression/map_unresolved_function.py +2964 -829
- snowflake/snowpark_connect/expression/map_unresolved_star.py +87 -23
- snowflake/snowpark_connect/expression/map_update_fields.py +70 -18
- snowflake/snowpark_connect/expression/map_window_function.py +18 -3
- snowflake/snowpark_connect/includes/jars/json4s-ast_2.13-3.7.0-M11.jar +0 -0
- snowflake/snowpark_connect/includes/jars/{scala-library-2.12.18.jar → sas-scala-udf_2.12-0.2.0.jar} +0 -0
- snowflake/snowpark_connect/includes/jars/sas-scala-udf_2.13-0.2.0.jar +0 -0
- snowflake/snowpark_connect/includes/jars/scala-reflect-2.13.16.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-common-utils_2.13-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/{spark-connect-client-jvm_2.12-3.5.6.jar → spark-connect-client-jvm_2.13-3.5.6.jar} +0 -0
- snowflake/snowpark_connect/includes/jars/{spark-sql_2.12-3.5.6.jar → spark-sql_2.13-3.5.6.jar} +0 -0
- snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/worker/foreach_batch_worker.py +1 -1
- snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/worker/listener_worker.py +1 -1
- snowflake/snowpark_connect/proto/snowflake_expression_ext_pb2.py +12 -10
- snowflake/snowpark_connect/proto/snowflake_expression_ext_pb2.pyi +14 -2
- snowflake/snowpark_connect/proto/snowflake_relation_ext_pb2.py +10 -8
- snowflake/snowpark_connect/proto/snowflake_relation_ext_pb2.pyi +13 -6
- snowflake/snowpark_connect/relation/catalogs/abstract_spark_catalog.py +65 -17
- snowflake/snowpark_connect/relation/catalogs/snowflake_catalog.py +297 -49
- snowflake/snowpark_connect/relation/catalogs/utils.py +12 -4
- snowflake/snowpark_connect/relation/io_utils.py +110 -10
- snowflake/snowpark_connect/relation/map_aggregate.py +239 -256
- snowflake/snowpark_connect/relation/map_catalog.py +5 -1
- snowflake/snowpark_connect/relation/map_column_ops.py +264 -96
- snowflake/snowpark_connect/relation/map_extension.py +263 -29
- snowflake/snowpark_connect/relation/map_join.py +683 -442
- snowflake/snowpark_connect/relation/map_local_relation.py +28 -1
- snowflake/snowpark_connect/relation/map_map_partitions.py +83 -8
- snowflake/snowpark_connect/relation/map_relation.py +48 -19
- snowflake/snowpark_connect/relation/map_row_ops.py +310 -91
- snowflake/snowpark_connect/relation/map_show_string.py +13 -6
- snowflake/snowpark_connect/relation/map_sql.py +1233 -222
- snowflake/snowpark_connect/relation/map_stats.py +48 -9
- snowflake/snowpark_connect/relation/map_subquery_alias.py +11 -2
- snowflake/snowpark_connect/relation/map_udtf.py +14 -4
- snowflake/snowpark_connect/relation/read/jdbc_read_dbapi.py +53 -14
- snowflake/snowpark_connect/relation/read/map_read.py +134 -43
- snowflake/snowpark_connect/relation/read/map_read_csv.py +326 -47
- snowflake/snowpark_connect/relation/read/map_read_jdbc.py +21 -6
- snowflake/snowpark_connect/relation/read/map_read_json.py +324 -86
- snowflake/snowpark_connect/relation/read/map_read_parquet.py +146 -28
- snowflake/snowpark_connect/relation/read/map_read_partitioned_parquet.py +142 -0
- snowflake/snowpark_connect/relation/read/map_read_socket.py +15 -3
- snowflake/snowpark_connect/relation/read/map_read_table.py +86 -6
- snowflake/snowpark_connect/relation/read/map_read_text.py +22 -4
- snowflake/snowpark_connect/relation/read/metadata_utils.py +170 -0
- snowflake/snowpark_connect/relation/read/reader_config.py +42 -3
- snowflake/snowpark_connect/relation/read/utils.py +50 -5
- snowflake/snowpark_connect/relation/stage_locator.py +91 -55
- snowflake/snowpark_connect/relation/utils.py +128 -5
- snowflake/snowpark_connect/relation/write/jdbc_write_dbapi.py +19 -3
- snowflake/snowpark_connect/relation/write/map_write.py +929 -319
- snowflake/snowpark_connect/relation/write/map_write_jdbc.py +8 -2
- snowflake/snowpark_connect/resources/java_udfs-1.0-SNAPSHOT.jar +0 -0
- snowflake/snowpark_connect/resources_initializer.py +171 -48
- snowflake/snowpark_connect/server.py +528 -473
- snowflake/snowpark_connect/server_common/__init__.py +503 -0
- snowflake/snowpark_connect/snowflake_session.py +65 -0
- snowflake/snowpark_connect/start_server.py +53 -5
- snowflake/snowpark_connect/type_mapping.py +349 -27
- snowflake/snowpark_connect/type_support.py +130 -0
- snowflake/snowpark_connect/typed_column.py +9 -7
- snowflake/snowpark_connect/utils/artifacts.py +9 -8
- snowflake/snowpark_connect/utils/cache.py +49 -27
- snowflake/snowpark_connect/utils/concurrent.py +36 -1
- snowflake/snowpark_connect/utils/context.py +195 -37
- snowflake/snowpark_connect/utils/describe_query_cache.py +68 -53
- snowflake/snowpark_connect/utils/env_utils.py +5 -1
- snowflake/snowpark_connect/utils/expression_transformer.py +172 -0
- snowflake/snowpark_connect/utils/identifiers.py +137 -3
- snowflake/snowpark_connect/utils/io_utils.py +57 -1
- snowflake/snowpark_connect/utils/java_stored_procedure.py +151 -0
- snowflake/snowpark_connect/utils/java_udaf_utils.py +321 -0
- snowflake/snowpark_connect/utils/java_udtf_utils.py +239 -0
- snowflake/snowpark_connect/utils/jvm_udf_utils.py +281 -0
- snowflake/snowpark_connect/utils/open_telemetry.py +516 -0
- snowflake/snowpark_connect/utils/pandas_udtf_utils.py +8 -4
- snowflake/snowpark_connect/utils/patch_spark_line_number.py +181 -0
- snowflake/snowpark_connect/utils/profiling.py +25 -8
- snowflake/snowpark_connect/utils/scala_udf_utils.py +185 -340
- snowflake/snowpark_connect/utils/sequence.py +21 -0
- snowflake/snowpark_connect/utils/session.py +64 -28
- snowflake/snowpark_connect/utils/snowpark_connect_logging.py +51 -9
- snowflake/snowpark_connect/utils/spcs_logger.py +290 -0
- snowflake/snowpark_connect/utils/telemetry.py +192 -40
- snowflake/snowpark_connect/utils/temporary_view_cache.py +67 -0
- snowflake/snowpark_connect/utils/temporary_view_helper.py +334 -0
- snowflake/snowpark_connect/utils/udf_cache.py +117 -41
- snowflake/snowpark_connect/utils/udf_helper.py +39 -37
- snowflake/snowpark_connect/utils/udf_utils.py +133 -14
- snowflake/snowpark_connect/utils/udtf_helper.py +8 -1
- snowflake/snowpark_connect/utils/udtf_utils.py +46 -31
- snowflake/snowpark_connect/utils/udxf_import_utils.py +9 -2
- snowflake/snowpark_connect/utils/upload_java_jar.py +57 -0
- snowflake/snowpark_connect/version.py +1 -1
- snowflake/snowpark_decoder/dp_session.py +6 -2
- snowflake/snowpark_decoder/spark_decoder.py +12 -0
- {snowpark_connect-0.27.0.data → snowpark_connect-1.7.0.data}/scripts/snowpark-submit +14 -4
- {snowpark_connect-0.27.0.dist-info → snowpark_connect-1.7.0.dist-info}/METADATA +16 -7
- {snowpark_connect-0.27.0.dist-info → snowpark_connect-1.7.0.dist-info}/RECORD +139 -168
- snowflake/snowpark_connect/hidden_column.py +0 -39
- snowflake/snowpark_connect/includes/jars/antlr4-runtime-4.9.3.jar +0 -0
- snowflake/snowpark_connect/includes/jars/commons-cli-1.5.0.jar +0 -0
- snowflake/snowpark_connect/includes/jars/commons-codec-1.16.1.jar +0 -0
- snowflake/snowpark_connect/includes/jars/commons-collections-3.2.2.jar +0 -0
- snowflake/snowpark_connect/includes/jars/commons-collections4-4.4.jar +0 -0
- snowflake/snowpark_connect/includes/jars/commons-compiler-3.1.9.jar +0 -0
- snowflake/snowpark_connect/includes/jars/commons-compress-1.26.0.jar +0 -0
- snowflake/snowpark_connect/includes/jars/commons-crypto-1.1.0.jar +0 -0
- snowflake/snowpark_connect/includes/jars/commons-dbcp-1.4.jar +0 -0
- snowflake/snowpark_connect/includes/jars/commons-io-2.16.1.jar +0 -0
- snowflake/snowpark_connect/includes/jars/commons-lang-2.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/commons-lang3-3.12.0.jar +0 -0
- snowflake/snowpark_connect/includes/jars/commons-logging-1.1.3.jar +0 -0
- snowflake/snowpark_connect/includes/jars/commons-math3-3.6.1.jar +0 -0
- snowflake/snowpark_connect/includes/jars/commons-pool-1.5.4.jar +0 -0
- snowflake/snowpark_connect/includes/jars/commons-text-1.10.0.jar +0 -0
- snowflake/snowpark_connect/includes/jars/hadoop-client-api-trimmed-3.3.4.jar +0 -0
- snowflake/snowpark_connect/includes/jars/jackson-annotations-2.15.2.jar +0 -0
- snowflake/snowpark_connect/includes/jars/jackson-core-2.15.2.jar +0 -0
- snowflake/snowpark_connect/includes/jars/jackson-core-asl-1.9.13.jar +0 -0
- snowflake/snowpark_connect/includes/jars/jackson-databind-2.15.2.jar +0 -0
- snowflake/snowpark_connect/includes/jars/jackson-dataformat-yaml-2.15.2.jar +0 -0
- snowflake/snowpark_connect/includes/jars/jackson-datatype-jsr310-2.15.2.jar +0 -0
- snowflake/snowpark_connect/includes/jars/jackson-module-scala_2.12-2.15.2.jar +0 -0
- snowflake/snowpark_connect/includes/jars/json4s-ast_2.12-3.7.0-M11.jar +0 -0
- snowflake/snowpark_connect/includes/jars/json4s-core_2.12-3.7.0-M11.jar +0 -0
- snowflake/snowpark_connect/includes/jars/json4s-jackson_2.12-3.7.0-M11.jar +0 -0
- snowflake/snowpark_connect/includes/jars/json4s-native_2.12-3.7.0-M11.jar +0 -0
- snowflake/snowpark_connect/includes/jars/json4s-scalap_2.12-3.7.0-M11.jar +0 -0
- snowflake/snowpark_connect/includes/jars/kryo-shaded-4.0.2.jar +0 -0
- snowflake/snowpark_connect/includes/jars/log4j-1.2-api-2.20.0.jar +0 -0
- snowflake/snowpark_connect/includes/jars/log4j-api-2.20.0.jar +0 -0
- snowflake/snowpark_connect/includes/jars/log4j-core-2.20.0.jar +0 -0
- snowflake/snowpark_connect/includes/jars/log4j-slf4j2-impl-2.20.0.jar +0 -0
- snowflake/snowpark_connect/includes/jars/paranamer-2.8.3.jar +0 -0
- snowflake/snowpark_connect/includes/jars/paranamer-2.8.jar +0 -0
- snowflake/snowpark_connect/includes/jars/sas-scala-udf_2.12-0.1.0.jar +0 -0
- snowflake/snowpark_connect/includes/jars/scala-collection-compat_2.12-2.7.0.jar +0 -0
- snowflake/snowpark_connect/includes/jars/scala-parser-combinators_2.12-2.3.0.jar +0 -0
- snowflake/snowpark_connect/includes/jars/scala-reflect-2.12.18.jar +0 -0
- snowflake/snowpark_connect/includes/jars/scala-xml_2.12-2.1.0.jar +0 -0
- snowflake/snowpark_connect/includes/jars/slf4j-api-2.0.7.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-catalyst_2.12-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-common-utils_2.12-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-core_2.12-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-graphx_2.12-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-hive-thriftserver_2.12-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-hive_2.12-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-kvstore_2.12-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-launcher_2.12-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-mesos_2.12-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-mllib-local_2.12-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-network-common_2.12-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-network-shuffle_2.12-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-repl_2.12-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-sketch_2.12-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-sql-api_2.12-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-tags_2.12-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-unsafe_2.12-3.5.6.jar +0 -0
- snowflake/snowpark_connect/includes/jars/spark-yarn_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.27.0.data → snowpark_connect-1.7.0.data}/scripts/snowpark-connect +0 -0
- {snowpark_connect-0.27.0.data → snowpark_connect-1.7.0.data}/scripts/snowpark-session +0 -0
- {snowpark_connect-0.27.0.dist-info → snowpark_connect-1.7.0.dist-info}/WHEEL +0 -0
- {snowpark_connect-0.27.0.dist-info → snowpark_connect-1.7.0.dist-info}/licenses/LICENSE-binary +0 -0
- {snowpark_connect-0.27.0.dist-info → snowpark_connect-1.7.0.dist-info}/licenses/LICENSE.txt +0 -0
- {snowpark_connect-0.27.0.dist-info → snowpark_connect-1.7.0.dist-info}/licenses/NOTICE-binary +0 -0
- {snowpark_connect-0.27.0.dist-info → snowpark_connect-1.7.0.dist-info}/top_level.txt +0 -0
|
@@ -11,6 +11,8 @@ import pyspark.sql.connect.proto.types_pb2 as types_proto
|
|
|
11
11
|
|
|
12
12
|
from snowflake.snowpark._internal.analyzer.analyzer_utils import unquote_if_quoted
|
|
13
13
|
from snowflake.snowpark_connect.dataframe_container import DataFrameContainer
|
|
14
|
+
from snowflake.snowpark_connect.error.error_codes import ErrorCodes
|
|
15
|
+
from snowflake.snowpark_connect.error.error_utils import attach_custom_error_code
|
|
14
16
|
from snowflake.snowpark_connect.error.exceptions import MissingDatabase, MissingSchema
|
|
15
17
|
from snowflake.snowpark_connect.utils.identifiers import (
|
|
16
18
|
split_fully_qualified_spark_name,
|
|
@@ -39,28 +41,40 @@ class AbstractSparkCatalog(ABC):
|
|
|
39
41
|
description: str,
|
|
40
42
|
**options: typing.Any,
|
|
41
43
|
) -> DataFrameContainer:
|
|
42
|
-
|
|
44
|
+
exception = SnowparkConnectNotImplementedError("createTable is not implemented")
|
|
45
|
+
attach_custom_error_code(exception, ErrorCodes.UNSUPPORTED_OPERATION)
|
|
46
|
+
raise exception
|
|
43
47
|
|
|
44
48
|
@abstractmethod
|
|
45
49
|
def listDatabases(
|
|
46
50
|
self,
|
|
47
51
|
pattern: str | None = None,
|
|
48
52
|
) -> pandas.DataFrame:
|
|
49
|
-
|
|
53
|
+
exception = SnowparkConnectNotImplementedError(
|
|
54
|
+
"listDatabases is not implemented"
|
|
55
|
+
)
|
|
56
|
+
attach_custom_error_code(exception, ErrorCodes.UNSUPPORTED_OPERATION)
|
|
57
|
+
raise exception
|
|
50
58
|
|
|
51
59
|
@abstractmethod
|
|
52
60
|
def getDatabase(
|
|
53
61
|
self,
|
|
54
62
|
spark_dbName: str,
|
|
55
63
|
) -> pandas.DataFrame:
|
|
56
|
-
|
|
64
|
+
exception = SnowparkConnectNotImplementedError("getDatabase is not implemented")
|
|
65
|
+
attach_custom_error_code(exception, ErrorCodes.UNSUPPORTED_OPERATION)
|
|
66
|
+
raise exception
|
|
57
67
|
|
|
58
68
|
@abstractmethod
|
|
59
69
|
def databaseExists(
|
|
60
70
|
self,
|
|
61
71
|
spark_dbName: str,
|
|
62
72
|
) -> pandas.DataFrame:
|
|
63
|
-
|
|
73
|
+
exception = SnowparkConnectNotImplementedError(
|
|
74
|
+
"databaseExists is not implemented"
|
|
75
|
+
)
|
|
76
|
+
attach_custom_error_code(exception, ErrorCodes.UNSUPPORTED_OPERATION)
|
|
77
|
+
raise exception
|
|
64
78
|
|
|
65
79
|
@abstractmethod
|
|
66
80
|
def listTables(
|
|
@@ -68,14 +82,18 @@ class AbstractSparkCatalog(ABC):
|
|
|
68
82
|
spark_dbName: str | None = None,
|
|
69
83
|
pattern: str | None = None,
|
|
70
84
|
) -> pandas.DataFrame:
|
|
71
|
-
|
|
85
|
+
exception = SnowparkConnectNotImplementedError("listTables is not implemented")
|
|
86
|
+
attach_custom_error_code(exception, ErrorCodes.UNSUPPORTED_OPERATION)
|
|
87
|
+
raise exception
|
|
72
88
|
|
|
73
89
|
@abstractmethod
|
|
74
90
|
def getTable(
|
|
75
91
|
self,
|
|
76
92
|
spark_tableName: str,
|
|
77
93
|
) -> pandas.DataFrame:
|
|
78
|
-
|
|
94
|
+
exception = SnowparkConnectNotImplementedError("getTable is not implemented")
|
|
95
|
+
attach_custom_error_code(exception, ErrorCodes.UNSUPPORTED_OPERATION)
|
|
96
|
+
raise exception
|
|
79
97
|
|
|
80
98
|
@abstractmethod
|
|
81
99
|
def tableExists(
|
|
@@ -83,7 +101,9 @@ class AbstractSparkCatalog(ABC):
|
|
|
83
101
|
spark_tableName: str,
|
|
84
102
|
spark_dbName: str | None,
|
|
85
103
|
) -> pandas.DataFrame:
|
|
86
|
-
|
|
104
|
+
exception = SnowparkConnectNotImplementedError("tableExists is not implemented")
|
|
105
|
+
attach_custom_error_code(exception, ErrorCodes.UNSUPPORTED_OPERATION)
|
|
106
|
+
raise exception
|
|
87
107
|
|
|
88
108
|
@abstractmethod
|
|
89
109
|
def listColumns(
|
|
@@ -91,36 +111,50 @@ class AbstractSparkCatalog(ABC):
|
|
|
91
111
|
spark_tableName: str,
|
|
92
112
|
spark_dbName: str | None = None,
|
|
93
113
|
) -> pandas.DataFrame:
|
|
94
|
-
|
|
114
|
+
exception = SnowparkConnectNotImplementedError("listColumns is not implemented")
|
|
115
|
+
attach_custom_error_code(exception, ErrorCodes.UNSUPPORTED_OPERATION)
|
|
116
|
+
raise exception
|
|
95
117
|
|
|
96
118
|
@abstractmethod
|
|
97
119
|
def currentDatabase(self) -> pandas.DataFrame:
|
|
98
|
-
|
|
120
|
+
exception = SnowparkConnectNotImplementedError(
|
|
121
|
+
"currentDatabase is not implemented"
|
|
122
|
+
)
|
|
123
|
+
attach_custom_error_code(exception, ErrorCodes.UNSUPPORTED_OPERATION)
|
|
124
|
+
raise exception
|
|
99
125
|
|
|
100
126
|
@abstractmethod
|
|
101
127
|
def setCurrentDatabase(
|
|
102
128
|
self,
|
|
103
129
|
spark_dbName: str,
|
|
104
130
|
) -> pandas.DataFrame:
|
|
105
|
-
|
|
131
|
+
exception = SnowparkConnectNotImplementedError(
|
|
106
132
|
"setCurrentDatabase is not implemented"
|
|
107
133
|
)
|
|
134
|
+
attach_custom_error_code(exception, ErrorCodes.UNSUPPORTED_OPERATION)
|
|
135
|
+
raise exception
|
|
108
136
|
|
|
109
137
|
@abstractmethod
|
|
110
138
|
def dropGlobalTempView(
|
|
111
139
|
self,
|
|
112
140
|
spark_view_name: str,
|
|
113
141
|
) -> DataFrameContainer:
|
|
114
|
-
|
|
142
|
+
exception = SnowparkConnectNotImplementedError(
|
|
115
143
|
"dropGlobalTempView is not implemented"
|
|
116
144
|
)
|
|
145
|
+
attach_custom_error_code(exception, ErrorCodes.UNSUPPORTED_OPERATION)
|
|
146
|
+
raise exception
|
|
117
147
|
|
|
118
148
|
@abstractmethod
|
|
119
149
|
def dropTempView(
|
|
120
150
|
self,
|
|
121
151
|
spark_view_name: str,
|
|
122
152
|
) -> DataFrameContainer:
|
|
123
|
-
|
|
153
|
+
exception = SnowparkConnectNotImplementedError(
|
|
154
|
+
"dropTempView is not implemented"
|
|
155
|
+
)
|
|
156
|
+
attach_custom_error_code(exception, ErrorCodes.UNSUPPORTED_OPERATION)
|
|
157
|
+
raise exception
|
|
124
158
|
|
|
125
159
|
def cacheTable(
|
|
126
160
|
self,
|
|
@@ -135,9 +169,11 @@ class AbstractSparkCatalog(ABC):
|
|
|
135
169
|
spark_tableName
|
|
136
170
|
)
|
|
137
171
|
if catalog is not None and self != catalog:
|
|
138
|
-
|
|
172
|
+
exception = SnowparkConnectNotImplementedError(
|
|
139
173
|
"Calling into another catalog is not currently supported"
|
|
140
174
|
)
|
|
175
|
+
attach_custom_error_code(exception, ErrorCodes.UNSUPPORTED_OPERATION)
|
|
176
|
+
raise exception
|
|
141
177
|
if sf_database is None:
|
|
142
178
|
sf_database = _get_current_snowflake_database()
|
|
143
179
|
if sf_schema is None:
|
|
@@ -168,9 +204,11 @@ class AbstractSparkCatalog(ABC):
|
|
|
168
204
|
spark_tableName
|
|
169
205
|
)
|
|
170
206
|
if catalog is not None and self != catalog:
|
|
171
|
-
|
|
207
|
+
exception = SnowparkConnectNotImplementedError(
|
|
172
208
|
"Calling into another catalog is not currently supported"
|
|
173
209
|
)
|
|
210
|
+
attach_custom_error_code(exception, ErrorCodes.UNSUPPORTED_OPERATION)
|
|
211
|
+
raise exception
|
|
174
212
|
if sf_database is None:
|
|
175
213
|
sf_database = _get_current_snowflake_database()
|
|
176
214
|
if sf_schema is None:
|
|
@@ -194,9 +232,11 @@ class AbstractSparkCatalog(ABC):
|
|
|
194
232
|
spark_tableName
|
|
195
233
|
)
|
|
196
234
|
if catalog is not None and self != catalog:
|
|
197
|
-
|
|
235
|
+
exception = SnowparkConnectNotImplementedError(
|
|
198
236
|
"Calling into another catalog is not currently supported"
|
|
199
237
|
)
|
|
238
|
+
attach_custom_error_code(exception, ErrorCodes.UNSUPPORTED_OPERATION)
|
|
239
|
+
raise exception
|
|
200
240
|
if sf_database is None:
|
|
201
241
|
sf_database = _get_current_snowflake_database()
|
|
202
242
|
if sf_schema is None:
|
|
@@ -249,7 +289,11 @@ def _process_multi_layer_database(
|
|
|
249
289
|
else:
|
|
250
290
|
return None, c, d
|
|
251
291
|
case _:
|
|
252
|
-
|
|
292
|
+
exception = ValueError(
|
|
293
|
+
f"Unexpected database identifier format: {spark_mli}"
|
|
294
|
+
)
|
|
295
|
+
attach_custom_error_code(exception, ErrorCodes.INVALID_INPUT)
|
|
296
|
+
raise exception
|
|
253
297
|
|
|
254
298
|
|
|
255
299
|
def _process_multi_layer_identifier(
|
|
@@ -283,5 +327,9 @@ def _process_multi_layer_identifier(
|
|
|
283
327
|
else:
|
|
284
328
|
snowflake_database, snowflake_schema, snowflake_obj = d, s, t
|
|
285
329
|
case _:
|
|
286
|
-
|
|
330
|
+
exception = ValueError(
|
|
331
|
+
f"Unexpected table/view identifier format: {spark_mli}"
|
|
332
|
+
)
|
|
333
|
+
attach_custom_error_code(exception, ErrorCodes.INVALID_INPUT)
|
|
334
|
+
raise exception
|
|
287
335
|
return spark_catalog, snowflake_database, snowflake_schema, snowflake_obj
|