always take the fast path for timeouts, don't wait for the watcher