Skip to content

Releases: microsoft/mssql-jdbc

[8.3.1] Preview Release

28 May 23:50
326a06a
Compare
Choose a tag to compare
Pre-release

Added

  • Added delayed durability option to SQLServerConnection.commit() #1310
  • Introduced SQLServerBulkCSVFileRecord.setEscapeColumnDelimitersCSV() to escape delimiters and double quotes when using bulk copy to load from CSV files #1312
  • Added certificate expiry validation when using Always Encrypted with secure enclaves feature #1321
  • Added SQL State to Exception when connection is closed #1326
  • Introduced extended bulk copy support against Azure Data Warehouse #1331
  • Introduced 'delayLoadingLobs' connection property to provide backward compatibility when streaming LOBs #1336

Fixed issues

  • Fixed an issue with MSI authentication failing due to expiry date format mismatch #1308
  • Fixed an issue with streams not getting closed when using Always Encrypted with secure enclaves feature #1315
  • Fixed an issue with retrieving SQL VARIANT as its underlying type #1320
  • Fixed issues with the driver not being JAVA 8 compliant #1328
  • Fixed an issue with PreparedStatement when inserting large spatial data types #1337

Changed

  • Updated driver and test dependencies #1294, #1313
  • Improved exception message when connecting to redirection-enabled Azure server #1311
  • Improved performance when parsing connection string #1317
  • Updated the driver to throw a warning when TLS version lower than 1.2 is negotiated #1322
  • Removed unused code #1330

[8.3.0] Preview Release

01 Apr 20:54
93a2856
Compare
Choose a tag to compare
Pre-release

Added

  • Added connection properties to specify custom SocketFactory #1217
  • Added support for Client Certificate Authentication #1284
  • Added support for JAVA 14 #1290
  • Added support for authentication to Azure Key Vault using Managed Identity #1286

Fixed issues

  • Fixed an issue with escaping curly brackets in connection string #1251
  • Fixed a warning when retrieving Operating System information from SQL Server Linux when using distributed transactions #1279

Changed

  • Updated Gradle dependencies #1244
  • Updated SQLServerPreparedStatement.setObject() to retrieve TVP name from SQLServerDataTable #1282

[8.2.2] HotFix & Stable Release

24 Mar 17:25
0d4e97f
Compare
Choose a tag to compare

Added

  • Added an option to configure the list of trusted Azure Key Vault endpoints #1285

[8.2.1] HotFix & Stable Release

27 Feb 00:31
5f33c57
Compare
Choose a tag to compare

Fixed issues

  • Fixed a potential NullPointerException issue when retrieving data as java.time.LocalTime or java.time.LocalDate type with SQLServerResultSet.getObject() #1250

[8.2.0] Stable Release

31 Jan 22:28
646816f
Compare
Choose a tag to compare

Added

  • Added new tests for Always Encrypted with secure enclaves feature #1166
  • Added backwards compatibility for calling SQLServerClob.length() on nvarchar columns #1214

Fixed issues

  • Fixed an issue with potentially creating more enclave sessions than needed #1208
  • Fixed an issue with InputStream closing when calling SQLServerBlob.length() on an image column #1214
  • Fixed a potential performance issue created from trailing spaces in PreparedStatement queries #1215
  • Fixed an issue with native Always Encrypted calls not being synchronized #1220
  • Fixed issues identified by SonarQube #1226, Semmle #1234, and CredScanner #1237

Changed

  • Updated com.microsoft.rest:client-runtime to its latest version #1235
  • Removed shaded jars #1239

[8.1.1] Preview Release

10 Dec 22:42
a53c1ed
Compare
Choose a tag to compare
Pre-release

Added

  • Added more tests to improve code coverage for Always Encrypted with secure enclaves feature #1186
  • Added certificate and enclave session caching for Always Encrypted with secure enclaves feature #1189

Fixed issues

  • Fixed a potential NullPointerException in SQLServerDataColumn.equals() #1168
  • Fixed an issue with BulkCopy when source is unicode char/varchar and destination is nchar/nvarchar #1193
  • Fixed an issue with SQLServerDatabaseMetaData.getColumns() only returning the first column against Azure SQL Data Warehouse #1197
  • Fixed an issue with SQLServerDatabaseMetaData.getImportedKeys() failing against Azure SQL Data Warehouse #1205

