coreos/etcd — pull request #573 by cenkalti (2014-02-15 00:24:29+00:00)
Title: Store: Fix slow consumer bug

`Store` panics without this fix. I have added the test first. You can see it yourself.

To fix the bug, I remove `watcher` when `EventChan` buffer fills up instead of just closing the channel. To be able to do this I needed to move locking from `remove()` to `Remove()`.