Debugging "Connection dropped" error

2,595 views
Skip to first unread message

octavio roscioli

unread,
May 12, 2021, 11:44:10 AM5/12/21
to grpc.io
Hi,

I am running a python server and node client using GRPC.

On my Node end I am getting an error

Error: 14 UNAVAILABLE: Connection dropped at Object.callErrorFromStatus (/home/node/app/node_modules/@grpc/grpc-js/src/call.ts:81:24) at Object.onReceiveStatus (/home/node/app/node_modules/@grpc/grpc-js/src/client.ts:334:36) at Object.onReceiveStatus (/home/node/app/node_modules/@grpc/grpc-js/src/client-interceptors.ts:426:34) at Object.onReceiveStatus (/home/node/app/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48) at /home/node/app/node_modules/@grpc/grpc-js/src/call-stream.ts:276:24 at processTicksAndRejections (internal/process/task_queues.js:79:11)

How can I figure out what is dropping the connection? Is it client or server side that is dropping the connection?

I see the source of this error message here. But not sure what in fact is triggering it?

My node client is @grpc/grp...@1.3.0.

Regards,
- Octavio

octavio roscioli

unread,
May 12, 2021, 12:20:08 PM5/12/21
to grpc.io
These are my GRPC logs:

2021-05-07T17:53:28.248Z | channel | dns:abc.mywebsite.com:443 createCall [2010] method="/Abc/RunStep", deadline=1620410308247
2021-05-07T17:53:28.248Z | call_stream | [2010] Sending metadata
2021-05-07T17:53:28.248Z | call_stream | [2010] write() called with message of length 336
2021-05-07T17:53:28.248Z | call_stream | [2010] end() called
2021-05-07T17:53:28.248Z | call_stream | [2010] attachHttp2Stream from subchannel 192.168.79.249:443
2021-05-07T17:53:28.248Z | call_stream | [2010] sending data chunk of length 341
2021-05-07T17:53:28.248Z | call_stream | [2010] calling end() on HTTP/2 stream
2021-05-07T17:53:31.444Z | call_stream | [2010] ended with status: code=14 details="Connection dropped"
2021-05-07T17:53:31.444Z | call_stream | [2010] close http2 stream with code 8
2021-05-07T17:53:31.481Z | call_stream | [2010] HTTP/2 stream closed with code 8


Mahendra Bagul

unread,
May 15, 2021, 4:30:54 AM5/15/21
to grpc.io
I think your server is running with certificates and client is not supplying the cert chain of server.

From node client, you may need to do like below.


let credentials = grpc.credentials.createSsl(
fs.readFileSync(
'cert-chain-path'),
);

grpcClient = new YourService(`IP:PORT`, credentials);

octavio roscioli

unread,
May 17, 2021, 11:02:36 AM5/17/21
to Mahendra Bagul, grpc.io
Mahendra, thank you for your suggestion. Unfortunately I am already doing what you are suggesting :/

One thing I did neglect to mention is that the majority of GRPC calls go through! This error, however, occurs sporadically and during higher loads. It occurs once per every ~1000 calls.

--
You received this message because you are subscribed to a topic in the Google Groups "grpc.io" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/grpc-io/xTJ8pUe9F_E/unsubscribe.
To unsubscribe from this group and all its topics, send an email to grpc-io+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/ecd22198-5250-4c6b-ada9-c4ff8d951074n%40googlegroups.com.

Sajjad Bashardanesh

unread,
Nov 8, 2021, 12:42:49 PM11/8/21
to grpc.io
I'm having the same issue getting `Error: 14 UNAVAILABLE: Connection dropped`, `14 UNAVAILABLE: No connection established`, `Error: 14 UNAVAILABLE: No connection established` using grpc-js.

Rohit Bohara

unread,
Apr 25, 2022, 9:51:53 AM4/25/22
to grpc.io
Hi Octavio, I also face the same problem. Were you able to solve the problem ?

Leslie Wong

unread,
Sep 7, 2022, 8:54:08 PM9/7/22
to grpc.io
The same scenario happened for my use case using milvus-sdk-node, which wraps GRPC to establish a connection. GRPC node client seems not capable of handling high loads sometimes. 
Reply all
Reply to author
Forward
0 new messages