Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LNDhub 1.3 on myNode failing often #161

Open
godSaysHODL opened this issue Mar 25, 2021 · 80 comments
Open

LNDhub 1.3 on myNode failing often #161

godSaysHODL opened this issue Mar 25, 2021 · 80 comments

Comments

@godSaysHODL
Copy link

having to restart LNDhub almost daily. Wallet gets code 7 error if I'm creating an invoice, or code 4 if I'm paying an invoice. I goto lndhub address to investigate, and lndhub officially fails and restarts itself to work again properly. Only been happening since 1.3 update.

-- Logs begin at Wed 2021-03-24 05:42:39 CDT, end at Wed 2021-03-24 19:01:18 CDT. --
Mar 24 19:00:58 myNode systemd[1]: lndhub.service: Failed with result 'exit-code'.
Mar 24 19:00:58 myNode systemd[1]: lndhub.service: Main process exited, code=exited, status=3/NOTIMPLEMENTED
Mar 24 19:00:58 myNode lndhub[30998]: npm ERR! /home/bitcoin/.npm/_logs/2021-03-25T00_00_58_882Z-debug.log
Mar 24 19:00:58 myNode lndhub[30998]: npm ERR! A complete log of this run can be found in:
Mar 24 19:00:58 myNode lndhub[30998]: npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
Mar 24 19:00:58 myNode lndhub[30998]: npm ERR! Failed at the lndhub@1.3.0 start script.
Mar 24 19:00:58 myNode lndhub[30998]: npm ERR!
Mar 24 19:00:58 myNode lndhub[30998]: npm ERR! Exit status 3
Mar 24 19:00:58 myNode lndhub[30998]: npm ERR! lndhub@1.3.0 start: babel-node index.js
Mar 24 19:00:58 myNode lndhub[30998]: npm ERR! errno 3
Mar 24 19:00:58 myNode lndhub[30998]: npm ERR! code ELIFECYCLE
Mar 24 19:00:58 myNode lndhub[30998]: lnd failure
Mar 24 19:00:58 myNode lndhub[30998]: 2021-03-25T00:00:58.309Z : info: [/] : ["673669fe-bb87-4c59-b59d-12246927b69f"]
Mar 24 19:00:57 myNode lndhub[30998]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 24 19:00:57 myNode lndhub[30998]: details: 'Bandwidth exhausted',
Mar 24 19:00:57 myNode lndhub[30998]: code: 8,
Mar 24 19:00:57 myNode lndhub[30998]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 24 19:00:57 myNode lndhub[30998]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 24 19:00:57 myNode lndhub[30998]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Mar 24 19:00:57 myNode lndhub[30998]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Mar 24 19:00:57 myNode lndhub[30998]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:334:36)
Mar 24 19:00:57 myNode lndhub[30998]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Mar 24 19:00:57 myNode lndhub[30998]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted
Mar 24 19:00:57 myNode lndhub[30998]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 24 19:00:57 myNode lndhub[30998]: details: 'Bandwidth exhausted',
Mar 24 19:00:57 myNode lndhub[30998]: code: 8,
Mar 24 19:00:57 myNode lndhub[30998]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 24 19:00:57 myNode lndhub[30998]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 24 19:00:57 myNode lndhub[30998]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Mar 24 19:00:57 myNode lndhub[30998]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Mar 24 19:00:57 myNode lndhub[30998]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:334:36)
Mar 24 19:00:57 myNode lndhub[30998]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Mar 24 19:00:57 myNode lndhub[30998]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted

@Overtorment
Copy link
Member

can you post a bit more logs?

this one looks suspicious: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted

@godSaysHODL
Copy link
Author

godSaysHODL commented Mar 25, 2021

can you post a bit more logs?

this one looks suspicious: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted

Yes, is there any risk of exposing sensitive info from the logs? Wasnt sure about account numbers showing or anything

