Snowpark Connect for Spark release notes for 2026¶
Snowflake uses semantic versioning for Snowpark Connect for Spark updates.
For documentation, see Run Apache Spark™ workloads on Snowflake with Snowpark Connect for Spark and Submitting Spark applications.
1.19.0 (March 26, 2026)¶
Snowpark Connect for Spark¶
Bug fixes¶
Fix accessing struct field from array via getItem
Fix names for accessing array elements
Added missing compression for TEXT format
Reduce query size in
DataFrame.replace, UDTF creation, andread_parquetEmulate types on create [temp] view
Fixed casting structured types to
Fix text write type validation
Support XML read dir in parallel
Optimize
convfunction usageSupport both Snowflake and
net.snowflake.spark.snowflakeformat read and writeEmulate types on create table
Fix accessing nested structs with arrays
Fix Parquet error message
Optimize to_number reducing query size
Fix UDF cache to consider query database change
Optimize
maskfunctionPass PATTERN to NVS fallback reader during Parquet schema inference
Null and structured type coercion
New features¶
Introduce DIRECTED join hint
Integrate XML inferSchema
1.18.0 (March 19, 2026)¶
Snowpark Connect for Spark¶
Bug fixes¶
Added missing JDBC Type mapping
Support user provided schema in parquet
Handle invalid UTF-8 characters in JSON gracefully
Resolve LCA columns only if actually used
Optimize get_json_object query generation
Strip semicolon from SQL query
Make
processInBulk=Truethe default for JSON reads and fixNullTypeschema inferenceFix bug regarding incorrect stage read
Add non check in udf registration
Tighten limit for error message
Allow missing fields in user provided schema
JSON and CSV compression inference
Fix for
coalesce(1)creating a single file
New features¶
Add
execute_jarmethod to launch Java/Scala workloads
Snowpark Submit¶
Bug fixes¶
Fix error swallowing with
--wait-for-completionflag
1.17.0 (March 13, 2026)¶
Snowpark Connect for Spark¶
Bug fixes¶
JSON and CSV compression inference.
Fix for
coalescecreating a single file.Refactor JSON read to use
COPY INTOfor single-file reads and addVariantTypeschema inference.Allow JSON loading without explicit schema.
Fix
multi_linein JSON.Fix JSON infer schema to avoid scanning whole files.
Correctly handle casting to timestamp
ltz.Clamp hash returned value.
Fix for
repartitionwithpartitionBy.Fix to use
[connections.spark-connect]section header inconfig.toml.Convert Java
date/timestampformat tokens to Snowflake equivalents for CSV reads.Calculate schema for
pivotfunctions.Fix UDTFs in aliased lateral join.
Align result for SQL
SETcommand.Fix return type for
CEILandFLOORfunctions.Improve query generation in
unbase64v2.Fix some of option to Snowflake mapping for CSV.
Fix serialization for
POJO.Improve CSV header error messages.
Improve
mapTypedetection logic withtry_castfor Parquet reads.
New features¶
Support for
reduceGroupsAPI.Support specifying connection name inside
init_spark_session.Add config param to use UDF for
unbase64.
1.16.0 (March 12, 2026)¶
Snowpark Connect for Spark¶
Bug fixes¶
Optimize SQL generation in function
unbase64.Fix
from_jsonregressionFix for records that span multiple BZ2 compression block boundaries
Fix nullability mapping in unresolved attribute
Initialize
spark-connectsession with any connection, not just one namedspark-connectAdd XML options validation
Drop CSV ESCAPE option when it matches the quote character to prevent compilation error
Fix incorrect conversion of named tuples in
productEncoderVerify
mergeSchemafor CSV and JSON is not supportedFix Parquet complex type round-trip (write + read)
Fix schema for
pivot/unpivotFix return type for
MODandPMODfunctionsFix CSV header extraction for files with leading blank lines
Test timezones correctly and replace string-based date/time serialization with epoch-based
Update Java version check for Windows
Flatten nested
withColumncallsChange logic for
Literal _IntegralTypein add/sub operationsReturn
LongTypeforCOUNTfunctionsRead JSON: test compression = bz2/bzip2/none
Improve performance of
to_varchar/to_charMake better comparison in I/O testing
Set
multi_linetoFalseby default for copy JSON
Snowpark Submit¶
Bug fixes¶
Throw error on unspecified compute pool.
1.15.0 (March 06, 2026)¶
Snowpark Connect for Spark¶
Bug fixes¶
Remove result scan when calling
df.count()Make sure infer schema runs on limited rows for reading JSON
Fix
createDataFramefor interval typesChange logic for
Literal _IntegralTypein multiplication and division operationsWiden and coerce type for
SetoperationsFix
neo4jmulti label supportModify JAR metadata so that Grype does not detect Netty vulnerability
Return correct type for
ANY_VALUEfunctionReturn widened type for sequence
Add support for config
spark.sql.parquet.inferTimestampNTZ.enabledBatch column rename/cast in
_validate_schema_and_get_writerJDBC hang when partitioned queries given with fetch size
Return trimmed exception message when it exceeds the HTTP header limits
Fix
map_type_to_snowflake_typeforBigDecimalFix literal decimal precision and scale
Improve random string generation
Make BZ2 compressed JSON loading ignore corrupt records
New features¶
Use staged files from config in Scala UDFs
Use permissive
TRY_CASTin JSON readingMake the number of server threads configurable
Snowpark Submit¶
Bug fixes¶
Adding back
init_spark_session()to testingUpdate
snowpark-submitcommand line output to clarifysnowflake-connection-nameis required.
1.14.0 (February 19, 2026)¶
Snowpark Connect for Spark¶
Bug fixes¶
Cache table type when running
saveAsTableOptimize literal input for substring and type casting for
coalesceHandle decimal overflow in
avg/meanand fix decimal type coercionIceberg - Preserve grants on overwrite
Standardize SQL passthrough mode
Optimize
from_utc_timestamp/to_utc_timestampfor literal timezoneHandle JSON null values in structured types to match Spark semantics
Emulate integral types on creating tables from SQL
Fix edge case with mapping nested rows in Scala UDFs
Fix how Parquet handles read and write of complex structured datatypes
Support save ignore argument for parquet files
Add support for artifact repository
Fix array nullability in Scala UDxF
Fix
log1pfor args from (-1, 0) rangeFix
first_valueandlast_valuein aggregate contextFix reading
DayTimeIntervalTypefor Scala client
New features¶
Handle timezones correctly in Scala UDFs
Support Java 11 and 17 without any configuration
Snowpark Submit updates¶
New features¶
Support
snowpark-submitfor python 3.9Enhance
init_spark_sessionto be usable insnowpark-submitworkflow
1.13.0 (February 13, 2026)¶
Snowpark Connect for Spark¶
Bug fixes¶
Fixed
splitfunction issueDowngraded snowflake-snowpark-python dependency to version 1.44
Fixed
Neo4jdialect matching to improve SQL translationFixed operation ID returned in execute responses to be consistent
Fixed
gRPCmetadata handling for TCP channel connections
New features¶
Added support for
partition_hintinmapPartitionsoperationsAdded XML reader support for scenarios with user-defined schemas
1.11.0 (January 28, 2026)¶
Snowpark Connect for Spark¶
Bug fixes¶
Preserve hidden columns after various DataFrame operators
Fix issues for scala udf input types (
byte,binary,scala.math.BigDecimal)
Other updates¶
Add
snowpark-submitUser Defined Args to comment
1.10.0 (January 22, 2026)¶
Snowpark Connect for Spark¶
Bug fixes¶
Fix config unset error for session configuration.
Use copy into to load CSV files in parallel.
Fix writes for DataFrames using outer joins.
Handle nulls in Scala UDFs.
Optimize CTE query generation with parameter protection.
Avoid casting arguments of
DATEDIFF.Fix appending partitioned files and reading of null partitions.
Make a 10X performance improvement for conversion between base 10 and 16 using SQL.
New features¶
Overwrite only modified partitions for parquet files.
Other updates¶
Updated logic to detect if Snowpark Connect for Spark is running on XP.
Support writing to a table with variant data type in Snowflake.
Remove unnecessary info logs.
Move Java tests out of Scala tests job to a separate job.
Update the dependency version for gcsfs.
Snowpark Submit¶
None.
1.9.0 (January 14, 2026)¶
Snowpark Connect for Spark¶
Bug fixes¶
Fix serializing Scala tuples.
Fix loading huge JSON files.
Implement small fixes for customer issues.
Implement fixes for struct comparisons.
Add handling for 0-column DataFrames.
Correct upload file path.
Fix
Upload_files_if_needednot running in parallel.Improve input type inference when UDF input types are not defined in the proto.
Fix NA edge cases.
New features¶
Support reading single JSON BZ2 file.
Support Scala UDFs in server-side Snowpark Connect for Spark.
Implement cast between string and
daytime.Add support for Scala UDFs in
group_map.
Snowpark Submit¶
Bug fixes¶
Reduce generated workload names.
1.8.0 (January 07, 2026)¶
Snowpark Connect for Spark¶
Bug fixes¶
Fixed JAVA_HOME handling for Windows.
New features¶
Support
neo4jdata source via JDBC.
Snowpark Submit¶
None.