snowpark-connect 0.26.0__tar.gz → 0.27.0__tar.gz
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.
Potentially problematic release.
This version of snowpark-connect might be problematic. Click here for more details.
- {snowpark_connect-0.26.0/src/snowpark_connect.egg-info → snowpark_connect-0.27.0}/PKG-INFO +2 -2
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/setup.py +1 -1
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/config.py +0 -3
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/expression/map_expression.py +15 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/expression/map_unresolved_attribute.py +18 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/expression/map_unresolved_function.py +16 -7
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/map_extension.py +9 -7
- snowpark_connect-0.27.0/src/snowflake/snowpark_connect/relation/map_map_partitions.py +117 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/map_relation.py +3 -1
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/map_show_string.py +2 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/map_sql.py +63 -2
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/write/map_write.py +24 -4
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/server.py +4 -1
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/artifacts.py +4 -5
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/context.py +41 -1
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/pandas_udtf_utils.py +86 -2
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/udf_utils.py +66 -103
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/udtf_helper.py +17 -7
- snowpark_connect-0.27.0/src/snowflake/snowpark_connect/version.py +5 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0/src/snowpark_connect.egg-info}/PKG-INFO +2 -2
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowpark_connect.egg-info/requires.txt +1 -1
- snowpark_connect-0.26.0/src/snowflake/snowpark_connect/relation/map_map_partitions.py +0 -158
- snowpark_connect-0.26.0/src/snowflake/snowpark_connect/version.py +0 -6
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/LICENSE-binary +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/LICENSE.txt +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/NOTICE-binary +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/README.md +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/setup.cfg +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/analyze_plan/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/analyze_plan/map_tree_string.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/column_name_handler.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/constants.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/control_server.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/dataframe_container.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/dataframe_name_handler.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/date_time_format_mapping.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/empty_dataframe.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/error/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/error/error_mapping.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/error/error_utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/error/exceptions.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/execute_plan/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/execute_plan/map_execution_command.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/execute_plan/map_execution_root.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/execute_plan/utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/expression/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/expression/function_defaults.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/expression/hybrid_column_map.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/expression/literal.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/expression/map_cast.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/expression/map_extension.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/expression/map_sql_expression.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/expression/map_udf.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/expression/map_unresolved_extract_value.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/expression/map_unresolved_star.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/expression/map_update_fields.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/expression/map_window_function.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/expression/typer.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/hidden_column.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/antlr4-runtime-4.9.3.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/commons-cli-1.5.0.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/commons-codec-1.16.1.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/commons-collections-3.2.2.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/commons-collections4-4.4.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/commons-compiler-3.1.9.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/commons-compress-1.26.0.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/commons-crypto-1.1.0.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/commons-dbcp-1.4.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/commons-io-2.16.1.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/commons-lang-2.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/commons-lang3-3.12.0.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/commons-logging-1.1.3.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/commons-math3-3.6.1.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/commons-pool-1.5.4.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/commons-text-1.10.0.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/hadoop-client-api-trimmed-3.3.4.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/jackson-annotations-2.15.2.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/jackson-core-2.15.2.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/jackson-core-asl-1.9.13.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/jackson-databind-2.15.2.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/jackson-dataformat-yaml-2.15.2.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/jackson-datatype-jsr310-2.15.2.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/jackson-module-scala_2.12-2.15.2.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/json4s-ast_2.12-3.7.0-M11.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/json4s-core_2.12-3.7.0-M11.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/json4s-jackson_2.12-3.7.0-M11.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/json4s-native_2.12-3.7.0-M11.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/json4s-scalap_2.12-3.7.0-M11.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/kryo-shaded-4.0.2.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/log4j-1.2-api-2.20.0.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/log4j-api-2.20.0.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/log4j-core-2.20.0.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/log4j-slf4j2-impl-2.20.0.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/paranamer-2.8.3.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/paranamer-2.8.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/sas-scala-udf_2.12-0.1.0.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/scala-collection-compat_2.12-2.7.0.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/scala-library-2.12.18.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/scala-parser-combinators_2.12-2.3.0.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/scala-reflect-2.12.18.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/scala-xml_2.12-2.1.0.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/slf4j-api-2.0.7.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-catalyst_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-common-utils_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-connect-client-jvm_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-core_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-graphx_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-hive-thriftserver_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-hive_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-kvstore_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-launcher_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-mesos_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-mllib-local_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-network-common_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-network-shuffle_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-repl_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-sketch_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-sql-api_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-sql_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-tags_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-unsafe_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/jars/spark-yarn_2.12-3.5.6.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/_globals.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/_typing.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/accumulators.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/broadcast.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/cloudpickle/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/cloudpickle/cloudpickle.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/cloudpickle/cloudpickle_fast.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/cloudpickle/compat.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/conf.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/context.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/daemon.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/error_classes.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/exceptions/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/exceptions/base.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/exceptions/captured.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/exceptions/connect.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/errors/utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/files.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/find_spark_home.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/install.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/instrumentation_utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/java_gateway.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/join.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/_typing.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/base.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/classification.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/clustering.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/common.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/base.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/classification.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/evaluation.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/feature.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/functions.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/io_utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/pipeline.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/summarizer.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/tuning.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/connect/util.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/deepspeed/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/deepspeed/deepspeed_distributor.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/dl_util.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/evaluation.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/feature.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/fpm.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/functions.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/image.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/linalg/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/model_cache.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/param/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/param/_shared_params_code_gen.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/param/shared.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/pipeline.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/recommendation.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/regression.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/stat.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/torch/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/torch/data.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/torch/distributor.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/torch/log_communication.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/torch/torch_run_process_wrapper.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/tree.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/tuning.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/util.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/ml/wrapper.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/_typing.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/classification.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/clustering.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/common.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/evaluation.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/feature.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/fpm.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/linalg/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/linalg/distributed.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/random.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/recommendation.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/regression.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/stat/KernelDensity.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/stat/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/stat/_statistics.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/stat/distribution.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/stat/test.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/tree.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/mllib/util.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/_typing.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/accessors.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/base.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/categorical.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/config.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/correlation.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/base.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/binary_ops.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/boolean_ops.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/categorical_ops.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/complex_ops.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/date_ops.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/datetime_ops.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/null_ops.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/num_ops.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/string_ops.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/timedelta_ops.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/data_type_ops/udt_ops.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/datetimes.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/exceptions.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/extensions.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/frame.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/generic.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/groupby.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/base.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/category.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/datetimes.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/multi.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/numeric.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexes/timedelta.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/indexing.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/internal.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/common.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/frame.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/general_functions.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/groupby.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/indexes.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/resample.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/scalars.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/series.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/missing/window.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/mlflow.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/namespace.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/numpy_compat.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/plot/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/plot/core.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/plot/matplotlib.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/plot/plotly.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/resample.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/series.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/sql_formatter.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/sql_processor.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/strings.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/supported_api_gen.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/typedef/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/typedef/typehints.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/usage_logging/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/usage_logging/usage_logger.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/pandas/window.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/profiler.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/py.typed +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/python/pyspark/shell.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/rdd.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/rddsampler.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/resource/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/resource/information.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/resource/profile.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/resource/requests.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/resultiterable.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/serializers.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/shell.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/shuffle.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/_typing.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/avro/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/avro/functions.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/catalog.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/column.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/conf.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/_typing.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/avro/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/avro/functions.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/catalog.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/client/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/client/artifact.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/client/core.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/client/reattach.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/column.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/conf.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/conversion.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/dataframe.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/expressions.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/functions.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/group.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/plan.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/base_pb2.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/base_pb2.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/base_pb2_grpc.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/catalog_pb2.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/catalog_pb2.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/commands_pb2.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/commands_pb2.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/common_pb2.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/common_pb2.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/example_plugins_pb2.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/example_plugins_pb2.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/expressions_pb2.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/expressions_pb2.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/relations_pb2.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/relations_pb2.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/types_pb2.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/proto/types_pb2.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/protobuf/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/protobuf/functions.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/readwriter.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/session.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/query.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/readwriter.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/worker/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/worker/foreach_batch_worker.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/streaming/worker/listener_worker.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/types.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/udf.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/udtf.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/connect/window.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/context.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/dataframe.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/functions.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/group.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/observation.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/_typing/__init__.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/_typing/protocols/__init__.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/_typing/protocols/frame.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/_typing/protocols/series.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/conversion.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/functions.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/functions.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/group_ops.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/map_ops.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/serializers.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/typehints.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/types.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/pandas/utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/protobuf/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/protobuf/functions.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/readwriter.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/session.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/sql_formatter.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/streaming/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/streaming/listener.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/streaming/query.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/streaming/readwriter.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/streaming/state.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/types.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/udf.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/udtf.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/sql/window.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/statcounter.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/status.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/storagelevel.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/context.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/dstream.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/kinesis.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/listener.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/streaming/util.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/taskcontext.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/connectutils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/mllibutils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/mlutils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/objects.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/pandasutils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/sqlutils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/streamingutils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/testing/utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/traceback_utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/util.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/version.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/worker.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/includes/python/pyspark/worker_util.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/proto/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/proto/control_pb2.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/proto/control_pb2.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/proto/control_pb2_grpc.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/proto/snowflake_expression_ext_pb2.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/proto/snowflake_expression_ext_pb2.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/proto/snowflake_rdd_pb2.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/proto/snowflake_relation_ext_pb2.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/proto/snowflake_relation_ext_pb2.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/catalogs/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/catalogs/abstract_spark_catalog.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/catalogs/snowflake_catalog.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/catalogs/utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/io_utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/map_aggregate.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/map_catalog.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/map_column_ops.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/map_crosstab.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/map_join.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/map_local_relation.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/map_row_ops.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/map_sample_by.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/map_stats.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/map_subquery_alias.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/map_udtf.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/read/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/read/jdbc_read_dbapi.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/read/map_read.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/read/map_read_csv.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/read/map_read_jdbc.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/read/map_read_json.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/read/map_read_parquet.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/read/map_read_socket.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/read/map_read_table.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/read/map_read_text.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/read/reader_config.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/read/utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/stage_locator.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/write/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/write/jdbc_write_dbapi.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/relation/write/map_write_jdbc.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/resources/java_udfs-1.0-SNAPSHOT.jar +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/resources_initializer.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/start_server.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/tcm.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/type_mapping.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/typed_column.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/cache.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/concurrent.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/describe_query_cache.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/env_utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/external_udxf_cache.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/identifiers.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/interrupt.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/io_utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/profiling.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/scala_udf_utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/session.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/snowpark_connect_logging.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/telemetry.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/udf_cache.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/udf_helper.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/udtf_utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/udxf_import_utils.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/xxhash64.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_decoder/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_decoder/_internal/proto/generated/DataframeProcessorMsg_pb2.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_decoder/_internal/proto/generated/DataframeProcessorMsg_pb2.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_decoder/dp_session.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_decoder/spark_decoder.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowpark_connect.egg-info/SOURCES.txt +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowpark_connect.egg-info/dependency_links.txt +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowpark_connect.egg-info/top_level.txt +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/spark/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/spark/connect/__init__.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/spark/connect/envelope_pb2.py +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/spark/connect/envelope_pb2.pyi +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/tools/snowpark-connect +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/tools/snowpark-session +0 -0
- {snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/tools/snowpark-submit +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: snowpark-connect
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.27.0
|
|
4
4
|
Summary: Snowpark Connect for Spark
|
|
5
5
|
Author: Snowflake, Inc
|
|
6
6
|
License: Apache License, Version 2.0
|
|
@@ -16,7 +16,7 @@ Requires-Dist: jpype1
|
|
|
16
16
|
Requires-Dist: protobuf<5.0,>=4.25.3
|
|
17
17
|
Requires-Dist: s3fs>=2025.3.0
|
|
18
18
|
Requires-Dist: snowflake.core<2,>=1.0.5
|
|
19
|
-
Requires-Dist: snowflake-snowpark-python[pandas]<1.
|
|
19
|
+
Requires-Dist: snowflake-snowpark-python[pandas]<1.39.0,==1.38.0
|
|
20
20
|
Requires-Dist: sqlglot>=26.3.8
|
|
21
21
|
Requires-Dist: jaydebeapi
|
|
22
22
|
Requires-Dist: aiobotocore~=2.23.0
|
|
@@ -46,7 +46,7 @@ setup(
|
|
|
46
46
|
"protobuf>=4.25.3,<5.0",
|
|
47
47
|
"s3fs>=2025.3.0", # prod-297255-inc0132291
|
|
48
48
|
"snowflake.core>=1.0.5,<2",
|
|
49
|
-
"snowflake-snowpark-python[pandas]
|
|
49
|
+
"snowflake-snowpark-python[pandas]==1.38.0,<1.39.0",
|
|
50
50
|
"sqlglot>=26.3.8",
|
|
51
51
|
"jaydebeapi",
|
|
52
52
|
"aiobotocore~=2.23.0",
|
{snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/config.py
RENAMED
|
@@ -171,9 +171,6 @@ class GlobalConfig:
|
|
|
171
171
|
"spark.app.name": lambda session, name: setattr(
|
|
172
172
|
session, "query_tag", f"Spark-Connect-App-Name={name}"
|
|
173
173
|
),
|
|
174
|
-
"snowpark.connect.udf.packages": lambda session, packages: session.add_packages(
|
|
175
|
-
*packages.strip("[] ").split(",")
|
|
176
|
-
),
|
|
177
174
|
"snowpark.connect.udf.imports": lambda session, imports: parse_imports(
|
|
178
175
|
session, imports
|
|
179
176
|
),
|
|
@@ -6,6 +6,7 @@ import datetime
|
|
|
6
6
|
from collections import defaultdict
|
|
7
7
|
|
|
8
8
|
import pyspark.sql.connect.proto.expressions_pb2 as expressions_proto
|
|
9
|
+
from pyspark.errors.exceptions.connect import AnalysisException
|
|
9
10
|
|
|
10
11
|
import snowflake.snowpark.functions as snowpark_fn
|
|
11
12
|
from snowflake import snowpark
|
|
@@ -34,6 +35,7 @@ from snowflake.snowpark_connect.type_mapping import (
|
|
|
34
35
|
from snowflake.snowpark_connect.typed_column import TypedColumn
|
|
35
36
|
from snowflake.snowpark_connect.utils.context import (
|
|
36
37
|
gen_sql_plan_id,
|
|
38
|
+
get_current_lambda_params,
|
|
37
39
|
is_function_argument_being_resolved,
|
|
38
40
|
is_lambda_being_resolved,
|
|
39
41
|
)
|
|
@@ -271,6 +273,19 @@ def map_expression(
|
|
|
271
273
|
case "unresolved_function":
|
|
272
274
|
return map_func.map_unresolved_function(exp, column_mapping, typer)
|
|
273
275
|
case "unresolved_named_lambda_variable":
|
|
276
|
+
# Validate that this lambda variable is in scope
|
|
277
|
+
var_name = exp.unresolved_named_lambda_variable.name_parts[0]
|
|
278
|
+
current_params = get_current_lambda_params()
|
|
279
|
+
|
|
280
|
+
if current_params and var_name not in current_params:
|
|
281
|
+
raise AnalysisException(
|
|
282
|
+
f"Reference to non-lambda variable '{var_name}' within lambda function. "
|
|
283
|
+
f"Lambda functions can only access their own parameters. "
|
|
284
|
+
f"Available lambda parameters are: {current_params}. "
|
|
285
|
+
f"If '{var_name}' is an outer scope lambda variable from a nested lambda, "
|
|
286
|
+
f"that is an unsupported feature in Snowflake SQL."
|
|
287
|
+
)
|
|
288
|
+
|
|
274
289
|
col = snowpark_fn.Column(
|
|
275
290
|
UnresolvedAttribute(exp.unresolved_named_lambda_variable.name_parts[0])
|
|
276
291
|
)
|
|
@@ -22,6 +22,7 @@ from snowflake.snowpark_connect.utils.context import (
|
|
|
22
22
|
get_is_evaluating_sql,
|
|
23
23
|
get_outer_dataframes,
|
|
24
24
|
get_plan_id_map,
|
|
25
|
+
is_lambda_being_resolved,
|
|
25
26
|
resolve_lca_alias,
|
|
26
27
|
)
|
|
27
28
|
from snowflake.snowpark_connect.utils.identifiers import (
|
|
@@ -356,6 +357,23 @@ def map_unresolved_attribute(
|
|
|
356
357
|
return (unqualified_name, typed_col)
|
|
357
358
|
|
|
358
359
|
if snowpark_name is None:
|
|
360
|
+
# Check if we're inside a lambda and trying to reference an outer column
|
|
361
|
+
# This catches direct column references (not lambda variables)
|
|
362
|
+
if is_lambda_being_resolved() and column_mapping:
|
|
363
|
+
# Check if this column exists in the outer scope (not lambda params)
|
|
364
|
+
outer_col_name = (
|
|
365
|
+
column_mapping.get_snowpark_column_name_from_spark_column_name(
|
|
366
|
+
attr_name, allow_non_exists=True
|
|
367
|
+
)
|
|
368
|
+
)
|
|
369
|
+
if outer_col_name:
|
|
370
|
+
# This is an outer scope column being referenced inside a lambda
|
|
371
|
+
raise AnalysisException(
|
|
372
|
+
f"Reference to non-lambda variable '{attr_name}' within lambda function. "
|
|
373
|
+
f"Lambda functions can only access their own parameters. "
|
|
374
|
+
f"If '{attr_name}' is a table column, it must be passed as an explicit parameter to the enclosing function."
|
|
375
|
+
)
|
|
376
|
+
|
|
359
377
|
if has_plan_id:
|
|
360
378
|
raise AnalysisException(
|
|
361
379
|
f'[RESOLVED_REFERENCE_COLUMN_NOT_FOUND] The column "{attr_name}" does not exist in the target dataframe.'
|
|
@@ -711,6 +711,9 @@ def map_unresolved_function(
|
|
|
711
711
|
"-",
|
|
712
712
|
)
|
|
713
713
|
match (snowpark_typed_args[0].typ, snowpark_typed_args[1].typ):
|
|
714
|
+
case (DateType(), NullType()) | (NullType(), DateType()):
|
|
715
|
+
result_type = LongType()
|
|
716
|
+
result_exp = snowpark_fn.lit(None).cast(result_type)
|
|
714
717
|
case (NullType(), _) | (_, NullType()):
|
|
715
718
|
result_type = _get_add_sub_result_type(
|
|
716
719
|
snowpark_typed_args[0].typ,
|
|
@@ -724,7 +727,10 @@ def map_unresolved_function(
|
|
|
724
727
|
result_type = LongType()
|
|
725
728
|
result_exp = snowpark_args[0] - snowpark_args[1]
|
|
726
729
|
case (DateType(), StringType()):
|
|
727
|
-
if
|
|
730
|
+
if (
|
|
731
|
+
hasattr(snowpark_typed_args[1].col._expr1, "pretty_name")
|
|
732
|
+
and "INTERVAL" == snowpark_typed_args[1].col._expr1.pretty_name
|
|
733
|
+
):
|
|
728
734
|
result_type = TimestampType()
|
|
729
735
|
result_exp = snowpark_args[0] - snowpark_args[1]
|
|
730
736
|
else:
|
|
@@ -2421,7 +2427,7 @@ def map_unresolved_function(
|
|
|
2421
2427
|
"try_to_date",
|
|
2422
2428
|
snowpark_fn.cast(
|
|
2423
2429
|
truncated_date,
|
|
2424
|
-
TimestampType(
|
|
2430
|
+
TimestampType(),
|
|
2425
2431
|
),
|
|
2426
2432
|
snowpark_args[1],
|
|
2427
2433
|
)
|
|
@@ -8725,7 +8731,7 @@ def _resolve_function_with_lambda(
|
|
|
8725
8731
|
artificial_df = Session.get_active_session().create_dataframe([], schema)
|
|
8726
8732
|
set_schema_getter(artificial_df, lambda: schema)
|
|
8727
8733
|
|
|
8728
|
-
with resolving_lambda_function():
|
|
8734
|
+
with resolving_lambda_function(names):
|
|
8729
8735
|
return map_expression(
|
|
8730
8736
|
(
|
|
8731
8737
|
lambda_exp.lambda_function.function
|
|
@@ -9911,7 +9917,10 @@ def _get_spark_function_name(
|
|
|
9911
9917
|
return f"({date_param_name1} {operation_op} {date_param_name2})"
|
|
9912
9918
|
case (StringType(), DateType()):
|
|
9913
9919
|
date_param_name2 = _get_literal_param_name(exp, 1, snowpark_arg_names[1])
|
|
9914
|
-
if
|
|
9920
|
+
if (
|
|
9921
|
+
hasattr(col1.col._expr1, "pretty_name")
|
|
9922
|
+
and "INTERVAL" == col1.col._expr1.pretty_name
|
|
9923
|
+
):
|
|
9915
9924
|
return f"{date_param_name2} {operation_op} {snowpark_arg_names[0]}"
|
|
9916
9925
|
elif global_config.spark_sql_ansi_enabled and function_name == "+":
|
|
9917
9926
|
return f"{operation_func}(cast({date_param_name2} as date), cast({snowpark_arg_names[0]} as double))"
|
|
@@ -9919,9 +9928,9 @@ def _get_spark_function_name(
|
|
|
9919
9928
|
return f"({snowpark_arg_names[0]} {operation_op} {date_param_name2})"
|
|
9920
9929
|
case (DateType(), StringType()):
|
|
9921
9930
|
date_param_name1 = _get_literal_param_name(exp, 0, snowpark_arg_names[0])
|
|
9922
|
-
if (
|
|
9923
|
-
|
|
9924
|
-
|
|
9931
|
+
if global_config.spark_sql_ansi_enabled or (
|
|
9932
|
+
hasattr(col2.col._expr1, "pretty_name")
|
|
9933
|
+
and "INTERVAL" == col2.col._expr1.pretty_name
|
|
9925
9934
|
):
|
|
9926
9935
|
return f"{date_param_name1} {operation_op} {snowpark_arg_names[1]}"
|
|
9927
9936
|
else:
|
|
@@ -23,6 +23,7 @@ from snowflake.snowpark_connect.relation.map_relation import map_relation
|
|
|
23
23
|
from snowflake.snowpark_connect.typed_column import TypedColumn
|
|
24
24
|
from snowflake.snowpark_connect.utils.context import (
|
|
25
25
|
get_sql_aggregate_function_count,
|
|
26
|
+
not_resolving_fun_args,
|
|
26
27
|
push_outer_dataframe,
|
|
27
28
|
set_current_grouping_columns,
|
|
28
29
|
)
|
|
@@ -335,14 +336,15 @@ def map_aggregate(
|
|
|
335
336
|
typer = ExpressionTyper(input_df)
|
|
336
337
|
|
|
337
338
|
def _map_column(exp: expression_proto.Expression) -> tuple[str, TypedColumn]:
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
if len(new_names) != 1:
|
|
342
|
-
raise SnowparkConnectNotImplementedError(
|
|
343
|
-
"Multi-column aggregate expressions are not supported"
|
|
339
|
+
with not_resolving_fun_args():
|
|
340
|
+
new_names, snowpark_column = map_expression(
|
|
341
|
+
exp, input_container.column_map, typer
|
|
344
342
|
)
|
|
345
|
-
|
|
343
|
+
if len(new_names) != 1:
|
|
344
|
+
raise SnowparkConnectNotImplementedError(
|
|
345
|
+
"Multi-column aggregate expressions are not supported"
|
|
346
|
+
)
|
|
347
|
+
return new_names[0], snowpark_column
|
|
346
348
|
|
|
347
349
|
raw_groupings: list[tuple[str, TypedColumn]] = []
|
|
348
350
|
raw_aggregations: list[tuple[str, TypedColumn]] = []
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Copyright (c) 2012-2025 Snowflake Computing Inc. All rights reserved.
|
|
3
|
+
#
|
|
4
|
+
|
|
5
|
+
import pyspark.sql.connect.proto.relations_pb2 as relation_proto
|
|
6
|
+
from pyspark.sql.connect.proto.expressions_pb2 import CommonInlineUserDefinedFunction
|
|
7
|
+
|
|
8
|
+
import snowflake.snowpark.functions as snowpark_fn
|
|
9
|
+
from snowflake import snowpark
|
|
10
|
+
from snowflake.snowpark.types import StructType
|
|
11
|
+
from snowflake.snowpark_connect.constants import MAP_IN_ARROW_EVAL_TYPE
|
|
12
|
+
from snowflake.snowpark_connect.dataframe_container import DataFrameContainer
|
|
13
|
+
from snowflake.snowpark_connect.relation.map_relation import map_relation
|
|
14
|
+
from snowflake.snowpark_connect.type_mapping import proto_to_snowpark_type
|
|
15
|
+
from snowflake.snowpark_connect.utils.context import map_partitions_depth
|
|
16
|
+
from snowflake.snowpark_connect.utils.pandas_udtf_utils import (
|
|
17
|
+
create_pandas_udtf,
|
|
18
|
+
create_pandas_udtf_with_arrow,
|
|
19
|
+
)
|
|
20
|
+
from snowflake.snowpark_connect.utils.udf_helper import udf_check
|
|
21
|
+
from snowflake.snowpark_connect.utils.udtf_helper import (
|
|
22
|
+
create_pandas_udtf_in_sproc,
|
|
23
|
+
require_creating_udtf_in_sproc,
|
|
24
|
+
)
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
def map_map_partitions(
|
|
28
|
+
rel: relation_proto.Relation,
|
|
29
|
+
) -> DataFrameContainer:
|
|
30
|
+
"""
|
|
31
|
+
Map a function over the partitions of the input DataFrame.
|
|
32
|
+
|
|
33
|
+
This is a simple wrapper around the `mapInPandas` method in Snowpark.
|
|
34
|
+
"""
|
|
35
|
+
input_container = map_relation(rel.map_partitions.input)
|
|
36
|
+
udf_proto = rel.map_partitions.func
|
|
37
|
+
udf_check(udf_proto)
|
|
38
|
+
|
|
39
|
+
return _map_with_pandas_udtf(input_container, udf_proto)
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def _call_udtf(
|
|
43
|
+
udtf_name: str, input_df: snowpark.DataFrame, return_type: StructType | None = None
|
|
44
|
+
) -> snowpark.DataFrame:
|
|
45
|
+
# Add a dummy column with random 1-10 values for partitioning
|
|
46
|
+
input_df_with_dummy = input_df.withColumn(
|
|
47
|
+
"_DUMMY_PARTITION_KEY",
|
|
48
|
+
(
|
|
49
|
+
snowpark_fn.uniform(
|
|
50
|
+
snowpark_fn.lit(1), snowpark_fn.lit(10), snowpark_fn.random()
|
|
51
|
+
)
|
|
52
|
+
* 10
|
|
53
|
+
).cast("int"),
|
|
54
|
+
)
|
|
55
|
+
|
|
56
|
+
udtf_columns = input_df.columns + [snowpark_fn.col("_DUMMY_PARTITION_KEY")]
|
|
57
|
+
|
|
58
|
+
tfc = snowpark_fn.call_table_function(udtf_name, *udtf_columns).over(
|
|
59
|
+
partition_by=[snowpark_fn.col("_DUMMY_PARTITION_KEY")]
|
|
60
|
+
)
|
|
61
|
+
|
|
62
|
+
# Use map_partitions_depth only when mapping non nested map_partitions
|
|
63
|
+
# When mapping chained functions additional column casting is necessary
|
|
64
|
+
if map_partitions_depth() == 1:
|
|
65
|
+
result_df_with_dummy = input_df_with_dummy.join_table_function(tfc)
|
|
66
|
+
else:
|
|
67
|
+
result_df_with_dummy = input_df_with_dummy.select(tfc)
|
|
68
|
+
|
|
69
|
+
output_cols = [field.name for field in return_type.fields]
|
|
70
|
+
|
|
71
|
+
# Only return the output columns.
|
|
72
|
+
result_df = result_df_with_dummy.select(*output_cols)
|
|
73
|
+
|
|
74
|
+
return DataFrameContainer.create_with_column_mapping(
|
|
75
|
+
dataframe=result_df,
|
|
76
|
+
spark_column_names=output_cols,
|
|
77
|
+
snowpark_column_names=output_cols,
|
|
78
|
+
snowpark_column_types=[field.datatype for field in return_type.fields],
|
|
79
|
+
)
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
def _map_with_pandas_udtf(
|
|
83
|
+
input_df_container: DataFrameContainer,
|
|
84
|
+
udf_proto: CommonInlineUserDefinedFunction,
|
|
85
|
+
) -> snowpark.DataFrame:
|
|
86
|
+
"""
|
|
87
|
+
Handle mapInArrow using pandas_udtf for partition-level Arrow processing.
|
|
88
|
+
"""
|
|
89
|
+
input_df = input_df_container.dataframe
|
|
90
|
+
input_schema = input_df.schema
|
|
91
|
+
spark_column_names = input_df_container.column_map.get_spark_columns()
|
|
92
|
+
return_type = proto_to_snowpark_type(
|
|
93
|
+
udf_proto.python_udf.output_type
|
|
94
|
+
if udf_proto.WhichOneof("function") == "python_udf"
|
|
95
|
+
else udf_proto.scalar_scala_udf.outputType
|
|
96
|
+
)
|
|
97
|
+
|
|
98
|
+
# Check if this is mapInArrow (eval_type == 207)
|
|
99
|
+
map_in_arrow = (
|
|
100
|
+
udf_proto.WhichOneof("function") == "python_udf"
|
|
101
|
+
and udf_proto.python_udf.eval_type == MAP_IN_ARROW_EVAL_TYPE
|
|
102
|
+
)
|
|
103
|
+
if require_creating_udtf_in_sproc(udf_proto):
|
|
104
|
+
udtf_name = create_pandas_udtf_in_sproc(
|
|
105
|
+
udf_proto, spark_column_names, input_schema, return_type
|
|
106
|
+
)
|
|
107
|
+
else:
|
|
108
|
+
if map_in_arrow:
|
|
109
|
+
map_udtf = create_pandas_udtf_with_arrow(
|
|
110
|
+
udf_proto, spark_column_names, input_schema, return_type
|
|
111
|
+
)
|
|
112
|
+
else:
|
|
113
|
+
map_udtf = create_pandas_udtf(
|
|
114
|
+
udf_proto, spark_column_names, input_schema, return_type
|
|
115
|
+
)
|
|
116
|
+
udtf_name = map_udtf.name
|
|
117
|
+
return _call_udtf(udtf_name, input_df, return_type)
|
|
@@ -15,6 +15,7 @@ from snowflake.snowpark_connect.utils.cache import (
|
|
|
15
15
|
from snowflake.snowpark_connect.utils.context import (
|
|
16
16
|
get_plan_id_map,
|
|
17
17
|
get_session_id,
|
|
18
|
+
push_map_partitions,
|
|
18
19
|
push_operation_scope,
|
|
19
20
|
set_is_aggregate_function,
|
|
20
21
|
set_plan_id_map,
|
|
@@ -180,7 +181,8 @@ def map_relation(
|
|
|
180
181
|
)
|
|
181
182
|
return cached_df
|
|
182
183
|
case "map_partitions":
|
|
183
|
-
|
|
184
|
+
with push_map_partitions():
|
|
185
|
+
result = map_map_partitions.map_map_partitions(rel)
|
|
184
186
|
case "offset":
|
|
185
187
|
result = map_row_ops.map_offset(rel)
|
|
186
188
|
case "project":
|
|
@@ -12,6 +12,7 @@ from snowflake.snowpark._internal.analyzer import analyzer_utils
|
|
|
12
12
|
from snowflake.snowpark.functions import col
|
|
13
13
|
from snowflake.snowpark.types import DateType, StringType, StructField, StructType
|
|
14
14
|
from snowflake.snowpark_connect.column_name_handler import set_schema_getter
|
|
15
|
+
from snowflake.snowpark_connect.config import global_config
|
|
15
16
|
from snowflake.snowpark_connect.dataframe_container import DataFrameContainer
|
|
16
17
|
from snowflake.snowpark_connect.relation.map_relation import map_relation
|
|
17
18
|
|
|
@@ -33,6 +34,7 @@ def map_show_string(rel: relation_proto.Relation) -> pandas.DataFrame:
|
|
|
33
34
|
truncate=rel.show_string.truncate,
|
|
34
35
|
vertical=rel.show_string.vertical,
|
|
35
36
|
_spark_column_names=input_df_container.column_map.get_spark_columns(),
|
|
37
|
+
_spark_session_tz=global_config.spark_sql_session_timeZone,
|
|
36
38
|
)
|
|
37
39
|
return pandas.DataFrame({"show_string": [show_string]})
|
|
38
40
|
|
|
@@ -56,6 +56,7 @@ from snowflake.snowpark_connect.utils.context import (
|
|
|
56
56
|
_accessing_temp_object,
|
|
57
57
|
gen_sql_plan_id,
|
|
58
58
|
get_session_id,
|
|
59
|
+
get_sql_plan,
|
|
59
60
|
push_evaluating_sql_scope,
|
|
60
61
|
push_sql_scope,
|
|
61
62
|
set_sql_args,
|
|
@@ -542,6 +543,7 @@ def map_sql_to_pandas_df(
|
|
|
542
543
|
rows = session.sql(f"DESCRIBE TABLE {name}").collect()
|
|
543
544
|
case "DescribeNamespace":
|
|
544
545
|
name = get_relation_identifier_name(logical_plan.namespace(), True)
|
|
546
|
+
name = change_default_to_public(name)
|
|
545
547
|
rows = session.sql(f"DESCRIBE SCHEMA {name}").collect()
|
|
546
548
|
if not rows:
|
|
547
549
|
rows = None
|
|
@@ -793,6 +795,7 @@ def map_sql_to_pandas_df(
|
|
|
793
795
|
case "SetCatalogAndNamespace":
|
|
794
796
|
# TODO: add catalog setting here
|
|
795
797
|
name = get_relation_identifier_name(logical_plan.child(), True)
|
|
798
|
+
name = change_default_to_public(name)
|
|
796
799
|
session.sql(f"USE SCHEMA {name}").collect()
|
|
797
800
|
case "SetCommand":
|
|
798
801
|
kv_result_tuple = logical_plan.kv().get()
|
|
@@ -801,6 +804,7 @@ def map_sql_to_pandas_df(
|
|
|
801
804
|
set_config_param(get_session_id(), key, val, session)
|
|
802
805
|
case "SetNamespaceCommand":
|
|
803
806
|
name = _spark_to_snowflake(logical_plan.namespace())
|
|
807
|
+
name = change_default_to_public(name)
|
|
804
808
|
session.sql(f"USE SCHEMA {name}").collect()
|
|
805
809
|
case "SetNamespaceLocation" | "SetNamespaceProperties":
|
|
806
810
|
raise SnowparkConnectNotImplementedError(
|
|
@@ -997,6 +1001,20 @@ def get_sql_passthrough() -> bool:
|
|
|
997
1001
|
return get_boolean_session_config_param("snowpark.connect.sql.passthrough")
|
|
998
1002
|
|
|
999
1003
|
|
|
1004
|
+
def change_default_to_public(name: str) -> str:
|
|
1005
|
+
"""
|
|
1006
|
+
Change the namespace to PUBLIC when given name is DEFAULT
|
|
1007
|
+
:param name: Given namespace
|
|
1008
|
+
:return: if name is DEFAULT return PUBLIC otherwise name
|
|
1009
|
+
"""
|
|
1010
|
+
if name.startswith('"'):
|
|
1011
|
+
if name.upper() == '"DEFAULT"':
|
|
1012
|
+
return name.replace("DEFAULT", "PUBLIC")
|
|
1013
|
+
elif name.upper() == "DEFAULT":
|
|
1014
|
+
return "PUBLIC"
|
|
1015
|
+
return name
|
|
1016
|
+
|
|
1017
|
+
|
|
1000
1018
|
def map_sql(
|
|
1001
1019
|
rel: relation_proto.Relation,
|
|
1002
1020
|
) -> DataFrameContainer:
|
|
@@ -1008,7 +1026,6 @@ def map_sql(
|
|
|
1008
1026
|
In passthough mode as True, SAS calls session.sql() and not calling Spark Parser.
|
|
1009
1027
|
This is to mitigate any issue not covered by spark logical plan to protobuf conversion.
|
|
1010
1028
|
"""
|
|
1011
|
-
|
|
1012
1029
|
snowpark_connect_sql_passthrough = get_sql_passthrough()
|
|
1013
1030
|
|
|
1014
1031
|
if not snowpark_connect_sql_passthrough:
|
|
@@ -1353,6 +1370,7 @@ def map_logical_plan_relation(
|
|
|
1353
1370
|
left_input=map_logical_plan_relation(children[0]),
|
|
1354
1371
|
right_input=map_logical_plan_relation(children[1]),
|
|
1355
1372
|
set_op_type=relation_proto.SetOperation.SET_OP_TYPE_UNION,
|
|
1373
|
+
is_all=True,
|
|
1356
1374
|
by_name=rel.byName(),
|
|
1357
1375
|
allow_missing_columns=rel.allowMissingCol(),
|
|
1358
1376
|
)
|
|
@@ -1701,7 +1719,50 @@ def map_logical_plan_relation(
|
|
|
1701
1719
|
_window_specs.get()[key] = window_spec
|
|
1702
1720
|
proto = map_logical_plan_relation(rel.child())
|
|
1703
1721
|
case "Generate":
|
|
1704
|
-
|
|
1722
|
+
# Generate creates a nested Project relation (see lines 1785-1790) without
|
|
1723
|
+
# setting its plan_id field. When this Project is later processed by map_project
|
|
1724
|
+
# (map_column_ops.py), it uses rel.common.plan_id which defaults to 0 for unset
|
|
1725
|
+
# protobuf fields. This means all columns from the Generate operation (both exploded
|
|
1726
|
+
# columns and passthrough columns) will have plan_id=0 in their names.
|
|
1727
|
+
#
|
|
1728
|
+
# If Generate's child is a SubqueryAlias whose inner relation was processed
|
|
1729
|
+
# with a non-zero plan_id, there will be a mismatch between:
|
|
1730
|
+
# - The columns referenced in the Project (expecting plan_id from SubqueryAlias's child)
|
|
1731
|
+
# - The actual column names created by Generate's Project (using plan_id=0)
|
|
1732
|
+
|
|
1733
|
+
# Therefore, when Generate has a SubqueryAlias child, we explicitly process the inner
|
|
1734
|
+
# relation with plan_id=0 to match what Generate's Project will use. This only applies when
|
|
1735
|
+
# the immediate child of Generate is a SubqueryAlias and preserves existing registrations (like CTEs),
|
|
1736
|
+
# so it won't affect other patterns.
|
|
1737
|
+
|
|
1738
|
+
child_class = str(rel.child().getClass().getSimpleName())
|
|
1739
|
+
|
|
1740
|
+
if child_class == "SubqueryAlias":
|
|
1741
|
+
alias = str(rel.child().alias())
|
|
1742
|
+
|
|
1743
|
+
# Check if this alias was already registered during initial SQL parsing
|
|
1744
|
+
existing_plan_id = get_sql_plan(alias)
|
|
1745
|
+
|
|
1746
|
+
if existing_plan_id is not None:
|
|
1747
|
+
# Use the existing plan_id to maintain consistency with prior registration
|
|
1748
|
+
used_plan_id = existing_plan_id
|
|
1749
|
+
else:
|
|
1750
|
+
# Use plan_id=0 to match what the nested Project will use (protobuf default)
|
|
1751
|
+
used_plan_id = 0
|
|
1752
|
+
set_sql_plan_name(alias, used_plan_id)
|
|
1753
|
+
|
|
1754
|
+
# Process the inner child with the determined plan_id
|
|
1755
|
+
inner_child = map_logical_plan_relation(
|
|
1756
|
+
rel.child().child(), plan_id=used_plan_id
|
|
1757
|
+
)
|
|
1758
|
+
input_relation = relation_proto.Relation(
|
|
1759
|
+
subquery_alias=relation_proto.SubqueryAlias(
|
|
1760
|
+
input=inner_child,
|
|
1761
|
+
alias=alias,
|
|
1762
|
+
)
|
|
1763
|
+
)
|
|
1764
|
+
else:
|
|
1765
|
+
input_relation = map_logical_plan_relation(rel.child())
|
|
1705
1766
|
generator_output_list = as_java_list(rel.generatorOutput())
|
|
1706
1767
|
generator_output_list_expressions = [
|
|
1707
1768
|
map_logical_plan_expression(e) for e in generator_output_list
|
|
@@ -51,6 +51,7 @@ from snowflake.snowpark_connect.utils.identifiers import (
|
|
|
51
51
|
split_fully_qualified_spark_name,
|
|
52
52
|
)
|
|
53
53
|
from snowflake.snowpark_connect.utils.session import get_or_create_snowpark_session
|
|
54
|
+
from snowflake.snowpark_connect.utils.snowpark_connect_logging import logger
|
|
54
55
|
from snowflake.snowpark_connect.utils.telemetry import (
|
|
55
56
|
SnowparkConnectNotImplementedError,
|
|
56
57
|
telemetry,
|
|
@@ -160,6 +161,29 @@ def map_write(request: proto_base.ExecutePlanRequest):
|
|
|
160
161
|
compression_option = write_op.options.get("compression", "none")
|
|
161
162
|
|
|
162
163
|
# Generate Spark-compatible filename or prefix
|
|
164
|
+
# we need a random prefix to support "append" mode
|
|
165
|
+
# otherwise copy into with overwrite=False will fail if the file already exists
|
|
166
|
+
overwrite = (
|
|
167
|
+
write_op.mode
|
|
168
|
+
== commands_proto.WriteOperation.SaveMode.SAVE_MODE_OVERWRITE
|
|
169
|
+
)
|
|
170
|
+
|
|
171
|
+
if overwrite:
|
|
172
|
+
try:
|
|
173
|
+
path_after_stage = (
|
|
174
|
+
write_path.split("/", 1)[1] if "/" in write_path else ""
|
|
175
|
+
)
|
|
176
|
+
if not path_after_stage or path_after_stage == "/":
|
|
177
|
+
logger.warning(
|
|
178
|
+
f"Skipping REMOVE for root path {write_path} - too broad scope"
|
|
179
|
+
)
|
|
180
|
+
else:
|
|
181
|
+
remove_command = f"REMOVE {write_path}/"
|
|
182
|
+
session.sql(remove_command).collect()
|
|
183
|
+
logger.info(f"Successfully cleared directory: {write_path}")
|
|
184
|
+
except Exception as e:
|
|
185
|
+
logger.warning(f"Could not clear directory {write_path}: {e}")
|
|
186
|
+
|
|
163
187
|
if should_write_to_single_file:
|
|
164
188
|
# Single file: generate complete filename with extension
|
|
165
189
|
spark_filename = generate_spark_compatible_filename(
|
|
@@ -178,10 +202,6 @@ def map_write(request: proto_base.ExecutePlanRequest):
|
|
|
178
202
|
format_ext="", # No extension for prefix
|
|
179
203
|
)
|
|
180
204
|
temp_file_prefix_on_stage = f"{write_path}/{spark_filename_prefix}"
|
|
181
|
-
overwrite = (
|
|
182
|
-
write_op.mode
|
|
183
|
-
== commands_proto.WriteOperation.SaveMode.SAVE_MODE_OVERWRITE
|
|
184
|
-
)
|
|
185
205
|
|
|
186
206
|
default_compression = "NONE" if write_op.source != "parquet" else "snappy"
|
|
187
207
|
compression = write_op.options.get(
|
{snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/server.py
RENAMED
|
@@ -531,7 +531,10 @@ class SnowflakeConnectServicer(proto_base_grpc.SparkConnectServiceServicer):
|
|
|
531
531
|
if name.endswith(".class"):
|
|
532
532
|
# name is <dir>/<package>/<class_name>
|
|
533
533
|
# we don't need the dir name, but require the package, so only remove dir
|
|
534
|
-
|
|
534
|
+
if os.name != "nt":
|
|
535
|
+
class_files[name.split("/", 1)[-1]] = filepath
|
|
536
|
+
else:
|
|
537
|
+
class_files[name.split("\\", 1)[-1]] = filepath
|
|
535
538
|
continue
|
|
536
539
|
session.file.put(
|
|
537
540
|
filepath,
|
|
@@ -39,7 +39,7 @@ def write_temporary_artifact(
|
|
|
39
39
|
if os.name != "nt":
|
|
40
40
|
filepath = f"/tmp/sas-{session.session_id}/{name}"
|
|
41
41
|
else:
|
|
42
|
-
filepath = f"{tempfile.gettempdir()}
|
|
42
|
+
filepath = f"{tempfile.gettempdir()}\\sas-{session.session_id}\\{name}"
|
|
43
43
|
# The name comes to us as a path (e.g. cache/<name>), so we need to create
|
|
44
44
|
# the parent directory if it doesn't exist to avoid errors during writing.
|
|
45
45
|
pathlib.Path(filepath).parent.mkdir(parents=True, exist_ok=True)
|
|
@@ -55,11 +55,10 @@ def write_class_files_to_stage(
|
|
|
55
55
|
) -> None:
|
|
56
56
|
if os.name != "nt":
|
|
57
57
|
filepath = f"/tmp/sas-{session.session_id}"
|
|
58
|
+
jar_name = f'{filepath}/{hashlib.sha256(str(files).encode("utf-8")).hexdigest()[:10]}.jar'
|
|
58
59
|
else:
|
|
59
|
-
filepath = f"{tempfile.gettempdir()}
|
|
60
|
-
|
|
61
|
-
f'{filepath}/{hashlib.sha256(str(files).encode("utf-8")).hexdigest()[:10]}.jar'
|
|
62
|
-
)
|
|
60
|
+
filepath = f"{tempfile.gettempdir()}\\sas-{session.session_id}"
|
|
61
|
+
jar_name = f'{filepath}\\{hashlib.sha256(str(files).encode("utf-8")).hexdigest()[:10]}.jar'
|
|
63
62
|
with zipfile.ZipFile(jar_name, "w", zipfile.ZIP_DEFLATED) as jar:
|
|
64
63
|
for name, path in files.items():
|
|
65
64
|
jar.write(path, name)
|
{snowpark_connect-0.26.0 → snowpark_connect-0.27.0}/src/snowflake/snowpark_connect/utils/context.py
RENAMED
|
@@ -30,6 +30,9 @@ _sql_aggregate_function_count = ContextVar[int](
|
|
|
30
30
|
"_contains_aggregate_function", default=0
|
|
31
31
|
)
|
|
32
32
|
|
|
33
|
+
# Context for parsing map_partitions
|
|
34
|
+
_map_partitions_stack = ContextVar[int]("_map_partitions_stack", default=0)
|
|
35
|
+
|
|
33
36
|
# We have to generate our own plan IDs that are different from Spark's.
|
|
34
37
|
# Spark plan IDs start at 0, so pick a "big enough" number to avoid overlaps.
|
|
35
38
|
_STARTING_SQL_PLAN_ID = 0x80000000
|
|
@@ -49,6 +52,7 @@ _spark_client_type_regex = re.compile(r"spark/(?P<spark_version>\d+\.\d+\.\d+)")
|
|
|
49
52
|
_current_operation = ContextVar[str]("_current_operation", default="default")
|
|
50
53
|
_resolving_fun_args = ContextVar[bool]("_resolving_fun_args", default=False)
|
|
51
54
|
_resolving_lambda_fun = ContextVar[bool]("_resolving_lambdas", default=False)
|
|
55
|
+
_current_lambda_params = ContextVar[list[str]]("_current_lambda_params", default=[])
|
|
52
56
|
|
|
53
57
|
_is_window_enabled = ContextVar[bool]("_is_window_enabled", default=False)
|
|
54
58
|
_is_in_pivot = ContextVar[bool]("_is_in_pivot", default=False)
|
|
@@ -206,6 +210,16 @@ def push_evaluating_join_condition(join_type, left_keys, right_keys):
|
|
|
206
210
|
_is_evaluating_join_condition.set(prev)
|
|
207
211
|
|
|
208
212
|
|
|
213
|
+
@contextmanager
|
|
214
|
+
def push_map_partitions():
|
|
215
|
+
_map_partitions_stack.set(_map_partitions_stack.get() + 1)
|
|
216
|
+
yield
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
def map_partitions_depth() -> int:
|
|
220
|
+
return _map_partitions_stack.get()
|
|
221
|
+
|
|
222
|
+
|
|
209
223
|
@contextmanager
|
|
210
224
|
def push_sql_scope():
|
|
211
225
|
"""
|
|
@@ -238,16 +252,21 @@ def push_operation_scope(operation: str):
|
|
|
238
252
|
|
|
239
253
|
|
|
240
254
|
@contextmanager
|
|
241
|
-
def resolving_lambda_function():
|
|
255
|
+
def resolving_lambda_function(param_names: list[str] = None):
|
|
242
256
|
"""
|
|
243
257
|
Context manager that sets a flag indicating lambda function is being resolved.
|
|
258
|
+
Also tracks the lambda parameter names for validation.
|
|
244
259
|
"""
|
|
245
260
|
prev = _resolving_lambda_fun.get()
|
|
261
|
+
prev_params = _current_lambda_params.get()
|
|
246
262
|
try:
|
|
247
263
|
_resolving_lambda_fun.set(True)
|
|
264
|
+
if param_names is not None:
|
|
265
|
+
_current_lambda_params.set(param_names)
|
|
248
266
|
yield
|
|
249
267
|
finally:
|
|
250
268
|
_resolving_lambda_fun.set(prev)
|
|
269
|
+
_current_lambda_params.set(prev_params)
|
|
251
270
|
|
|
252
271
|
|
|
253
272
|
def is_lambda_being_resolved() -> bool:
|
|
@@ -257,6 +276,13 @@ def is_lambda_being_resolved() -> bool:
|
|
|
257
276
|
return _resolving_lambda_fun.get()
|
|
258
277
|
|
|
259
278
|
|
|
279
|
+
def get_current_lambda_params() -> list[str]:
|
|
280
|
+
"""
|
|
281
|
+
Returns the current lambda parameter names.
|
|
282
|
+
"""
|
|
283
|
+
return _current_lambda_params.get()
|
|
284
|
+
|
|
285
|
+
|
|
260
286
|
@contextmanager
|
|
261
287
|
def resolving_fun_args():
|
|
262
288
|
"""
|
|
@@ -270,6 +296,19 @@ def resolving_fun_args():
|
|
|
270
296
|
_resolving_fun_args.set(prev)
|
|
271
297
|
|
|
272
298
|
|
|
299
|
+
@contextmanager
|
|
300
|
+
def not_resolving_fun_args():
|
|
301
|
+
"""
|
|
302
|
+
Context manager that sets a flag indicating function arguments are *not* being resolved.
|
|
303
|
+
"""
|
|
304
|
+
prev = _resolving_fun_args.get()
|
|
305
|
+
try:
|
|
306
|
+
_resolving_fun_args.set(False)
|
|
307
|
+
yield
|
|
308
|
+
finally:
|
|
309
|
+
_resolving_fun_args.set(prev)
|
|
310
|
+
|
|
311
|
+
|
|
273
312
|
def is_function_argument_being_resolved() -> bool:
|
|
274
313
|
"""
|
|
275
314
|
Returns True if function arguments are being resolved.
|
|
@@ -350,6 +389,7 @@ def clear_context_data() -> None:
|
|
|
350
389
|
|
|
351
390
|
_next_sql_plan_id.set(_STARTING_SQL_PLAN_ID)
|
|
352
391
|
_sql_plan_name_map.set({})
|
|
392
|
+
_map_partitions_stack.set(0)
|
|
353
393
|
_sql_aggregate_function_count.set(0)
|
|
354
394
|
_sql_named_args.set({})
|
|
355
395
|
_sql_pos_args.set({})
|