-- Logs begin at Wed 2021-03-24 17:22:23 CDT, end at Thu 2021-03-25 07:42:49 CDT. --
Mar 25 07:42:12 myNode lndhub[27570]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 25 07:42:12 myNode lndhub[27570]: details: 'Bandwidth exhausted',
Mar 25 07:42:12 myNode lndhub[27570]: code: 8,
Mar 25 07:42:12 myNode lndhub[27570]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 25 07:42:12 myNode lndhub[27570]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 25 07:42:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Mar 25 07:42:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Mar 25 07:42:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:334:36)
Mar 25 07:42:12 myNode lndhub[27570]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Mar 25 07:42:12 myNode lndhub[27570]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted
Mar 25 07:42:12 myNode lndhub[27570]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 25 07:42:12 myNode lndhub[27570]: details: 'Bandwidth exhausted',
Mar 25 07:42:12 myNode lndhub[27570]: code: 8,
Mar 25 07:42:12 myNode lndhub[27570]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 25 07:42:12 myNode lndhub[27570]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 25 07:42:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Mar 25 07:42:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Mar 25 07:42:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:334:36)
Mar 25 07:42:12 myNode lndhub[27570]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Mar 25 07:42:12 myNode lndhub[27570]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted
Mar 25 07:42:12 myNode lndhub[27570]: updated
Mar 25 07:42:12 myNode lndhub[27570]: updateLightning()
Mar 25 07:41:48 myNode lndhub[27570]: 54f94216-f730-43b0-9bdc-8c0d041b2464 ::ffff:107.115.44.161 - - [25/Mar/2021:12:41:48 +0000] "GET /getuserinvoices HTTP/1.1" 304 - "-" "okhttp/3.12.1"
Mar 25 07:41:48 myNode lndhub[27570]: 2021-03-25T12:41:48.093Z : info: [/getuserinvoices] : ["54f94216-f730-43b0-9bdc-8c0d041b2464","userid: 3892dfb6376847476fea71f4b783eb08fc16963fe8a6929e"]
Mar 25 07:41:48 myNode lndhub[27570]: 2021-03-25T12:41:48.092Z : info: [/getuserinvoices] : ["54f94216-f730-43b0-9bdc-8c0d041b2464"]
Mar 25 07:41:47 myNode lndhub[27570]: 93b0f6fd-86eb-4b3d-9439-08cf80cbdac7 ::ffff:107.115.44.161 - - [25/Mar/2021:12:41:47 +0000] "GET /getpending HTTP/1.1" 304 - "-" "okhttp/3.12.1"
Mar 25 07:41:47 myNode lndhub[27570]: 2021-03-25T12:41:47.988Z : info: [/getpending] : ["93b0f6fd-86eb-4b3d-9439-08cf80cbdac7","userid: 3892dfb6376847476fea71f4b783eb08fc16963fe8a6929e"]
Mar 25 07:41:47 myNode lndhub[27570]: 2021-03-25T12:41:47.987Z : info: [/getpending] : ["93b0f6fd-86eb-4b3d-9439-08cf80cbdac7"]
Mar 25 07:41:47 myNode lndhub[27570]: b4fde68d-aa7a-4cfd-8fb3-01e6b0facc20 ::ffff:107.115.44.161 - - [25/Mar/2021:12:41:47 +0000] "GET /gettxs?limit=10&offset=0 HTTP/1.1" 304 - "-" "okhttp/3.12.1"
Mar 25 07:41:47 myNode lndhub[27570]: 2021-03-25T12:41:47.879Z : info: [/gettxs] : ["b4fde68d-aa7a-4cfd-8fb3-01e6b0facc20","userid: 3892dfb6376847476fea71f4b783eb08fc16963fe8a6929e"]
Mar 25 07:41:47 myNode lndhub[27570]: 2021-03-25T12:41:47.879Z : info: [/gettxs] : ["b4fde68d-aa7a-4cfd-8fb3-01e6b0facc20"]
Mar 25 07:41:42 myNode lndhub[27570]: 995f86c8-0eed-4510-8b02-70337ce43313 ::ffff:107.115.44.161 - - [25/Mar/2021:12:41:42 +0000] "POST /addinvoice HTTP/1.1" 200 46 "-" "okhttp/3.12.1"
Mar 25 07:41:42 myNode lndhub[27570]: 2021-03-25T12:41:42.314Z : info: [/addinvoice] : ["995f86c8-0eed-4510-8b02-70337ce43313","userid: 3892dfb6376847476fea71f4b783eb08fc16963fe8a6929e"]
Mar 25 07:41:42 myNode lndhub[27570]: 2021-03-25T12:41:42.314Z : info: [/addinvoice] : ["995f86c8-0eed-4510-8b02-70337ce43313"]
Mar 25 07:41:42 myNode lndhub[27570]: f8f2bbf3-4f63-4272-b341-535363e18dca ::ffff:107.115.44.161 - - [25/Mar/2021:12:41:42 +0000] "GET /balance HTTP/1.1" 304 - "-" "okhttp/3.12.1"
Mar 25 07:41:42 myNode lndhub[27570]: 2021-03-25T12:41:42.126Z : info: [/balance] : ["f8f2bbf3-4f63-4272-b341-535363e18dca","userid: 3892dfb6376847476fea71f4b783eb08fc16963fe8a6929e"]
Mar 25 07:41:42 myNode lndhub[27570]: 2021-03-25T12:41:42.124Z : info: [/balance] : ["f8f2bbf3-4f63-4272-b341-535363e18dca"]
Mar 25 07:41:28 myNode lndhub[27570]: 6b098db5-4b4a-4f07-a78e-fabea38503eb ::ffff:107.115.44.161 - - [25/Mar/2021:12:41:28 +0000] "GET /getuserinvoices HTTP/1.1" 200 91047 "-" "okhttp/3.12.1"
Mar 25 07:41:27 myNode lndhub[27570]: 2021-03-25T12:41:27.901Z : info: [/getuserinvoices] : ["6b098db5-4b4a-4f07-a78e-fabea38503eb","userid: 3892dfb6376847476fea71f4b783eb08fc16963fe8a6929e"]
Mar 25 07:41:27 myNode lndhub[27570]: 2021-03-25T12:41:27.900Z : info: [/getuserinvoices] : ["6b098db5-4b4a-4f07-a78e-fabea38503eb"]
Mar 25 07:41:27 myNode lndhub[27570]: c974d46b-fb6f-4f39-b7f3-676ea5fcb356 ::ffff:107.115.44.161 - - [25/Mar/2021:12:41:27 +0000] "GET /getpending HTTP/1.1" 304 - "-" "okhttp/3.12.1"
Mar 25 07:41:27 myNode lndhub[27570]: 2021-03-25T12:41:27.794Z : info: [/getpending] : ["c974d46b-fb6f-4f39-b7f3-676ea5fcb356","userid: 3892dfb6376847476fea71f4b783eb08fc16963fe8a6929e"]
Mar 25 07:41:27 myNode lndhub[27570]: 2021-03-25T12:41:27.792Z : info: [/getpending] : ["c974d46b-fb6f-4f39-b7f3-676ea5fcb356"]
Mar 25 07:41:27 myNode lndhub[27570]: 48728f02-f848-427b-b1ff-fb67ce8315ef ::ffff:107.115.44.161 - - [25/Mar/2021:12:41:27 +0000] "GET /gettxs?limit=10&offset=0 HTTP/1.1" 304 - "-" "okhttp/3.12.1"
Mar 25 07:41:27 myNode lndhub[27570]: 2021-03-25T12:41:27.675Z : info: [/gettxs] : ["48728f02-f848-427b-b1ff-fb67ce8315ef","userid: 3892dfb6376847476fea71f4b783eb08fc16963fe8a6929e"]
Mar 25 07:41:27 myNode lndhub[27570]: 2021-03-25T12:41:27.674Z : info: [/gettxs] : ["48728f02-f848-427b-b1ff-fb67ce8315ef"]
Mar 25 07:41:27 myNode lndhub[27570]: bf016a0d-90e2-47f4-9350-d7929984cd9d ::ffff:107.115.44.161 - - [25/Mar/2021:12:41:27 +0000] "GET /balance HTTP/1.1" 200 35 "-" "okhttp/3.12.1"
Mar 25 07:41:26 myNode lndhub[27570]: 2021-03-25T12:41:26.715Z : info: [/balance] : ["bf016a0d-90e2-47f4-9350-d7929984cd9d","userid: 3892dfb6376847476fea71f4b783eb08fc16963fe8a6929e"]
Mar 25 07:41:26 myNode lndhub[27570]: 2021-03-25T12:41:26.714Z : info: [/balance] : ["bf016a0d-90e2-47f4-9350-d7929984cd9d"]
Mar 25 07:41:26 myNode lndhub[27570]: 268ebad1-ad3b-4c65-9d1a-d01e9a274eac ::ffff:107.115.44.161 - - [25/Mar/2021:12:41:26 +0000] "POST /auth?type=refresh_token HTTP/1.1" 200 118 "-" "okhttp/3.12.1"
Mar 25 07:41:26 myNode lndhub[27570]: 2021-03-25T12:41:26.521Z : info: [/auth] : ["268ebad1-ad3b-4c65-9d1a-d01e9a274eac"]
Mar 25 07:41:12 myNode lndhub[27570]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 25 07:41:12 myNode lndhub[27570]: details: 'Bandwidth exhausted',
Mar 25 07:41:12 myNode lndhub[27570]: code: 8,
Mar 25 07:41:12 myNode lndhub[27570]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 25 07:41:12 myNode lndhub[27570]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 25 07:41:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Mar 25 07:41:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Mar 25 07:41:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:334:36)
Mar 25 07:41:12 myNode lndhub[27570]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Mar 25 07:41:12 myNode lndhub[27570]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted
Mar 25 07:41:12 myNode lndhub[27570]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 25 07:41:12 myNode lndhub[27570]: details: 'Bandwidth exhausted',
Mar 25 07:41:12 myNode lndhub[27570]: code: 8,
Mar 25 07:41:12 myNode lndhub[27570]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 25 07:41:12 myNode lndhub[27570]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 25 07:41:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Mar 25 07:41:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Mar 25 07:41:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:334:36)
Mar 25 07:41:12 myNode lndhub[27570]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Mar 25 07:41:12 myNode lndhub[27570]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted
Mar 25 07:41:12 myNode lndhub[27570]: updated
Mar 25 07:41:12 myNode lndhub[27570]: updateLightning()
Mar 25 07:40:12 myNode lndhub[27570]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 25 07:40:12 myNode lndhub[27570]: details: 'Bandwidth exhausted',
Mar 25 07:40:12 myNode lndhub[27570]: code: 8,
Mar 25 07:40:12 myNode lndhub[27570]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 25 07:40:12 myNode lndhub[27570]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 25 07:40:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Mar 25 07:40:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Mar 25 07:40:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:334:36)
Mar 25 07:40:12 myNode lndhub[27570]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Mar 25 07:40:12 myNode lndhub[27570]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted
Mar 25 07:40:12 myNode lndhub[27570]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 25 07:40:12 myNode lndhub[27570]: details: 'Bandwidth exhausted',
Mar 25 07:40:12 myNode lndhub[27570]: code: 8,
Mar 25 07:40:12 myNode lndhub[27570]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 25 07:40:12 myNode lndhub[27570]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 25 07:40:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Mar 25 07:40:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Mar 25 07:40:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:334:36)
Mar 25 07:40:12 myNode lndhub[27570]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Mar 25 07:40:12 myNode lndhub[27570]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted
Mar 25 07:40:12 myNode lndhub[27570]: updated
Mar 25 07:40:12 myNode lndhub[27570]: updateLightning()
Mar 25 07:39:13 myNode lndhub[27570]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 25 07:39:13 myNode lndhub[27570]: details: 'Bandwidth exhausted',
Mar 25 07:39:13 myNode lndhub[27570]: code: 8,
Mar 25 07:39:13 myNode lndhub[27570]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 25 07:39:13 myNode lndhub[27570]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 25 07:39:13 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Mar 25 07:39:13 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Mar 25 07:39:13 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:334:36)
Mar 25 07:39:13 myNode lndhub[27570]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Mar 25 07:39:13 myNode lndhub[27570]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted
Mar 25 07:39:12 myNode lndhub[27570]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 25 07:39:12 myNode lndhub[27570]: details: 'Bandwidth exhausted',
Mar 25 07:39:12 myNode lndhub[27570]: code: 8,
Mar 25 07:39:12 myNode lndhub[27570]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 25 07:39:12 myNode lndhub[27570]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 25 07:39:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Mar 25 07:39:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Mar 25 07:39:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:334:36)
Mar 25 07:39:12 myNode lndhub[27570]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Mar 25 07:39:12 myNode lndhub[27570]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted
Mar 25 07:39:12 myNode lndhub[27570]: updated
Mar 25 07:39:12 myNode lndhub[27570]: updateLightning()
Mar 25 07:38:12 myNode lndhub[27570]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 25 07:38:12 myNode lndhub[27570]: details: 'Bandwidth exhausted',
Mar 25 07:38:12 myNode lndhub[27570]: code: 8,
Mar 25 07:38:12 myNode lndhub[27570]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 25 07:38:12 myNode lndhub[27570]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 25 07:38:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Mar 25 07:38:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Mar 25 07:38:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:334:36)
Mar 25 07:38:12 myNode lndhub[27570]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Mar 25 07:38:12 myNode lndhub[27570]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted
Mar 25 07:38:12 myNode lndhub[27570]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 25 07:38:12 myNode lndhub[27570]: details: 'Bandwidth exhausted',
Mar 25 07:38:12 myNode lndhub[27570]: code: 8,
Mar 25 07:38:12 myNode lndhub[27570]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 25 07:38:12 myNode lndhub[27570]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 25 07:38:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Mar 25 07:38:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Mar 25 07:38:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:334:36)
Mar 25 07:38:12 myNode lndhub[27570]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Mar 25 07:38:12 myNode lndhub[27570]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted
Mar 25 07:38:12 myNode lndhub[27570]: updated
Mar 25 07:38:12 myNode lndhub[27570]: updateLightning()
Mar 25 07:37:12 myNode lndhub[27570]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 25 07:37:12 myNode lndhub[27570]: details: 'Bandwidth exhausted',
Mar 25 07:37:12 myNode lndhub[27570]: code: 8,
Mar 25 07:37:12 myNode lndhub[27570]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 25 07:37:12 myNode lndhub[27570]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 25 07:37:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Mar 25 07:37:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Mar 25 07:37:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:334:36)
Mar 25 07:37:12 myNode lndhub[27570]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Mar 25 07:37:12 myNode lndhub[27570]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted
Mar 25 07:37:12 myNode lndhub[27570]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 25 07:37:12 myNode lndhub[27570]: details: 'Bandwidth exhausted',
Mar 25 07:37:12 myNode lndhub[27570]: code: 8,
Mar 25 07:37:12 myNode lndhub[27570]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 25 07:37:12 myNode lndhub[27570]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 25 07:37:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Mar 25 07:37:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Mar 25 07:37:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:334:36)
Mar 25 07:37:12 myNode lndhub[27570]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Mar 25 07:37:12 myNode lndhub[27570]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted
Mar 25 07:37:12 myNode lndhub[27570]: updated
Mar 25 07:37:12 myNode lndhub[27570]: updateLightning()
Mar 25 07:36:13 myNode lndhub[27570]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 25 07:36:13 myNode lndhub[27570]: details: 'Bandwidth exhausted',
Mar 25 07:36:13 myNode lndhub[27570]: code: 8,
Mar 25 07:36:13 myNode lndhub[27570]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 25 07:36:13 myNode lndhub[27570]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 25 07:36:13 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Mar 25 07:36:13 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Mar 25 07:36:13 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:334:36)
Mar 25 07:36:13 myNode lndhub[27570]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Mar 25 07:36:13 myNode lndhub[27570]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted
Mar 25 07:36:13 myNode lndhub[27570]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 25 07:36:13 myNode lndhub[27570]: details: 'Bandwidth exhausted',
Mar 25 07:36:13 myNode lndhub[27570]: code: 8,
Mar 25 07:36:13 myNode lndhub[27570]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 25 07:36:13 myNode lndhub[27570]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 25 07:36:13 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Mar 25 07:36:13 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Mar 25 07:36:13 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:334:36)
Mar 25 07:36:13 myNode lndhub[27570]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Mar 25 07:36:13 myNode lndhub[27570]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted
Mar 25 07:36:12 myNode lndhub[27570]: updated
Mar 25 07:36:12 myNode lndhub[27570]: updateLightning()
Mar 25 07:35:12 myNode lndhub[27570]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 25 07:35:12 myNode lndhub[27570]: details: 'Bandwidth exhausted',
Mar 25 07:35:12 myNode lndhub[27570]: code: 8,
Mar 25 07:35:12 myNode lndhub[27570]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 25 07:35:12 myNode lndhub[27570]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 25 07:35:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Mar 25 07:35:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Mar 25 07:35:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:334:36)
Mar 25 07:35:12 myNode lndhub[27570]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Mar 25 07:35:12 myNode lndhub[27570]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted
Mar 25 07:35:12 myNode lndhub[27570]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Mar 25 07:35:12 myNode lndhub[27570]: details: 'Bandwidth exhausted',
Mar 25 07:35:12 myNode lndhub[27570]: code: 8,
Mar 25 07:35:12 myNode lndhub[27570]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Mar 25 07:35:12 myNode lndhub[27570]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24)
Mar 25 07:35:12 myNode lndhub[27570]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)

