majek / puka

Puka - the opinionated RabbitMQ client
https://github.com/majek/puka
Other
182 stars 34 forks source link

Serious memory leak - if same channel used to consume & publish #55

Closed kjlockhart closed 10 years ago

kjlockhart commented 10 years ago

An application reading from one queue, filtering the messages, and publishing to a second queue - is experiencing an approx 1K memory leak per message published. Functionally the app works, but upon deploy to production (with a typical 800 msg/sec load) the memory leak was discovered when the Ubuntu (12.04) server quickly exhausted all virtual memory,

Subsequently I've learned separate channels should not be used. [Is this correct?] If so why is it not prevented?

Changing the app to open two connections to the rabbitmq-server (channel 1 - to consume from queue A; and channel 2 - to publish to queue B) reveals another issue - "publishing to a 2nd channel does not work'.

majek commented 10 years ago

The whole point of Puka is to abstract away channels. Puka does not expose channels abstractions.

If you believe there is a memory leak please submit a test case.

What is exhausting the memory? rabbit or puka? Are you ack-ing messages?

The best forum for this discussions is rabbitmq-discuss mailing list.

kjlockhart commented 10 years ago

I’ve posted more details & the application to rabbitmq-users (nee rabbitmq-discuss). It appears that puka is causing the memory leak. Problems only started when publishing was added to the application. As a simple consumer all worked well.

https://groups.google.com/forum/#!topic/rabbitmq-users/QBDw3Jfotdo

From: Marek [mailto:notifications@github.com] Sent: Monday, September 01, 2014 7:30 AM To: majek/puka Cc: Ken Lockhart Subject: Re: [puka] Serious memory leak - if same channel used to consume & publish (#55)

The whole point of Puka is to abstract away channels. Puka does not expose channels abstractions.

If you believe there is a memory leak please submit a test case.

What is exhausting the memory? rabbit or puka? Are you ack-ing messages?

The best forum for this discussions is rabbitmq-discuss mailing list.

— Reply to this email directly or view it on GitHubhttps://github.com/majek/puka/issues/55#issuecomment-54065956.