The way Memcached is designed, it is easy to make it "leak" memory. While I don't think it is a bug or a real leak, I still think more people should understand this weird phenomena.
In simple words, if your Memcached server has many open connections to it and if you've a function which makes multi get requests with large number of keys (large is few million), you might see a slow leak in memory (depending on how often connection used by this function gets reset). That happens because Memcached server needs to allocate enough memory to a buffer to store whole of request and response.
One simple work around is to ensure that your interface to client breaks down large multi-get in smaller batches (say of size 50K).