@godSaysHODL
Copy link
Author

it just failed again so I have fresh logs

@Overtorment
Copy link
Member

your logs are safe to share, i checked.

this 'Bandwidth exhausted' bothers me. nowhere in lnd+lndhub stack it should be raised. it feels like your lnd is hosted somewhere on googlecloud and it simply exhausted all bandwidth.

@godSaysHODL
Copy link
Author

your logs are safe to share, i checked.

this 'Bandwidth exhausted' bothers me. nowhere in lnd+lndhub stack it should be raised. it feels like your lnd is hosted somewhere on googlecloud and it simply exhausted all bandwidth.

It is weird, but I can assure you I'm hosting on a raspberry pi via myNodeBTC and not a cloud provider

As soon as I attempt to click into the lndhub HTML page after these errors are raised, it refuses to connect, kills lndhub, and restarts automatically. Do you think this is on the myNode side of things?

@Overtorment
Copy link
Member

sorry for the late reply. is the problem still there..?

when it was introduced, in 1.3..? which version did you run before that? maybe I can take a look at the diff and spot some issues

@xraid
Copy link
Contributor

xraid commented Apr 2, 2021

// Some resource has been exhausted, perhaps a per-user quota, or perhaps the
// entire file system is out of space.
'RESOURCE_EXHAUSTED': 8,