Changed

  • Made internal model public for SQLServerSpatialDatatype class #1169
  • Updated ISQLServerBulkData APIs to throw SQLException instead of SQLServerException #1187
  • Changed SQLServerConnection.state to volatile #1194
  • Optimized temporal datatype getter methods by replacing Calendar with LocalDatetime #1200
  • Updated driver and test dependencies #1203

[8.1.0] Preview Release

16 Oct 04:47
a8f5fee
Compare
Choose a tag to compare
Pre-release

Added

  • Added ISQLServerBulkData to remove implementation details from ISQLServerBulkRecord #1099
  • Added support for Azure national clouds when using Azure Key Vault #1130
  • Implemented hashCode() and equals() APIs for SQLServerDataTable and SQLServerDataColumn #1146
  • Added support for JAVA 13 #1151
  • Added support for Always Encrypted with Secure Enclaves #1155

Fixed Issues

  • Fixed Geography.STAsBinary() returning null for a single point #1074
  • Fixed DatabaseMetaData.getImportedKeys() returning duplicate rows #1092
  • Fixed issue with truststore password being removed too early for XA connections #1133
  • Fixed issue with SQLServerDatabaseMetada.getColumns() not escaping wildcard characters #1138
  • Removed extra spaces in SQLServerDatabaseMetaData.getNumericFunctions() and SQLServerDatabaseMetaData.getStringFunctions() return values #1117

Changed

  • Improved performance of column name lookups #1066
  • Test improvements #1100
  • Updated issue templates #1148
  • Improved performance of CallableStatement and ParameterMetaData when using procedure names that contain wildcard characters #1149
  • Updated CI to use SQL Server 2012 instead of 2008R2 #1153

[7.4.1] HotFix & Stable Release

03 Aug 00:34
ae05c4e
Compare
Choose a tag to compare

Fixed Issues

  • Reverted #1025 as it contains breaking changes. This removes hashCode() and equals() APIs from SQLServerDataTable and SQLServerDataColumn.

[7.4.0] Stable Release

01 Aug 00:36
5c3c9ad
Compare
Choose a tag to compare

Fixed Issues

  • Fixed issues reported by Static Analysis Tool - SonarQube #1077 #1103
  • Fixed issues with array bound checking in 'useFmtOnly' implementation #1094

Changed

  • Performance improvements #1075
  • Changed NTLM Authentication implementation to not store password in plain text #1095 #1108
  • Updated the Maven dependency of 'Java Client Runtime for AutoRest' to 1.6.10 version of the library #1097
  • Changed NTLM Authentication error strings #1105

[7.3.1] Preview Release

14 Jun 23:46
bc79aa1
Compare
Choose a tag to compare
Pre-release

Added

  • Added support for NTLM Authentication #998
  • Added new connection property 'useFmtOnly' to retrieve parameter metadata #1044
  • Added support for JDK 12 with an additional "jre12" JAR #1050
  • Added 'keyVaultProviderClientId' and 'keyVaultProviderClientKey' connection properties to enhance Always Encrypted usability #902
  • Implemented hashCode() and equals() APIs for SQLServerDataTable and SQLServerDataColumn #1025
  • Added Maven Shade plugin configuration to package the driver jars in uber-jars #1043 #1078 #1081

Fixed Issues

  • Fixed DatabaseMetadata.getColumns() API to return ResultSet as per JDBC 4.3 Specifications #1016
  • Fixed issue with invalid Spatial data types by marking them valid by default #1035
  • Fixed issues with Login Timeout not getting applied appropriately #1049
  • Fixed SharedTimer implementation to use class level lock for thread safety #1046
  • Fixed issues with SQLServerDatabaseMetadata.getMaxConnections() API query #1009
  • Fixed issues with next ResultSet being consumed when reading warnings #991
  • Fixed exception handling in SQLServerPreparedStatement to make it consistent with SQLServerStatement #1003
  • Fixed misleading exception message in SQLServerCallableStatement implementation #1064
  • JUnit Test fixes and improvements #994 #1004 #1005 #1006 #1008 #1015 #1017 #1019 #1027 #1032 #1034 #1036 #1041 #1047 #1060

Changed

  • Improved performance of driver by continuously cleaning up ActivityIds stored in internal Map #1020
  • Improved performance by removing Enum.values() calls to avoid unnecessary array cloning #1065
  • Improved performance of SQLServerDataTable.internalAddRow() function #990