diff --git a/store/watcher_hub.go b/store/watcher_hub.go index d573eb331..25a701c2c 100644 --- a/store/watcher_hub.go +++ b/store/watcher_hub.go @@ -78,8 +78,9 @@ func (wh *watcherHub) watch(key string, recursive, stream bool, index, storeInde defer wh.mutex.Unlock() // If the event exists in the known history, append the EtcdIndex and return immediately if event != nil { - event.EtcdIndex = storeIndex - w.eventChan <- event + ne := event.Clone() + ne.EtcdIndex = storeIndex + w.eventChan <- ne return w, nil }