what does "df -h" say

maybe the 1 gb channel.db on 32bit systems

@Overtorment
Copy link
Member

btw LND has built-in disk space check, and if there's no space on device it terminates safely.

@xraid
Copy link
Contributor

xraid commented Apr 4, 2021

do lncli addinvoice and lncli payinvoice work ?

@godSaysHODL
Copy link
Author

During this bandwidth exhaustes event no, however going to the lndhub HTML page resets lndhub and it works again without this error about 2 minutes after that restart

@xraid
Copy link
Contributor

xraid commented Apr 5, 2021

free -m

maybe ram memory on your node machine is at peek ?

also what version LND is installed

lncli -v

@godSaysHODL
Copy link
Author

v0.12.1 LND
and ram is at 80.8% according to myNode performance boxes

@xraid
Copy link
Contributor

xraid commented Apr 6, 2021

can You try delete line 2 3 4 in config.js and restart LndHub

// bitcoind: {
// rpc: 'http://login:password@1.1.1.1:8332/wallet/wallet.dat',
// },

@godSaysHODL
Copy link
Author

Not sure how to get to config.js on mynode

Any idea where that would be in the myNode filesystem?

@xraid
Copy link
Contributor

xraid commented Apr 6, 2021

i asked around since i am not familiar with MyNode . and Hamish says :
"There may be exceptions but most apps have a directory under /opt/mynode/. LndHub has a directory, /opt/mynode/LndHub/ which looks like it contains the install.
"
so in /opt/mynode/LndHub/config.js comment out line 2 3 4 as shown above

then start LndHub and report back

@xraid
Copy link
Contributor

xraid commented Apr 7, 2021

You can also try this command and then start LndHub . this command besides comment out the bitcoin directive also creates a config.js.bak file with original content

at terminal commandline in MyNode :

// first read the file into terminal to se contents

