aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/protobuf
diff options
context:
space:
mode:
authorGravatar jmmv <jmmv@google.com>2017-09-26 11:59:22 -0400
committerGravatar John Cater <jcater@google.com>2017-09-27 10:00:47 -0400
commit9573a0d3d2a30b795ac096ff8acb59db561db7f6 (patch)
tree3478cc04009086a01d8d13cd26a2a52887d79000 /src/main/protobuf
parent940ce20bb6045a8b0a09856f312991ba48ef2a7c (diff)
Collect action cache hits, misses, and reasons for the misses.
As a bonus, this brings in a bunch of new unit tests for the ActionCacheChecker. RELNOTES: None. PiperOrigin-RevId: 170059577
Diffstat (limited to 'src/main/protobuf')
-rw-r--r--src/main/protobuf/action_cache.proto26
1 files changed, 25 insertions, 1 deletions
diff --git a/src/main/protobuf/action_cache.proto b/src/main/protobuf/action_cache.proto
index 429990dda0..5694ebe34a 100644
--- a/src/main/protobuf/action_cache.proto
+++ b/src/main/protobuf/action_cache.proto
@@ -31,5 +31,29 @@ message ActionCacheStatistics {
// Time it took to save the action cache to disk.
uint64 save_time_in_ms = 2;
- // NEXT TAG: 3
+ // Reasons for not finding an action in the cache.
+ enum MissReason {
+ DIFFERENT_ACTION_KEY = 0;
+ DIFFERENT_DEPS = 1;
+ DIFFERENT_ENVIRONMENT = 2;
+ DIFFERENT_FILES = 3;
+ CORRUPTED_CACHE_ENTRY = 4;
+ NOT_CACHED = 5;
+ UNCONDITIONAL_EXECUTION = 6;
+ }
+
+ // Detailed information for a particular miss reason.
+ message MissDetail {
+ MissReason reason = 1;
+ int32 count = 2;
+ }
+
+ // Cache counters.
+ int32 hits = 3;
+ int32 misses = 4;
+
+ // Breakdown of the cache misses based on the reasons behind them.
+ repeated MissDetail miss_details = 5;
+
+ // NEXT TAG: 6
}