diff --git a/iocore/cache/Cache.cc b/iocore/cache/Cache.cc index 1951433208c..22b502aac89 100644 --- a/iocore/cache/Cache.cc +++ b/iocore/cache/Cache.cc @@ -3088,6 +3088,7 @@ register_cache_stats(RecRawStatBlock *rsb, const char *prefix) REG_INT("read.active", cache_read_active_stat); REG_INT("read.success", cache_read_success_stat); REG_INT("read.failure", cache_read_failure_stat); + REG_INT("read.seek.failure", cache_read_seek_fail_stat); REG_INT("write.active", cache_write_active_stat); REG_INT("write.success", cache_write_success_stat); REG_INT("write.failure", cache_write_failure_stat); diff --git a/iocore/cache/CacheRead.cc b/iocore/cache/CacheRead.cc index 7cf8064e9b3..4c33cdf5d26 100644 --- a/iocore/cache/CacheRead.cc +++ b/iocore/cache/CacheRead.cc @@ -749,6 +749,8 @@ CacheVC::openReadMain(int /* event ATS_UNUSED */, Event * /* e ATS_UNUSED */) doc->magic = DOC_CORRUPT; + CACHE_INCREMENT_DYN_STAT(cache_read_seek_fail_stat); + CACHE_TRY_LOCK(lock, vol->mutex, mutex->thread_holding); if (!lock.is_locked()) { SET_HANDLER(&CacheVC::openReadDirDelete); diff --git a/iocore/cache/P_CacheInternal.h b/iocore/cache/P_CacheInternal.h index 8630d3a064f..cf747de60cf 100644 --- a/iocore/cache/P_CacheInternal.h +++ b/iocore/cache/P_CacheInternal.h @@ -113,6 +113,7 @@ enum { cache_read_active_stat, cache_read_success_stat, cache_read_failure_stat, + cache_read_seek_fail_stat, cache_write_active_stat, cache_write_success_stat, cache_write_failure_stat,