Epipe Error

381 views
Skip to first unread message

justinz...@gmail.com

unread,
Aug 16, 2018, 8:48:05 AM8/16/18
to rabbitmq-users
Hi,

I am getting EPIPE error in the receiver app.

But the sender is able to send message to the same queue.

Here's the error in receiver app.

{ Error: write EPIPE
at exports._errnoException (util.js:1018:11)
 at WriteWrap.afterWrite (net.js:804:14)
code: 'EPIPE',
 errno: 'EPIPE',
syscall: 'write',
stackframes:
 [ { file_name: 'util.js', line_number: 1018 },
      { file_name: 'net.js', line_number: 804 } ] }


And after few minutes this error occurs.

Error: Heartbeat timeout
 at Heart.<anonymous> (/home/user/node_modules/amqplib/lib/connection.js:425:19)
   at emitNone (events.js:86:13)
  at Heart.emit (events.js:185:7)
  at Heart.runHeartbeat (/home/user/node_modules/amqplib/lib/heartbeat.js:88:17)
    at ontimeout (timers.js:380:14)
   at tryOnTimeout (timers.js:244:5)
   at Timer.listOnTimeout (timers.js:214:5)


What can be the reason for this?

Thanks in advance.

Luke Bakken

unread,
Aug 16, 2018, 9:35:52 AM8/16/18
to rabbitmq-users
Hi Justin,

A good place to start is to look in the RabbitMQ logs for messages corresponding to about the same time as the EPIPE error. Do you see anything there?

Thanks,
Luke

Michael Klishin

unread,
Aug 16, 2018, 2:31:51 PM8/16/18
to rabbitm...@googlegroups.com
Heartbeats are documented in [1]. It could be that something in your client
blocks the event loop and thus no heartbeats can be sent out.

How this is managed largely depends on the client library/programming language and their approaches to concurrency.


--
You received this message because you are subscribed to the Google Groups "rabbitmq-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rabbitmq-users+unsubscribe@googlegroups.com.
To post to this group, send email to rabbitmq-users@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
MK

Staff Software Engineer, Pivotal/RabbitMQ

justinz...@gmail.com

unread,
Aug 17, 2018, 9:06:56 AM8/17/18
to rabbitmq-users
Hi,

Thank you Luke and Michael for your response.

The heartbeat error occurs after the EPIPE error.

So I guess the reason for the missed heartbeat is the EPIPE error.

But I am not able to find out why the EPIPE error is occurring.

Also there is nothing in the log file accept for the heartbeat error:
closing AMQP connection <0.23417.6> (127.0.0.1:XXXXX -> 127.0.0.1:XXXX):
Missed heartbeats from client, timeout: 60s

Michael Klishin

unread,
Aug 17, 2018, 9:33:04 AM8/17/18
to rabbitm...@googlegroups.com
EPIPE is one of the I/O exceptions that mean that connection was interrupted.

The heartbeat mechanism then simply detects that, they are not directly related per se.

If you have a way to reliably reproduce this, take a traffic capture [1] and see what's going on at the TCP level.


--
You received this message because you are subscribed to the Google Groups "rabbitmq-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rabbitmq-users+unsubscribe@googlegroups.com.
To post to this group, send email to rabbitmq-users@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages