valeriansaliou / node-sonic-channel

🦉 Sonic Channel integration for Node. Used in pair with Sonic, the fast, lightweight and schema-less search backend.

Home Page:https://www.npmjs.com/package/sonic-channel

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Sonic Injest Closes Unexpectedly

mhudecheck opened this issue · comments

I'm using the node.js sonic driver to injest a large (100M+) document collection from MongoDB. After ~60 seconds, the connection automatically drops with the following error:

(INFO) - closing channel thread with traceback: Connection reset by peer (os error 104)

I've tried implementing different timeout lengths on my injest stream without any luck. Is there an automatic timeout setting in node-sonic-channel?

Hello!

Can you share which Sonic version you’re using, also if it’s running in the Docker image.

As well, which version of node-sonic-channel do you run?

And last, can you import with Sonic in warn log level and share all Sonic console logs of a failed import?

I’ve ran a huge import for Crisp (400M+) objects over ~1 day with the same setup and I’ve not seen this.

I'm running Sonic 1.18 and sonic-channel 1.2.5. Sonic and Mongodb are running on a physical server.
The output I get with debug enabled in the config file is:

(INFO) - took 1ms/1408us/1408102ns to process channel message

(INFO) - closing channel thread with traceback: Connection reset by peer (os error 104)

thread 'sonic-channel-client' panicked at 'closing channel', /home/***/.cargo/registry/src/github.com-1ecc6299db9ec823/sonic-server-1.1.8/src/channel/handle.rs:181:21

(DEBUG) - running a tasker tick...

(DEBUG) - scanning for kv store pool items to janitor

This turned out to be a problem with the MongoDB in-memory engine (specifically, Percona's open source version) and not node-sonic. Switching back to WiredTiger fixed the issue.