Index: CachingDataStore.java =================================================================== --- CachingDataStore.java (revision 1677956) +++ CachingDataStore.java (working copy) @@ -464,15 +464,15 @@ throws DataStoreException { String fileName = getFileName(identifier); try { - if (asyncWriteCache.hasEntry(fileName, minModifiedDate > 0)) { - LOG.trace("getRecord: [{}] retrieved from asyncUploadmap", + if (getLength(identifier) > -1) { + LOG.trace("getRecord: [{}] retrieved using getLength", identifier); + touchInternal(identifier); usesIdentifier(identifier); return new CachingDataRecord(this, identifier); - } else if (getLength(identifier) > -1) { - LOG.trace("getRecord: [{}] retrieved using getLength", + } else if (asyncWriteCache.hasEntry(fileName, minModifiedDate > 0)) { + LOG.trace("getRecord: [{}] retrieved from asyncUploadmap", identifier); - touchInternal(identifier); usesIdentifier(identifier); return new CachingDataRecord(this, identifier); }