Long story short, Celluloid versions 0.17+ have a memory leak.
The Reason behind this is that completed Celluloid threads are never cleaned up.
We have discovered that our Sidekiq process is leaking memory when we have a lot of tasks that were failed because of exceptions. Unfortunately, having a lot of failed tasks is specific for our application — we do have a lot of small queued jobs to work with social network APIs and other external services.
You can reproduce the problem with this: https://gist.github.com/gazay/3aa78e515ab05cb79f76