Skip to content

Releases: microsoft/mssql-jdbc

[12.9.0] Preview Release

02 Dec 18:35
1967348
Compare
Choose a tag to compare
Pre-release

Added

  • Added configurable retry logic feature, supporting both statement, and connection, retry #2396#2519
  • Added JDK 23 support #2515

Changed

  • Reverted "Execute Stored Procedures Directly" feature, as well as subsequent changes related to the feature #2488
  • Changed MSAL logging from FINEST to FINER #2489
  • Updated project pom file to pull dependencies from public Azure Artifacts Feed #2504
  • Changed how Kerberos authentication acquires subject to provide compatibility for Kerberos with Java 23 and above #2539
  • Removed user and password check for AccessTokenCallback #2549

Fixed issues

  • Changed driver behavior to allow prepared statement objects to be reused, preventing a "multiple queries are not allowed" error #2482
  • Adjusted DESTINATION_COL_METADATA_LOCK, in SQLServerBulkCopy, so that is properly released in all cases #2484
  • Fixed connection retry behavior when connectRetryCount is set to a value greater than 1 #2513
  • Resolved JavaDoc warnings that would appear during project build #2521
  • Fixed infinite loop when removing open statement #2547

[12.6.4] Hotfix & Stable Release

29 Aug 18:58
852d49c
Compare
Choose a tag to compare

Fixed issues

  • Reverted "Execute Stored Procedures Directly" feature, as well as subsequent changes related to the feature. #2500

[12.8.1] Hotfix & Stable Release

23 Aug 00:20
96c824d
Compare
Choose a tag to compare

Changed

  • Changed MSAL logging from FINER to FINEST #2491

Fixed issues

  • Adjusted DESTINATION_COL_METADATA_LOCK, in SQLServerBulkCopy, so that is properly released in all cases #2492
  • Reverted "Execute Stored Procedures Directly" feature, as well as subsequent changes related to the feature. #2493
  • Changed driver behavior to allow prepared statement objects to be reused, preventing a "multiple queries are not allowed" error #2494

[12.8.0] Stable Release

31 Jul 18:46
0e97689
Compare
Choose a tag to compare

Fixed issues

  • Fixed regression with specifying argument names in callable statement syntax #2480

[12.7.1] Preview Release

08 Jul 18:12
e9b1fec
Compare
Choose a tag to compare
Pre-release

Added

  • Added JDK 22 support #2414
  • Added credential caching for Managed Identity Credential and Default Azure Credential #2415
  • Added Caching SQLServerBulkCopy object for batch insert #2435
  • Added connection level bulk copy metadata caching #2464
  • Added logging to token caching #2468

Changed

  • Bump org.bouncycastle:bcprov-jdk18on from 1.77 to 1.78 #2403
  • Enum SQLServerSortOrder is now public #2405
  • Bump com.azure:azure-identity from 1.12.1 to 1.12.2 #2447
  • Bump com.microsoft.azure:msal4j from 1.15.0 to 1.15.1 #2448

Fixed issues

  • Execute stored procedures directly for RPC calls #2410
  • Fix SqlAuthenticationToken constructor accepting unix epoch #2425
  • TokenCredential class shouldn't be required #2441
  • Fixed timestamp string conversion error for CallableStatements #2449
  • Fixed CallableStatements default value regression #2452
  • Fixed parentheses parsing for stored procedure names and function names #2467

[12.6.3] Hotfix & Stable Release

20 Jun 19:36
ee044a8
Compare
Choose a tag to compare

Fixed issues

  • Fixed issue where TokenCredential class was required to be imported #2453
  • Fixed timestamp string conversion regression #2455
  • Fixed SQLServerCallableStatement default value regression #2456

[12.6.2] Hotfix & Stable Release

24 May 16:29
17caf22
Compare
Choose a tag to compare

Added

  • Added credential caching for Managed Identity Credential and Default Azure Credential #2426

Fixed issues

  • Check that money and small money are within correct range for bulkcopy #2419
  • Check if TDSCommand counter is null before incrementing #2420
  • Clear prepared statement cache when resetting statement pool connection #2421
  • Clear prepared statement handle before reconnect #2422
  • RPC calls for CallableStatements will be executed directly #2427
  • Corrected authentication token object to accept expiration in milliseconds #2428
  • SocketTimeout should be unbounded by loginTimeout after a successful connection open #2431

[12.7.0] Preview Release

05 Apr 22:48
c073e78
Compare
Choose a tag to compare
Pre-release

Added

  • Server Message Handler and SQLException Chaining #2251
  • Finish support for RFC4180 for CSV bulk insert operations #2338
  • Allow constructing a microsoft.sql.DateTimeOffset instance from a java.time.OffsetDateTime value #2340
  • Added support for TDSType.GUID #2370

Changed

  • Remove synchronized from Socket overrides #2337
  • Default to RMFAIL instead of RMERR #2348

Fixed issues

  • Fix to allow connection retries to be disabled by setting connectRetryCount to 0 #2293
  • Fix to ensure metadata returned follows JDBC data type specs #2326
  • Added token cache map to fix use of unintended auth token for subsequent connections #2341
  • Fix calling procedures with output parameters by their four-part syntax #2349
  • Clear prepared statement handle before reconnect #2364
  • Reset socketTimeout to original value after a successful connection open #2355
  • Clear prepared statement cache when resetting statement pool connection #2361
  • Fixed ClassLoader leak of ActivityCorrelator ThreadLocal #2366
  • Check if TDSCommand counter is null before incrementing. #2368
  • Escape schema for getProcedures and getProcedureColumns in SQLServerDatabaseMetaData #2369
  • Fix to properly validate money and small money values for BulkCopy #2379

[12.6.1] Hotfix & Stable Release

20 Feb 21:58
64e6ee5
Compare
Choose a tag to compare

Fixed issues

  • Fixed 'EXEC' escape syntax for CallableStatements. 'EXEC' keyword can be used to execute stored procedures. #2329

[12.6.0] Stable Release

01 Feb 19:10
3cd946e
Compare
Choose a tag to compare

Changed

  • Adjusted PreparedStatement cache, so it's cleared before every execute #2272
  • Updated azure-identity, azure-security-keyvault-keys, bouncycastle, and msal library versions #2279
  • Changed socketTimeout to ensure it's always less than or equal to loginTimeout #2280
  • Change BulkCopy behavior from serializing and deserializing Timestamp objects, to using the objects directly #2291

Fixed issues

  • Fixed the way ActivityID was defined and used to be more in line with the behavior of other Microsoft drivers #2254
  • Fixed missing getters and setters for useBulkCopyForBatchInsert #2277
  • Fixed an issue where, when using the TOP qualifier in a query, the driver returns an error concerning ParameterMetadata #2287
  • Fixed an issue where insert statements with missing whitespace worked correctly in regular cases, but not when using batch inserts #2290
  • Fixed timezone not being properly applied to Timestamps when inserted using batch insert with bulkcopy #2291
  • Fixed locks in IOBuffer to prevent deadlock issues that could arise #2295
  • Fixed an issue where, when an exception has no cause, the exception itself is passed along instead, preventing it from being lost #2300