public File getFileIfStored(String fileName) throws IOException { fileName = fileName.replace("\\", "/"); File f = getFile(fileName); long diff = (System.currentTimeMillis() - cacheMissDuration.get()) / 1000; // logged at 5 minute interval minimum if (diff > 5 * 60) { LOG.info("local cache misses [{}] in [{}] sec", new Object[] { cacheMissCounter.getAndSet(0), diff }); cacheMissDuration.set(System.currentTimeMillis()); } // return file in purge mode = true and file present in asyncUploadCache // as asyncUploadCache's files will be not be deleted in cache purge. if (!f.exists() || (isInPurgeMode() && !asyncUploadCache.hasEntry(fileName, false))) { LOG.debug( "getFileIfStored returned: purgeMode=[{}], file=[{}] exists=[{}]", new Object[] { isInPurgeMode(), f.getAbsolutePath(), f.exists() }); cacheMissCounter.incrementAndGet(); return null; } else { // touch entry in LRU caches f.setLastModified(System.currentTimeMillis()); cache.get(fileName); return f; } }
public File getFileIfStored(String fileName) throws IOException { fileName = fileName.replace("\\", "/"); File f = getFile(fileName); long diff = (System.currentTimeMillis() - cacheMissDuration.get()) / 1000; // logged at 5 minute interval minimum if (diff > 5 * 60) { LOG.info("local cache misses [{}] in [{}] sec", new Object[] { cacheMissCounter.getAndSet(0), diff }); cacheMissDuration.set(System.currentTimeMillis()); } // return file in purge mode = true and file present in asyncUploadCache // as asyncUploadCache's files will be not be deleted in cache purge. if (!f.exists() || (isInPurgeMode() && !asyncUploadCache.hasEntry(fileName, false))) { LOG.debug( "getFileIfStored returned: purgeMode=[{}], file=[{}] exists=[{}]", new Object[] { isInPurgeMode(), f.getAbsolutePath(), f.exists() }); cacheMissCounter.incrementAndGet(); return null; } else { // touch entry in LRU caches f.setLastModified(System.currentTimeMillis()); cache.get(fileName); return f; } }
public File getFileIfStored(String fileName) throws IOException { fileName = fileName.replace("\\", "/"); File f = getFile(fileName); long diff = (System.currentTimeMillis() - cacheMissDuration.get()) / 1000; // logged at 5 minute interval minimum if (diff > 5 * 60) { LOG.info("local cache misses [{}] in [{}] sec", new Object[] { cacheMissCounter.getAndSet(0), diff }); cacheMissDuration.set(System.currentTimeMillis()); } // return file in purge mode = true and file present in asyncUploadCache // as asyncUploadCache's files will be not be deleted in cache purge. if (!f.exists() || (isInPurgeMode() && !asyncUploadCache.hasEntry(fileName, false))) { LOG.debug( "getFileIfStored returned: purgeMode=[{}], file=[{}] exists=[{}]", new Object[] { isInPurgeMode(), f.getAbsolutePath(), f.exists() }); cacheMissCounter.incrementAndGet(); return null; } else { // touch entry in LRU caches f.setLastModified(System.currentTimeMillis()); cache.get(fileName); return f; } }
if (asyncUploadCache.hasEntry(fileName, false)) { LOG.info( "AsyncUploadCache upload contains file [{}]. Not removing it from LocalCache.",
if (asyncUploadCache.hasEntry(fileName, false)) { LOG.info( "AsyncUploadCache upload contains file [{}]. Not removing it from LocalCache.",
if (asyncUploadCache.hasEntry(fileName, false)) { LOG.info( "AsyncUploadCache upload contains file [{}]. Not removing it from LocalCache.",
if (asyncWriteCache.hasEntry(fileName, false)) { synchronized (uploadRetryMap) { Integer retry = uploadRetryMap.get(identifier);
if (asyncWriteCache.hasEntry(fileName, false)) { synchronized (uploadRetryMap) { Integer retry = uploadRetryMap.get(identifier);
if (asyncWriteCache.hasEntry(fileName, false)) { synchronized (uploadRetryMap) { Integer retry = uploadRetryMap.get(identifier);
usesIdentifier(identifier); if (!asyncWriteCache.hasEntry(fileName, true)) { result = cache.store(fileName, temporary, true);
usesIdentifier(identifier); if (!asyncWriteCache.hasEntry(fileName, true)) { result = cache.store(fileName, temporary, true);
usesIdentifier(identifier); if (!asyncWriteCache.hasEntry(fileName, true)) { result = cache.store(fileName, temporary, true);
String fileName = getFileName(identifier); try { if (asyncWriteCache.hasEntry(fileName, minModifiedDate > 0)) { LOG.trace( "getRecordIfStored: [{}] retrieved from asyncuploadmap",
String fileName = getFileName(identifier); try { if (asyncWriteCache.hasEntry(fileName, minModifiedDate > 0)) { LOG.trace( "getRecordIfStored: [{}] retrieved from asyncuploadmap",
String fileName = getFileName(identifier); try { if (asyncWriteCache.hasEntry(fileName, minModifiedDate > 0)) { LOG.trace( "getRecordIfStored: [{}] retrieved from asyncuploadmap",
@Override public DataRecord getRecord(DataIdentifier identifier) throws DataStoreException { String fileName = getFileName(identifier); try { if (getLength(identifier) > -1) { LOG.trace("getRecord: [{}] retrieved using getLength", identifier); if (minModifiedDate > 0) { touchInternal(identifier); } usesIdentifier(identifier); return new CachingDataRecord(this, identifier); } else if (asyncWriteCache.hasEntry(fileName, minModifiedDate > 0)) { LOG.trace("getRecord: [{}] retrieved from asyncUploadmap", identifier); usesIdentifier(identifier); return new CachingDataRecord(this, identifier); } } catch (IOException ioe) { throw new DataStoreException("error in getting record [" + identifier + "]", ioe); } throw new DataStoreException("Record not found: " + identifier); }
@Override public DataRecord getRecord(DataIdentifier identifier) throws DataStoreException { String fileName = getFileName(identifier); try { if (getLength(identifier) > -1) { LOG.trace("getRecord: [{}] retrieved using getLength", identifier); if (minModifiedDate > 0) { touchInternal(identifier); } usesIdentifier(identifier); return new CachingDataRecord(this, identifier); } else if (asyncWriteCache.hasEntry(fileName, minModifiedDate > 0)) { LOG.trace("getRecord: [{}] retrieved from asyncUploadmap", identifier); usesIdentifier(identifier); return new CachingDataRecord(this, identifier); } } catch (IOException ioe) { throw new DataStoreException("error in getting record [" + identifier + "]", ioe); } throw new DataStoreException("Record not found: " + identifier); }
@Override public DataRecord getRecord(DataIdentifier identifier) throws DataStoreException { String fileName = getFileName(identifier); try { if (getLength(identifier) > -1) { LOG.trace("getRecord: [{}] retrieved using getLength", identifier); if (minModifiedDate > 0) { touchInternal(identifier); } usesIdentifier(identifier); return new CachingDataRecord(this, identifier); } else if (asyncWriteCache.hasEntry(fileName, minModifiedDate > 0)) { LOG.trace("getRecord: [{}] retrieved from asyncUploadmap", identifier); usesIdentifier(identifier); return new CachingDataRecord(this, identifier); } } catch (IOException ioe) { throw new DataStoreException("error in getting record [" + identifier + "]", ioe); } throw new DataStoreException("Record not found: " + identifier); }