OpenHausIO / connector

Connector between backend & local network
MIT License
1 stars 2 forks source link

Crashes on ARM CPUs #34

Closed mStirner closed 1 year ago

mStirner commented 1 year ago

On Raspberry/Rockpi S the Application crashes.

My local installation has a scene "Evening", when called, Lightning is set on. After the scenes "completes" the app crashes and restart with the message "Disconnected from WebSocket".

Dunno why a disconnect happens after sending/receiving data.

Single bridges.js calls, seems to work: ./bridge.js --upstream=ws://open-haus.lan:8080/api/devices/63a0ce5b33d59ec69d8ffe16/interfaces/63a0ce5b33d59ec69d8ffe17 --host=lowboard.lan --port=8080

Happens because of memory issue? Same application works 1:1 just fine on my Workstation/VMs.

Investigate this further!

mStirner commented 1 year ago

When 3 separate bridges create, the disconnect happens. 3 screen's started, in each a seperate bridge.js running, and it disconnects from the WebSocket.

./bridge.js --upstream=ws://open-haus.lan:8080/api/devices/63a1745d9116397c5e22aa40/interfaces/63a1745d9116397c5e22aa41 --host=192.168.2.4 --port=80
./bridge.js --upstream=ws://open-haus.lan:8080/api/devices/63a0ceb1fa5b98c4b1f74ba9/interfaces/63a0ceb1fa5b98c4b1f74baa --host=192.168.2.10 --port=60128
./bridge.js --upstream=ws://open-haus.lan:8080/api/devices/63a0ce5b33d59ec69d8ffe16/interfaces/63a0ce5b33d59ec69d8ffe17 --host=lowboard.lan --port=8080
./bridge.js --upstream=ws://open-haus.lan:8080/api/devices/63fa477feebbb38d9d4fa34d/interfaces/63fa477feebbb38d9d4fa34e --host=192.168.2.115 --port=80

Even the av-receiver bridge disconnects, although there are no data/commands send.

mStirner commented 1 year ago

"Perhaps" this issue is not related to ARM CPUs & Connector. The more i dive into the problem, it seems the backend crashes.

Error: error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt
    at Decipheriv.final (node:internal/crypto/cipher:193:29)
    at e (/opt/OpenHaus/backend-build/components/vault/decrypt.js:1:358)
    at n.decrypt (/opt/OpenHaus/backend-build/components/vault/class.secret.js:1:703)
    at /opt/OpenHaus/backend-build/plugins/39a38e4b-5460-4897-95f8-872b550ea45b/endpoint-handler.js:45:43
    at processTicksAndRejections (node:internal/process/task_queues:96:5) {
  library: 'digital envelope routines',
  function: 'EVP_DecryptFinal_ex',
  reason: 'bad decrypt',
  code: 'ERR_OSSL_EVP_BAD_DECRYPT'
}

Related to https://github.com/OpenHausIO/backend/issues/302 ?

mStirner commented 1 year ago

Not per se a issue of the connector, see: https://github.com/OpenHausIO/backend/issues/329