The TLSv1.0 and TLSv1.1 connection protocols are now deprecated and support for them is subject to removal in a future Connector/Node.js version. Using these protocols now raises a warning. (WL #14565)
Management of connections to the MySQL server is now handled independently of the X DevAPI
Sessioninterface. (WL #12430)
Replaced all instances of the deprecated
Buffer()API for the recommended alternatives (Buffer.alloc(),Buffer.allocUnsafe(), andBuffer.from()) to avoid unnecessary warning messages. (Bug #32820267, Bug #103419)-
For
addOrReplaceOne()andreplaceOne(), an error is now reported if the object provided as the second argument contains an_idproperty that does not match the value provided as the first argument.The previous behavior was unexpected. For example, when calling
addOrReplaceOne('1', { _id: '2', name: 'foo' }), a document with_id: '1'was created if it did not exist, or if it did exist then any existingnameproperty was updated with the value'foo', or one was created. (Bug #32763298) SQL statement instances can now be executed with different placeholder values. (Bug #32750927)
We now ensure that all floating point numbers are represented either by JavaScript numbers or by X DevAPI expression literals that are encoded as an X Protocol
V_DOUBLEtype; this helps avoid loss of precision. (Bug #32687374, Bug #103124)We now prevent column metadata callback functions used as push-based cursors in the
execute()method from being called more than once for each result set generated by a statement. (Bug #32631911)Upon exceeding
connectTimeoutto a MySQL server, when a connection pool contained an idle connection that previously established a connection to same server and in the meantime the server became unresponsive but reachable, then an application became unresponsive after trying to acquire a connection from the pool. (Bug #32205365)If
connectTimeoutwas exceeded as the client tried to connect to a server, the connection socket was not implicitly closed. (Bug #32200234)