Release Notes for MariaDB Connector/Node.js 3.3.0
This page is part of MariaDB's Documentation.
The parent of this page is: Release Notes for MariaDB Connector/Node.js 3.3
Topics on this page:
Overview
MariaDB Connector/Node.js is the interface between Node.js applications and MariaDB Server. MariaDB Connector/Node.js enables development of Node.js applications.
MariaDB Connector/Node.js 3.3.0 was released on 2024-03-21. This release is of General Availability (GA) maturity.
Connector/Node.js 3.3 is the successor to Connector/Node.js 3.2 and is fully compatible with Connector/Node.js 3.2. Users of Connector/Node.js 3.2 should shift to Connector/Node.js 3.3.
Notable Changes
Zero-Configuration SSL
In order to have SSL connections, there were 3 solutions: (CONJS-264)
Have server certificates generated with trusted Node.js Certificate Authorities (CA), configuration was then like
ssl: true
Configure connector with server certificate like:
ssl: { ca: [ fs.readFileSync('server-cert.pem') ] }
Disable certificate SSL verification (not secured!) like:
ssl: { rejectUnauthorized: true }
Since MariaDB 11.4.1 (MDEV-31855), enabling SSL is super easy, with simple configuration like: ssl: true
, even if server does not have configured SSL certificates. The connector doesn't need to know the server certificate any more if the password is not empty. This is part of Mission Impossible: Zero-Configuration SSL, client validating SSL certificates using client password.
pipeline PREPARE and EXECUTE
Previous use of connection.execute
was: execute the PREPARE
command first, read the PREPARE
response, execute the EXECUTE
command, and finally read the EXECUTE
response. (CONJS-284)
The new implementation, when using using MariaDB server 10.2+ and with the pipelining
option enabled (the default value) will: execute PREPARE, execute EXECUTE, then read the PREPARE
response, and read the EXECUTE
response. This permits avoiding much of the network latency.
Benchmarking results using a local database: (a remote database would have even better results)
This improvement is for the first execution of a specific query, since ``PREPARE`` is cached by default, the second execution would only execute the ``EXECUTE`` command.
Issues Fixed
Cannot connect to 11.3+ server with
character-set-collations = utf8mb4=uca1400_ai_ci
(CONJS-281)Using connection.importFile when connection is not connected to database result in error (CONJS-277)
Possible buffer overwrite when sending query bigger than 16M (CONJS-278)
Error when using
mysql_clear_test
password authentication plugin (CONJS-282)Wrong decoding of binary unsigned
MEDIUMINT
(CONJS-283)DECIMAL
field wrong decoding with deprecated option'supportBigNumbers'
set (CONJS-285)
Supplemental Notes
Improve query encoding and decoding performance (CONJS-279)