github microsoft/mssql-jdbc v13.1.0
[13.1.0] Preview Release

latest releases: v13.2.0, v13.1.1
pre-release2 months ago

Added

  • Vector datatype support #2634
    What was added: Native support for SQL Server’s new VECTOR data type with APIs for inserts, selects, stored procedures, and bulk copy.
    Who benefits: Developers building AI/ML workloads or semantic search applications using vector data in SQL Server.
    Impact: Enables native vector storage and access via JDBC, eliminating the performance overhead of managing vector data as strings.

  • New connection options, quotedIdentifier and concatNullYieldsNull #2618
    What was added: New connection options, quotedIdentifier and concatNullYieldsNull, to control QUOTED_IDENTIFIER and CONCAT_NULL_YIELDS_NULL session settings for both new and pooled connections.
    Who benefits: Developers needing Sybase-default behavior for their applications.
    Impact: Reduces Sybase migration effort by allowing control of these session values.

  • Support for temporal and money datatypes when using bulk copy for batch insert operations #2670
    What was added: Support for batch inserts of DATETIME, DATE, MONEY, etc., when using the useBulkCopyForBatchInsert option.
    Who benefits: High-volume data insert users.
    Impact: Improves performance for previously unsupported types (except in Azure Synapse Analytics (formerly Azure SQL DW).

  • Mockito integration into JDBC driver tests #2644
    What was added: Mockito added as a test dependency.
    Who benefits: Developers and contributors writing unit tests.
    Impact: Enables better control and test coverage.

Changed

  • releaseSavepoint exception type standardized to SQLFeatureNotSupported #2583
    What changed: SQLServerException replaced with SQLFeatureNotSupportedException to comply with JDBC specification.
    Who benefits: Developers expecting JDBC standard exceptions.
    Impact: Enables better exception handling in client code.

  • ActiveDirectoryPassword authentication deprecated #2624
    What changed: Added deprecation warning for Microsoft Entra ID password authentication method.
    Who benefits: Microsoft Entra ID authentication users.
    Impact: Encourages migration to more secure methods.

  • Include Columnstore indexes in getIndexInfo() #2598
    What changed: Replaced sp_statistics with a custom query to support all index types.
    Who benefits: Developers using metadata APIs.
    Impact: More accurate index metadata.

  • Corrected schema filtering in getSchemas() #2643
    What changed: Ensured schemas are properly filtered when a catalog name is provided.
    Who benefits: Users of metadata functions.
    Impact: Complies with JDBC specification and avoids confusion.

  • Increased redirection limit #2659
    What changed: Raised maximum redirection hops from 1 to 10.
    Who benefits: Azure SQL Fabric users.
    Impact: Enables successful multi-hop connection scenarios.

Fixed issues

  • Session recovery with Entra ID authentication and redirect mode #2668
    What was fixed: Redirect information is now followed during session recovery when using Entra ID authentication.
    Who benefits: Azure SQL DB users using Entra ID and connection resiliency.
    Impact: Prevents connection recovery failures.

  • Javadoc build warnings #2640
    What was fixed: Cleaned up invalid Javadoc syntax.
    Who benefits: Developers building the driver.
    Impact: Cleaner builds, better docs.

  • OffsetDateTime formatting in SQLServerDataTable #2652
    What was fixed: The OffsetDateTime toString() method was omitting seconds when seconds are zero, which resulted in the server rejecting those records. Used DateTimeFormatter to avoid this invalid format.
    Who benefits: Users inserting OffsetDateTime values.
    Impact: Prevents conversion errors.

  • String comparison in SQLServerDataTable.equals() #2653
    What was fixed: Replaced == with .equals() for strings.
    Who benefits: Anyone comparing data tables.
    Impact: Accurate comparison behavior.

  • PreparedStatement metadata caching for encrypted columns #2663
    What was fixed: Fixed loss of type metadata across PreparedStatement reuse.
    Who benefits: Users of Always Encrypted with secure enclaves.
    Impact: Prevents insert failures in batch encryption.

  • Make IBM security module optional #2636
    What was fixed: IBM security dependency is now optional.
    Who benefits: Applications not using IBM modules.
    Impact: Avoids classloading issues.

  • Invalidate enclave session on reconnect #2638
    What was fixed: Enclave session cache no longer reused across reconnects.
    Who benefits: Users of Always Encrypted with secure enclaves in failover configurations.
    Impact: Prevents internal enclave errors due to invalid enclave session references after failover.

  • File path error handling in ConfigurableRetryLogic #2650
    What was fixed: Robust error handling for missing/unreadable retry config files.
    Who benefits: All users.
    Impact: Prevents driver errors due to application file path issues.

  • Suppressed CodeQL warnings for crypto usages #2677
    What was fixed: Suppressed CodeQL security warnings for cryptographic use cases.
    Who benefits: Reviewers using CodeQL.
    Impact: Maintains compatibility and audit clarity.

  • Batch insert fix for case-sensitive column name mismatch #2695
    What was fixed: executeBatch() now respects case sensitivity of collations when matching column names.
    Who benefits: Applications using case-sensitive/case-insensitive schemas.
    Impact: Avoids metadata retrieval failures during batch inserts.

Don't miss a new mssql-jdbc release

NewReleases is sending notifications on new releases.