cat /opt/mynode/LndHub/config.js

// then issue

sed -i'.bak' -e '/bitcoind/,/}/ s/^/\/\/ /' /opt/mynode/LndHub/config.js

// verify changes read the file into terminal to se contents again

cat /opt/mynode/LndHub/config.js

and now also there is a original file in /opt/mynode/LndHub/config.js.bak

start LndHub

@godSaysHODL
Copy link
Author

I haven't tried that stuff, but today I did add two more gigs of virtual ram from the external drive. Will see if this makes a difference. At almost 80% ram before, now it's hovering around 60

@Overtorment
Copy link
Member

hmm. configuring swap might help too.

@godSaysHODL
Copy link
Author

Swap configured to max, still failing. Not sure why

@godSaysHODL
Copy link
Author

godSaysHODL commented Apr 14, 2021

Has anyone else had this problem yet (mynode users)

@Overtorment
Copy link
Member

can you ask mynode support?
this is big wtf: RESOURCE_EXHAUSTED: Bandwidth exhausted

@tehelsper
Copy link

More users seem to be seeing this issue with the 1.3.3 upgrade. Any ideas? The underlying Lightning daemon seems to be fine and users report they can properly send and receive funds via other wallets.

@dm8try
Copy link

dm8try commented May 12, 2021

Has anyone else had this problem yet (mynode users)

I'm having this problem, too. Blue Wallet fails to connect to MyNode, there are many error messages ("lnd failure ... bandwidth exhausted") in the LND hub log file.

No idea when it started, I've been having this issue since I first started playing with the lightning node on MyNode, around couple of weeks ago.

@godSaysHODL
Copy link
Author

You can fix it temporarily by going to the http://mynode.local:3000

This will reboot it in about 1-2 minutes

@godSaysHODL
Copy link
Author

This got worse in latest version. .31
Can't figure out how to restart it now

@tehelsper
Copy link

I've downgraded to LndHub version 1.2.0 and 1.3.0 and both of those versions seems to be working far better. After restarting LndHub with the new version, the updates immediately start to succeed.

Example:
May 12 23:44:36 myNode lndhub[7924]: updateLightning()
May 12 23:44:36 myNode lndhub[7924]: updated
May 12 23:45:36 myNode lndhub[7924]: updateLightning()
May 12 23:45:36 myNode lndhub[7924]: updated
May 12 23:46:36 myNode lndhub[7924]: updateLightning()
May 12 23:46:36 myNode lndhub[7924]: updated

How risky would it be to downgrade LndHub to version 1.3.0 for myNode users? I noticed the database schema doc had been updated, but I'm not very familiar with how compatible downgrades may be.

@godSaysHODL
Copy link
Author

I'm gonna ask them to pop in here. Can you try a test wallet with 1-2 transactions upgrading and then downgrading

@godSaysHODL
Copy link
Author

I wonder if the database would be deleted or just incompatible 🤔

@tehelsper
Copy link

I just noticed this issue was logged against v1.3.0 - it may still have issues, but in my test environment, it immediately improved the situation compared to v1.3.3.

I would guess it's just incompatible, but I'm not sure what the side-effects may be.

@xraid
Copy link
Contributor

xraid commented Jun 4, 2021

COMMENT OUT THE LINES no. 5 6 7 :

in LndHub/config.js = // bitcoin 3 lines

restart

DONE

just works ™

told You so already on the on 2 Apr . YOU godSaysHODL are SLOW, very SLOW ...

@tehelsper
Copy link

Next myNode release will have the bitcoind section commented out. I tested locally and it seemed to work well and another user that was having issues saw improvements as well.

Are there downsides to not including the bitcoind section? If not, why is it still there?

@godSaysHODL
Copy link
Author

Screenshot_20210512-221018

Got a response that may help in this screenshot^
I will try this. Can I edit config file easily from myNode SSH terminal?

Still getting failures after these lines have been commented out and restarted

@Overtorment
Copy link
Member

Next myNode release will have the bitcoind section commented out. I tested locally and it seemed to work well and another user that was having issues saw improvements as well.

Are there downsides to not including the bitcoind section? If not, why is it still there?

for heavy usage (like our production lndhub) bitcoind is used to track balances, instead of lnd's internal wallet

@blankscreengithub
Copy link

LndHub is still crashing everyday with this error even on version 1.3.5. See my logs below for LndHub and lnd.

This issue has also shown up here and someone fixed it switching from grpc-js to grpc:
[https://github.com/grpc/grpc-node/issues/1158]

The hardware:
Raspberry Pi 4

Current software versions:
myNode 0.2.37
LND Hub v1.3.5
LND Version v0.13.0

LndHug log:

Jul 05 23:26:15 myNode lndhub[2128]: metadata: Metadata { internalRepr: Map {}, options: {} } }
Jul 05 23:26:15 myNode lndhub[2128]: details: 'Bandwidth exhausted',
Jul 05 23:26:15 myNode lndhub[2128]: code: 8,
Jul 05 23:26:15 myNode lndhub[2128]: at processTicksAndRejections (internal/process/task_queues.js:79:9)
Jul 05 23:26:15 myNode lndhub[2128]: at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:276:24)
Jul 05 23:26:15 myNode lndhub[2128]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Jul 05 23:26:15 myNode lndhub[2128]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Jul 05 23:26:15 myNode lndhub[2128]: at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:338:36)
Jul 05 23:26:15 myNode lndhub[2128]: at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Jul 05 23:26:15 myNode lndhub[2128]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted

lnd log

