Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Sequelize NodeJS server throwing "ERR_UNKNOWN_ENCODING" error

could anyone help me locate the problem. I'm getting this error:

node:internal/streams/writable:296
       throw new ERR_UNKNOWN_ENCODING(encoding);
       ^

 TypeError [ERR_UNKNOWN_ENCODING]: Unknown encoding: <ref *1> Handshake {
   _events: [Object: null prototype],
   _eventsCount: 1,
   _maxListeners: undefined,
   sequenceNo: 1,
   compressSequenceNo: -1,
   resolve: [Function: bound _authSucceedHandler],
   reject: [Function: bound _authFailHandler],
   sending: false,
   _createSecureContext: [Function: bound _createSecureContext],
   _addCommand: [Function: bound _addCommandEnable],
   getSocket: [Function: _getSocket],
   onPacketReceive: [Function: parseHandshakeInit],
   plugin: [Circular *1],
   [Symbol(kCapture)]: false
 }
     at new NodeError (node:internal/errors:259:15)
     at Socket.Writable.write (node:internal/streams/writable:296:13)
     at PacketOutputStream.flushBufferBasic (/var/www/app/node_modules/mariadb/lib/io/packet-output-stream.js:444:17)
     at Object.send (/var/www/app/node_modules/mariadb/lib/cmd/handshake/client-handshake-response.js:118:7)
     at Handshake.parseHandshakeInit (/var/www/app/node_modules/mariadb/lib/cmd/handshake/handshake.js:82:31)
     at PacketInputStream.receivePacketBasic (/var/www/app/node_modules/mariadb/lib/io/packet-input-stream.js:104:9)
     at PacketInputStream.onData (/var/www/app/node_modules/mariadb/lib/io/packet-input-stream.js:169:20)
     at Socket.emit (node:events:327:20)
     at addChunk (node:internal/streams/readable:304:12)
     at readableAddChunk (node:internal/streams/readable:279:9) {
   code: 'ERR_UNKNOWN_ENCODING'
 }

I currently have no idea what's wrong. Figured out, that the problem lies here:

const sequelize = new Sequelize(process.env.DB_DATABASE, process.env.DB_USER, process.env.DB_PASSWORD, {
    host: process.env.DB_HOST,
    port: process.env.DB_PORT,
    dialect: 'mariadb',
});

sequelize.authenticate()
    .then(() => {
        logger.log('info', 'Connected to database')
    })
    .catch((error) => {
        logger.log('error', 'Failed to connect to database!');
        logger.log('error', JSON.stringify(error));
    })

in the authenticate function. Database: mariadb:10.5.7-focal (docker)

like image 560
Kipras Avatar asked Dec 05 '25 18:12

Kipras


1 Answers

Everything worked before, because I used an older version of MariaDB, had to run npm update and the problem fixed itself.

like image 108
Kipras Avatar answered Dec 08 '25 07:12

Kipras



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!