You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/connect/jdbc/release-notes-for-the-jdbc-driver.md
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -94,7 +94,7 @@ For the driver in a tar.gz file: [Chinese (Simplified)](https://go.microsoft.com
94
94
| Fixed regression with specifying argument names in callable statement syntax | Fixed a regression from 12.6.2 --> 12.6.3 where CallableStatements of a certain format returned incorrect values. [GitHub Issue #2477](https://github.com/microsoft/mssql-jdbc/issues/2477). |
95
95
| Fixed parsing for parentheses in stored procedures and functions | Fixed an issue where calling a function with parentheses at the end in a callable statement, for example, function() vs function, resulting in the return value always being 0. This change was a regression from 12.6.2 --> 12.6.3. [GitHub Issue #2463](https://github.com/microsoft/mssql-jdbc/issues/2463). |
96
96
| Fixed an error where the driver wasn't respecting `CallableStatement` with default arguments. | Fixed an error that was a regression from 12.5.0 --> 12.6.0, where default arguments in callable statements were being ignored. [GitHub Issue #2446](https://github.com/microsoft/mssql-jdbc/issues/2446). |
97
-
| Fix to remove `TokenCredential` class where the driver does not require it |`TokenCredentialClass` isn't needed in `SQLServerSecurityUtility` and can cause an incorrectly thrown `NoClassDefFoundError`. This fix removes the import, replacing it with a generic `Object`. [GitHub Issue #2439](https://github.com/microsoft/mssql-jdbc/issues/2439). |
97
+
| Fix to remove `TokenCredential` class where the driver doesn't require it |`TokenCredentialClass` isn't needed in `SQLServerSecurityUtility` and can cause an incorrectly thrown `NoClassDefFoundError`. This fix removes the import, replacing it with a generic `Object`. [GitHub Issue #2439](https://github.com/microsoft/mssql-jdbc/issues/2439). |
98
98
| Fixed timestamp string conversion error for CallableStatements | Fixed a conversion exception that occurred when calling a `DateTime` in/out parameter while setting a `String` value. [GitHub Issue #2436](https://github.com/microsoft/mssql-jdbc/issues/2436). |
99
99
| Fixed SqlAuthenticationToken constructor to accept correct parameter | The constructor for SQLAuthenticationToken was incorrect, working with an input parameter in seconds, when it should be milliseconds. [GitHub Issue #2424](https://github.com/microsoft/mssql-jdbc/issues/2424). |
100
100
| Fix to clear prepared statement handle before reconnection | This fixes an issue where the wrong handles were used in a `SQLServerPreparedStatement` after reconnection by properly clearing `SQLServerPreparedStatement.prepStmtHandle` before reconnecting. [GitHub Issue #2364](https://github.com/microsoft/mssql-jdbc/issues/2364). |
@@ -103,7 +103,7 @@ For the driver in a tar.gz file: [Chinese (Simplified)](https://go.microsoft.com
103
103
| Fix to properly check if `TDSCommand` counter is null before attempting to increment | Adds a missing `null` check for the `TDSCommand` counter, preventing a `NullPointerException` that could otherwise arise. [GitHub Issue #2353](https://github.com/microsoft/mssql-jdbc/issues/2353). |
104
104
| Fix calling procedures with output parameters by their four-part syntax | Fixes an issue where calling stored procedures with a four-part syntax (that is, with a linked server) resulted in an error stating the TDS protocol stream isn't valid. [GitHub Issue #2344](https://github.com/microsoft/mssql-jdbc/issues/2344). |
105
105
| Fix to properly escape `schema` parameters for `getProcedures` and `getProcedureColumns`| The `SQLServerDatabaseMetadata` methods `getProcedures` and `getProcedureColumns` weren't properly escaping certain characters (for example, `\`) for the `schema` parameter. This change fixes that issue. [GitHub Issue #2336](https://github.com/microsoft/mssql-jdbc/issues/2336). |
106
-
| Added token cache map to fix use of unintended auth token for subsequent connections | This fixes an issue where client credentials could be inadvertently reused. While the auth token was correctly cached, it was reused by the driver with only the client secret changed. [GitHub Issue #2334](https://github.com/microsoft/mssql-jdbc/issues/2334). |
106
+
| Added token cache map to fix use of unintended auth token for subsequent connections | This fixes an issue where client credentials could be inadvertently reused. While the auth token was correctly cached, the driver was reusing the token with only the client secret changed. [GitHub Issue #2334](https://github.com/microsoft/mssql-jdbc/issues/2334). |
107
107
| Fixed support for `exec` escape syntax in CallableStatements | This fixes an issue where, after removing the wrapped `sp_executesql`/`sp_prepexec` calls in order to execute CallableStatements quickly, `EXEC` calls were no longer working. [GitHub Issue #2325](https://github.com/microsoft/mssql-jdbc/issues/2325). |
108
108
| Fix to ensure `Money` and `SmallMoney` are within the correct ranges for `BulkCopy`| This fixes an issue where, when using `BulkCopy` with `Money` or `SmallMoney` values, conversion to/from the values can cause an `ArithmeticOverflowException`. [GitHub Issue #2309](https://github.com/microsoft/mssql-jdbc/issues/2309). |
109
109
| Fix to ensure `ResultSetMetadata` for `DataabseMetadata.getColumns()` is correct for all columns | The returned metadata was incorrect for some columns, this change fixes that problem. [GitHub Issue #2232](https://github.com/microsoft/mssql-jdbc/issues/2232). |
@@ -217,9 +217,9 @@ For the driver in a tar.gz file: [Chinese (Simplified)](https://go.microsoft.com
217
217
| Changed how IBM JDK is checked for prevent issues with OSGi environments | Changed from only checking vendor name, to checking both vendor and vm name. |
218
218
| Properly synchronized all calls to MSAL | Prevents the driver from making extra calls and proving unnecessary dialogues. |
219
219
| Added more errors that should translate to RMFAIL | Added more cases, "connection reset by peer" and "connection timed out", that should equate to RMFAIL |
220
-
| Changed how Timestamps are used in BulkCopy | Change BulkCopy behavior from serializing and deserializing Timestamp objects, to using the objects directly, leading to a performance improvement when using a large number of Timestamps. |
220
+
| Changed how Timestamps are used in BulkCopy | Change BulkCopy behavior from serializing and deserializing Timestamp objects, to using the objects directly, leading to a performance improvement when a user is using many Timestamps. |
221
221
| Changed `socketTimeout` to ensure it's properly less than `loginTimeout`| Previously `socketTimeout` acted independently from `loginTimeout` leading to potentially confusing behavior where the driver would take longer to timeout than expected. This issue is fixed so `socketTimeout` always has an upper bound equal to `loginTimeout`. |
222
-
| Adjusted PreparedStatement cache so it's cleared before every execute | The PreparedStatement cache wasn't being cleared correctly, which, in addition to its infrequency, could lead to memory issues over time. This change ensures the cache is cleaned before each execute, preventing object build-up. |
222
+
| Adjusted the PreparedStatement cache so it clears itself before every execute | The PreparedStatement cache wasn't being cleared correctly, which, in addition to its infrequency, could lead to memory issues over time. This change ensures the cache is cleaned before each execute, preventing object build-up. |
223
223
| Upgraded to newer Bouncycastle dependencies | Upgrade from `bcprov-jdk15on` and `bcpkix-jdk15on` to `bcprov-jdk18on` and `bcpkix-jdk18on` as the former is no longer being updated. |
224
224
| Updated dependencies | Updated dependency versions for `azure-identity`, `azure-security-keyvault-keys`, `bouncycastle`, `h2`, and `msal`. |
225
225
@@ -233,14 +233,14 @@ For the driver in a tar.gz file: [Chinese (Simplified)](https://go.microsoft.com
233
233
| Fixed missing getters and setters for `useBulkCopyForBatchInsert`| Fixed an issue where behavior wasn't the same between `SQLServerConnection` and `SQLServerConnnectionPoolProxy`, when it should be, as `useBulkCopyForBatchInsert` was missing a getter and setter in the latter. [GitHub Issue #2245](https://github.com/microsoft/mssql-jdbc/issues/2245).|
234
234
| Fixed bulkcopy metadata query to make use of cached data, if available | Fixed an issue where, despite the data being cached, calls for column metadata were being called each time. [GitHub Issue #2224](https://github.com/microsoft/mssql-jdbc/issues/2224).|
235
235
| Fixed a missing BigDecimal scale check for TVP values | - Fixed an issue where, when writing TVP row values, input values weren't properly filtered for BigDecimal scale. [GitHub Issue #2222](https://github.com/microsoft/mssql-jdbc/issues/2222).|
236
-
| Fixed schemaPattern in SQLServerDatabaseMetadata to ensure it's properly escaped| Fixed an issue where schemaPattern was the only pattern not properly being escaped in SQLServerDatabaseMetadata. [GitHub Issue #2186](https://github.com/microsoft/mssql-jdbc/issues/2186).|
236
+
| Fixed schemaPattern in SQLServerDatabaseMetadata to ensure methods that use the parameter properly escape it.| Fixed an issue where schemaPattern was the only pattern not properly being escaped in SQLServerDatabaseMetadata. [GitHub Issue #2186](https://github.com/microsoft/mssql-jdbc/issues/2186).|
237
237
| Fixed an issue where a null SQLState was returned when trying to convert a date to a long | Fixed an issue where, when `xopenStates` is set to true, the driver doesn't return the expected SQL-99 state code in a particular instance. [GitHub Issue #2167](https://github.com/microsoft/mssql-jdbc/issues/2167).|
238
238
| Fixed getMetaData error for queries containing TOP | Fixed an issue where, when using the TOP qualifier in a query, the driver returns an error concerning ParameterMetadata. [GitHub Issue #1776](https://github.com/microsoft/mssql-jdbc/issues/1776).|
239
239
| Fixed a table name parsing issue when using batch inserts | Fixed an issue where insert statements with missing whitespace worked correctly in regular cases, but not when using batch inserts. [GitHub Issue #1534](https://github.com/microsoft/mssql-jdbc/issues/1534).|
240
240
| Fixed an issue with ParameterMetadata and invalid indexes | Fixed an issue with ParameterMetadata not properly checking, and throwing exceptions for, an invalid index 0. [GitHub Issue #1490](https://github.com/microsoft/mssql-jdbc/issues/1490).|
241
241
| Fixed behavior of ActivityID in ActivityCorrelator | Fixed the way ActivityID was defined and used to be more in line with the behavior of other Microsoft drivers. |
242
242
| Fix to ignore computed columns when using bulkcopy for batch insert | Fixed BulkCopy behavior to ignore computed columns, and allow batch inserts, when previously the insert would fail and return an error citing those computed columns. |
243
-
| Fixed driver behavior concerning signatures when using Java Key Store and Azure Key Vault | Fixed an issue where signature wasn't properly verified when using Java Key Store, and adding a new API to sign column master key metadata (and return generated signature) for use with Java Key Store and Azure Key Vault |
243
+
| Fixed driver behavior concerning signatures when using Java Key Store and Azure Key Vault | Fixed an issue where the driver wasn't properly verifying the signature, when using Java Key Store, and adding a new API to sign column master key metadata (and return generated signature) for use with Java Key Store and Azure Key Vault |
244
244
| Fixes getObject()'s erroneous conversion of DateTimeOffset | Fixed an issue when calling ResultSet.getObject() on a DATETIMEOFFSET column, with LocalDate/LocalTime/LocalDateTime as the class argument, the value in the column would be converted to the local time zone. |
0 commit comments