@Override public boolean run(ClientContext context) { try { ((SendableInsert) request).onSuccess(token, key, context); } finally { sched.removeRunningInsert((SendableInsert)(request), token.getKey()); } // Something might be waiting for a request to complete (e.g. if we have two requests for the same key), // so wake the starter thread. sched.wakeStarter(); return false; }