In certain cases this could cause Watcher to prevent from being started (either automatically or manually):
* The watch of the triggered watch doesn't exist
* The execution service rejected the execution the watch. (due to not enough threads in the thread pool)
If a watch record gets overwritten this means it has been executed before when watcher was running, but we were unable to delete the triggered watch. So we executed the a watch twice with the same trigger event. This can happen if watcher was stopped before because of the node running Watcher unexpectedly stopped (master left, power loss etc.)
In stead of failing to write the watch record, we overwrite it set the state 'executed_multiple_times'.
Closeselastic/elasticsearch#695
Original commit: elastic/x-pack-elasticsearch@20f805cb99