Releases: microsoft/mssql-jdbc
Releases · microsoft/mssql-jdbc
[8.3.1] Preview 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
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
[8.2.2] HotFix & Stable Release
Added
- Added an option to configure the list of trusted Azure Key Vault endpoints #1285
[8.2.1] HotFix & Stable Release
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
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
[8.1.1] Preview 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
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
[7.4.1] HotFix & Stable Release
Fixed Issues
- Reverted #1025 as it contains breaking changes. This removes
hashCode()
andequals()
APIs fromSQLServerDataTable
andSQLServerDataColumn
.
[7.4.0] Stable Release
[7.3.1] Preview 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()
andequals()
APIs forSQLServerDataTable
andSQLServerDataColumn
#1025 - Added Maven Shade plugin configuration to package the driver jars in uber-jars #1043 #1078 #1081
Fixed Issues
- Fixed
DatabaseMetadata.getColumns()
API to returnResultSet
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 withSQLServerStatement
#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