[CONJS-103] Collation changes after 10 times using MariaDb.createPool().query() Created: 2019-10-18  Updated: 2019-11-14  Resolved: 2019-11-14

Status: Closed
Project: MariaDB Connector/node.js
Component/s: pool
Affects Version/s: None
Fix Version/s: N/A

Type: Bug Priority: Major
Reporter: Bruno Heitzmann Almada Assignee: Diego Dupin
Resolution: Won't Do Votes: 0
Labels: None


 Description   

Hello,

I am using mariadb package to query my database, which is set in UTF8MB4_GENERAL_CI charset: utf8

But after 10 times I query my database, the collation somehow changes to LATIN1_SWEDISH_CI, charset: latin1, and then the german umlauts (ä ö ü) and ß characters get replaced by question marks.

I could see this happening in /lib/cmd/common-text-cmd.js, and console.log column.collation and string from packet.readStringLength().

Any help I would much appreciate!

Ah yes, I tried with 2.1.0 version this week, and today I tried with the latest 2.1.2 version.



 Comments   
Comment by Diego Dupin [ 2019-11-04 ]

Could you indicate that the server version is less than 10.2.22, 10.3.13 ? This seems to correspond to MDEV-18281
If this is the case, disable option `resetAfterUse` so when connection from pool is given back to pool, only commit/roolback will be executed if needed.

Comment by Bruno Heitzmann Almada [ 2019-11-13 ]

Hi Diego, thank you very much for your reply. The Server version is 10.3.12, and my local machine is 10.4.8.

Comment by Diego Dupin [ 2019-11-14 ]

This is now corrected with MDEV-18281. So either upgrade server, or on connector level, change pool configuration to add `resetAfterUse: false`.

By default, when the connection is released to pool, pool ensures connection good state (reset transaction isolation level, reset session variables, delete user variables, remove temporary tables, ...). That use COM_RESET_CONNECTION indicate in MDEV-18281.
Disabling `resetAfterUse` then the connector will only rollback any open transaction not using COM_RESET_CONNECTION.

Generated at Thu Feb 08 03:22:46 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.