Jul 05 23:37:27 myNode lnd[3668]: 2021-07-05 23:37:27.109 [INF] WTCL: (legacy) Queued backup(7200d76e53a484bae217c54fe456a9dba053f3f6d6f96a74ed89bbb2af320e08, 246) successfully for session 02dd19bd3456555c99abea18c8ad4ac8a21942cc691334ecb6a79d61660fdbc541
Jul 05 23:37:26 myNode lnd[3668]: 2021-07-05 23:37:26.155 [ERR] HSWC: Unhandled error while reforwarding htlc settle/fail over htlcswitch: insufficient bandwidth to route htlc
Jul 05 23:37:26 myNode lnd[3668]: 2021-07-05 23:37:26.154 [ERR] HSWC: insufficient bandwidth to route htlc
Jul 05 23:37:26 myNode lnd[3668]: 2021-07-05 23:37:26.111 [INF] WTCL: (legacy) Queued backup(7200d76e53a484bae217c54fe456a9dba053f3f6d6f96a74ed89bbb2af320e08, 245) successfully for session 02dd19bd3456555c99abea18c8ad4ac8a21942cc691334ecb6a79d61660fdbc541
Jul 05 23:37:09 myNode lnd[3668]: 2021-07-05 23:37:09.774 [INF] WTCL: (anchor) Client stats: tasks(received=0 accepted=0 ineligible=0) sessions(acquired=0 exhausted=0)
Jul 05 23:37:09 myNode lnd[3668]: 2021-07-05 23:37:09.749 [INF] WTCL: (legacy) Client stats: tasks(received=0 accepted=188 ineligible=0) sessions(acquired=0 exhausted=0)

@Overtorment
Copy link
Member

@blankscreengithub even lnd is complaining about "bandwidth"
Jul 05 23:37:26 myNode lnd[3668]: 2021-07-05 23:37:26.154 [ERR] HSWC: insufficient bandwidth to route htlc

it really sounds like a problem on myNode's side

@Overtorment
Copy link
Member

is it possible to rollback myNode version but keep Lndhub updated and see if the problem persists?

@Overtorment
Copy link
Member

ok quick googling showed that this might be because lnd cant route a payment because there is not enough balance on some channels.
its a good question why is it even trying to route if there is not enough balance.

what we could do is add termination upon this error so lndhub restarts automatically:

