tr.set(redisKey, "Y");
tr.expire(redisKey, exp); //expire after exp seconds
// since we have called watch, tr.exec will return null in the case that someone else has modified
// the redisKey since we started our transaction. If it doesn't return null, the value hasn't changed out from
// under us, so we return true since we set it
List<Object> resp = tr.exec();
return resp != null;
} catch (JedisException e) {
brokenJedis = true;
throw e;
} finally {