@Override public Boolean call() throws Exception { WriteSet writeSet = WriteSet.getLocal(); ReadSet readSet = ReadSet.getLocal(); if (!writeSet.tryLock(TIMEOUT, TimeUnit.MILLISECONDS)) { LOGGER.info("writeSet try lock returned false"); return false; } for (LockObject<?> x : readSet.getList()) { if (x.lock.isLocked() && !x.lock.isHeldByCurrentThread()) { /* try { LOGGER.info("Resolving contention at time of read consistency check"); ContentionManager.getLocal().resolve(Transaction.getLocal(), x.locker); } catch (AbortedException e) { return false; } */ return false; } if (x.stamp > VersionClock.getReadStamp()) { LOGGER.info("Inconsistent version error: Stamp > Version CLOCK"); return false; } } return true; }