diff --git a/controllers/website.js b/controllers/website.js
index 7785937..7bd7804 100644
--- a/controllers/website.js
+++ b/controllers/website.js
@@ -14,6 +14,7 @@ function updateLightning() {
     lightning.getInfo({}, function (err, info) {
       if (err) {
         console.error('lnd failure:', err);
+        process.exit(4);
         return;
       }
       lightningGetInfo = info;
@@ -22,6 +23,7 @@ function updateLightning() {
     lightning.listChannels({}, function (err, response) {
       if (err) {
         console.error('lnd failure:', err);
+        process.exit(4);
         return;
       }
       console.log('updated');
@@ -98,7 +100,8 @@ router.get('/qr', function (req, res) {
   if (process.env.TOR_URL) {
     host = process.env.TOR_URL;
   }

@xraid
Copy link
Contributor

xraid commented Jul 9, 2021

also maybe add babel build && run node build/index can help with exhausted errs ?

since "node_modules/.bin/babel-node" as invocator is recommended against in prod

https://babeljs.io/docs/en/babel-node
"You should not be using babel-node in production. It is unnecessarily heavy, with high memory usage due to the cache being stored in memory. You will also always experience a startup performance penalty as the entire app needs to be compiled on the fly."

@blankscreengithub
Copy link

I'll try the auto-restart idea.

I updated my website.js and added the 2 lines:

process.exit(4);

and commented out the line:

97 let host = req.headers.host;

I should know by tomorrow morning if my LndHub is running or not since it runs for almost 24 hours and then I would get the bandwidth error.

@blankscreengithub
Copy link

It looks like the auto-restart did its job. LndHub ran for about 20-21 hours and then hit the bandwidth exhausted error. LndHub restarted and was up and running within 2 minutes of the error. As a user, the restart didn't affect me at all.

Also, is there a particular reason the updateLightning() runs every minute? I only have a handful of users, so would there be any issues if I extend that longer (e.g. 5, 10, 15 minutes)? Could this be causing the bandwidth error?

Here is the log from the error which initiated the restart:

Jul 10 07:37:51 myNode lndhub[10925]: updateLightning()
Jul 10 07:37:51 myNode lndhub[10925]: updated
Jul 10 07:38:51 myNode lndhub[10925]: updateLightning()
Jul 10 07:38:51 myNode lndhub[10925]: updated
Jul 10 07:39:51 myNode lndhub[10925]: updateLightning()
Jul 10 07:38:51 myNode lndhub[10925]: updated
Jul 10 07:39:51 myNode lndhub[10925]: updateLightning()
Jul 10 07:39:51 myNode lndhub[10925]: lnd failure: { Error: 8 RESOURCE_EXHAUSTED: Bandwidth exhausted
Jul 10 07:39:51 myNode lndhub[10925]:     at Object.callErrorFromStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call.ts:81:24)
Jul 10 07:39:51 myNode lndhub[10925]:     at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client.ts:338:36)
Jul 10 07:39:51 myNode lndhub[10925]:     at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34)
Jul 10 07:39:51 myNode lndhub[10925]:     at Object.onReceiveStatus (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
Jul 10 07:39:51 myNode lndhub[10925]:     at process.nextTick (/opt/mynode/LndHub/node_modules/@grpc/grpc-js/src/call-stream.ts:276:24)
Jul 10 07:39:51 myNode lndhub[10925]:     at processTicksAndRejections (internal/process/task_queues.js:79:9)
Jul 10 07:39:51 myNode lndhub[10925]:   code: 8,
Jul 10 07:39:51 myNode lndhub[10925]:   details: 'Bandwidth exhausted',
Jul 10 07:39:51 myNode lndhub[10925]:   metadata: Metadata { internalRepr: Map {}, options: {} } }
Jul 10 07:39:51 myNode lndhub[10925]: npm ERR! code ELIFECYCLE
Jul 10 07:39:51 myNode lndhub[10925]: npm ERR! errno 4
Jul 10 07:39:51 myNode lndhub[10925]: npm ERR! lndhub@1.3.5 start: `babel-node index.js`
Jul 10 07:39:51 myNode lndhub[10925]: npm ERR! Exit status 4
Jul 10 07:39:51 myNode lndhub[10925]: npm ERR!
Jul 10 07:39:51 myNode lndhub[10925]: npm ERR! Failed at the lndhub@1.3.5 start script.
Jul 10 07:39:51 myNode lndhub[10925]: npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
Jul 10 07:39:52 myNode lndhub[10925]: npm ERR! A complete log of this run can be found in:
Jul 10 07:39:52 myNode lndhub[10925]: npm ERR!     /home/bitcoin/.npm/_logs/2021-07-10T12_39_51_998Z-debug.log
Jul 10 07:40:52 myNode lndhub[29791]: Checking if device is shutting down...
Jul 10 07:40:52 myNode lndhub[29791]: Not shutting down!
Jul 10 07:40:52 myNode lndhub[29808]: Checking if LND is synced...
Jul 10 07:40:53 myNode lndhub[29808]:     "synced_to_chain": true,
Jul 10 07:40:54 myNode lndhub[29834]: > lndhub@1.3.5 start /opt/mynode/LndHub
Jul 10 07:40:54 myNode lndhub[29834]: > babel-node index.js
Jul 10 07:40:59 myNode lndhub[29834]: using config {"enableUpdateDescribeGraph":false,"postRateLimit":100,"rateLimit":200,"redis":{"port":6379,"host":"127.0.0.1","family":4,"password":"","db":0},"lnd":{"url":"$
Jul 10 07:41:00 myNode lndhub[29834]: updateLightning()
Jul 10 07:41:00 myNode lndhub[29834]: 2021-07-10T12:41:00.898Z : info: [BOOTING UP] : "Listening on port 3000"
Jul 10 07:41:00 myNode lndhub[29834]: (node:29861) Warning: Setting the NODE_TLS_REJECT_UNAUTHORIZED environment variable to '0' makes TLS connections and HTTPS requests insecure by disabling certificate verif$
Jul 10 07:41:01 myNode lndhub[29834]: updated

@Overtorment
Copy link
Member

its unclear why this bandwidth error is thrown. feels like lnd's issue, that's for some reason fucks up whole communication between lnd & lndhub.
updateLightning() only refreshes basic stuff, like node's getInfo & listChannels, it should not affect our app, in theory.
in practice, you could make it run less frequently, as a penalty the main webpage with fancy channels list would refresh less frequently

@Overtorment
Copy link
Member

also maybe add babel build && run node build/index can help with exhausted errs ?

since "node_modules/.bin/babel-node" as invocator is recommended against in prod

https://babeljs.io/docs/en/babel-node
"You should not be using babel-node in production. It is unnecessarily heavy, with high memory usage due to the cache being stored in memory. You will also always experience a startup performance penalty as the entire app needs to be compiled on the fly."

good idea

@lndhub-admin
Copy link
Contributor

lndhub-admin commented Jul 10, 2021

mkdir build
babel ./ --out-dir ./build --copy-files --ignore node_modules
node build/index.js

@lndhub-admin
Copy link
Contributor

lndhub-admin commented Jul 10, 2021

it could be raspian OS ? compiler stack for node has some unset flag introducing skipped garbage collection or some such ? and thats why we do not se it in other environments . is a guess ...

we will know more if somebody with myNode could try ...

the above mkdir etc.

@blankscreengithub
Copy link

I might be able to try it. Under what directory do I run these commands?

mkdir build
babel ./ --out-dir ./build --copy-files --ignore node_modules
node build/index.js

@lndhub-admin
Copy link
Contributor

in /LndHub folder

commands will create a build folder, then babel builds source into that folder, and node build/index.js runs the build with node and not with babel-node that have xtra cashes and debugs ? ++

@blankscreengithub
Copy link

I received an error on running babel command:

admin@myNode:/opt/mynode/LndHub $ ls
admin.macaroon  btc-decoder.js  class      controllers  Dockerfile  LICENSE       logs          package.json       README.md  run-process-locked.sh  static     tls.cert
bitcoin.js      build           config.js  doc          index.js    lightning.js  node_modules  package-lock.json  rpc.proto  scripts                templates  utils
admin@myNode:/opt/mynode/LndHub $ babel ./ --out-dir ./build --copy-files --ignore node_modules
Error: Requires Babel "^7.0.0-0", but was loaded with "6.26.3". If you are sure you have a compatible version of @babel/core, it is likely that something in your build process is loading the wrong version. Inspect the stack trace of this error to look for the first entry that doesn't mention "@babel/core" or "babel-core" to see what is calling Babel. (While processing preset: "/opt/mynode/LndHub/node_modules/@babel/preset-env/lib/index.js")
    at throwVersionError (/opt/mynode/LndHub/node_modules/@babel/helper-plugin-utils/lib/index.js:78:11)
    at Object.range [as assertVersion] (/opt/mynode/LndHub/node_modules/@babel/helper-plugin-utils/lib/index.js:28:5)
    at _default (/opt/mynode/LndHub/node_modules/@babel/preset-env/lib/index.js:250:7)
    at /opt/mynode/LndHub/node_modules/@babel/helper-plugin-utils/lib/index.js:22:12
    at /usr/lib/node_modules/babel-cli/node_modules/babel-core/lib/transformation/file/options/option-manager.js:317:46
    at Array.map (<anonymous>)
    at OptionManager.resolvePresets (/usr/lib/node_modules/babel-cli/node_modules/babel-core/lib/transformation/file/options/option-manager.js:275:20)
    at OptionManager.mergePresets (/usr/lib/node_modules/babel-cli/node_modules/babel-core/lib/transformation/file/options/option-manager.js:264:10)
    at OptionManager.mergeOptions (/usr/lib/node_modules/babel-cli/node_modules/babel-core/lib/transformation/file/options/option-manager.js:249:14)
    at OptionManager.init (/usr/lib/node_modules/babel-cli/node_modules/babel-core/lib/transformation/file/options/option-manager.js:368:12)
    at File.initOptions (/usr/lib/node_modules/babel-cli/node_modules/babel-core/lib/transformation/file/index.js:212:65)
    at new File (/usr/lib/node_modules/babel-cli/node_modules/babel-core/lib/transformation/file/index.js:135:24)
    at Pipeline.transform (/usr/lib/node_modules/babel-cli/node_modules/babel-core/lib/transformation/pipeline.js:46:16)
    at transform (/usr/lib/node_modules/babel-cli/lib/babel/util.js:50:22)
    at Object.compile (/usr/lib/node_modules/babel-cli/lib/babel/util.js:59:12)
    at write (/usr/lib/node_modules/babel-cli/lib/babel/dir.js:21:21)
    at handleFile (/usr/lib/node_modules/babel-cli/lib/babel/dir.js:43:7)
    at /usr/lib/node_modules/babel-cli/lib/babel/dir.js:61:9
    at Array.forEach (<anonymous>)
    at handle (/usr/lib/node_modules/babel-cli/lib/babel/dir.js:59:29)
    at Array.forEach (<anonymous>)
    at module.exports (/usr/lib/node_modules/babel-cli/lib/babel/dir.js:69:15)
    at Object.<anonymous> (/usr/lib/node_modules/babel-cli/lib/babel/index.js:129:1)
    at Module._compile (internal/modules/cjs/loader.js:816:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:827:10)

@lndhub-admin
Copy link
Contributor

lndhub-admin commented Jul 11, 2021

try do a

cat /opt/mynode/LndHub/package.json | grep version

to se what version of LndHub You have installed

@lndhub-admin
Copy link
Contributor

lndhub-admin commented Jul 11, 2021

i got errs as well when tried and then pointed at babel explicit since we do not want to use global version that might be installed

node_modules/.bin/babel ./ --out-dir ./build --copy-files --ignore node_modules

if that do not work try

npm uninstall babel
npm install --save-dev babel-cli

and do the

node_modules/.bin/babel ./ --out-dir ./build --copy-files --ignore node_modules

@blankscreengithub
Copy link

try do a

cat /opt/mynode/LndHub/package.json | grep version

to se what version of LndHub You have installed

"version": "1.3.5",

@lndhub-admin
Copy link
Contributor

mkdir build
node_modules/.bin/babel ./ --out-dir ./build --copy-files --ignore node_modules
node build/index.js

should work ? i myself do not have a myNode environment to test on

@blankscreengithub
Copy link

its unclear why this bandwidth error is thrown. feels like lnd's issue, that's for some reason fucks up whole communication between lnd & lndhub.
updateLightning() only refreshes basic stuff, like node's getInfo & listChannels, it should not affect our app, in theory.
in practice, you could make it run less frequently, as a penalty the main webpage with fancy channels list would refresh less frequently

I changed the updateLightning() interval to every 100 minutes and I never received the bandwith error in running 1.5 days where before I would get the bandwidth error at around 21 hours after restart.

I did have issues when I tried the "refill" option with a couple of wallets where the balance wouldn't show up in the wallet, but I don't know if that was tied to the update interval.

I changed my interval back to 1 minute since the auto restart is keeping LndHub running.

When I get a chance over the next couple of days, I'll try the mkdir build steps noted above.

@tehelsper
Copy link

Interesting. myNode also polls LND for data, but I haven't noticed dropped requests. I imagine it could see the same issue, but it just does the equivalent of an LNDHub restart when it fails by creating a completely new connection for each request. Is LNDHub using a single connection for all requests?

@blankscreengithub If you change it to 2 or 5 minutes, does that seem to help as well?

I like the restart idea or the more efficient way of launching compiling / launching.

@lndhub-admin I was able to compile and run lndhub via your instructions. However, I can't compile it ahead of time (ie pre-wallet create and setup) which would be a bit of a pain. I got this error:

bitcoin@myNode:/opt/mynode/LndHub $ node_modules/.bin/babel ./ --out-dir ./build --copy-files --ignore node_modules
{ Error: ENOENT: no such file or directory, stat 'admin.macaroon'
    at Object.statSync (fs.js:871:3)
    at _fsReaddirRecursive (/opt/mynode/LndHub/node_modules/@babel/cli/lib/babel/util.js:78:24)
    at /opt/mynode/LndHub/node_modules/fs-readdir-recursive/index.js:16:14
    at Array.filter (<anonymous>)
    at read (/opt/mynode/LndHub/node_modules/fs-readdir-recursive/index.js:15:6)
    at Object.readdir (/opt/mynode/LndHub/node_modules/@babel/cli/lib/babel/util.js:77:31)
    at /opt/mynode/LndHub/node_modules/@babel/cli/lib/babel/dir.js:160:30
    at Generator.next (<anonymous>)
    at asyncGeneratorStep (/opt/mynode/LndHub/node_modules/@babel/cli/lib/babel/dir.js:40:103)
    at _next (/opt/mynode/LndHub/node_modules/@babel/cli/lib/babel/dir.js:42:194)
  errno: -2,
  syscall: 'stat',
  code: 'ENOENT',
  path: 'admin.macaroon' }
bitcoin@myNode:/opt/mynode/LndHub $

@lndhub-admin
Copy link
Contributor

i think You need to have admin.macaroon and tls.cert already inside the LndHub folder and also have set Your config.js . then it should build as expected . and run more efficent ...

@lndhub-admin
Copy link
Contributor

I will soon™ try put together a repo where some changes are made in regards to run as a smaller operator, as LndHub now is made for Bluewallet's deploy environment and not for running in an standalone environment.

also then do the build and run with node while keeping running with babel-node for development.

@lndhub-admin
Copy link
Contributor

"Is LNDHub using a single connection for all requests?"

LndHub uses gRPC (remote procedure call) for communication with LND and a call is created when LndHub API is called from a HTTP/S connected device.

@Overtorment
Copy link
Member

@tehelsper @lndhub-admin yes, grpc is employed is employed, as far as I can tell its a single tcp connection that's established only once

@tehelsper
Copy link

@Overtorment That's what I was guessing. While it's definitely not the root cause, that is interesting. I poll at the same rate within myNode, but it uses the REST API and I've not ever LND complain about bandwidth issues.

Unfortunately, I don't have a pattern yet for app install post-wallet creation, but I could look more into it if necessary. I'm also on a relatively old version of node, but that hasn't had any major impacts yet.

Would it be possible to make the poll rate configurable and/or an option to exit or restart after gRPC failures?

Also, the one time I was seeing this issue and reproducing it, a restart of LndHub did not seem to resolve the issue. I was tweaking LND timeout values to see if it helped by restarting LND + LndHub, but the issue was returning. None of my nodes see the issue now though, which makes me think it is related to the current state of LND.

@blankscreengithub
Copy link

As an end user of LndHub with other people using my LndHub, the restart option is working for me. It only takes 1 minute and 8 seconds from the crash to be up and running again. If someone does happen to try to do something within that window, by the time they try again, everything will be fine.

It's not the best solution, but it is working.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants