Commit bc82868
committed
LocalCache: Fix compute() to report COLLECTED removal cause for GC'd entries
When compute() returns null for an entry whose value has been garbage
collected, the removal cause should be COLLECTED, not EXPLICIT.
The fix checks if the original value was null and the reference is still
active (not loading), which indicates the value was garbage collected
rather than explicitly removed by the user.
Fixes #79851 parent 50f087f commit bc82868
2 files changed
Lines changed: 45 additions & 1 deletion
File tree
- guava-tests/test/com/google/common/cache
- guava/src/com/google/common/cache
Lines changed: 38 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1077 | 1077 | | |
1078 | 1078 | | |
1079 | 1079 | | |
| 1080 | + | |
| 1081 | + | |
| 1082 | + | |
| 1083 | + | |
| 1084 | + | |
| 1085 | + | |
| 1086 | + | |
| 1087 | + | |
| 1088 | + | |
| 1089 | + | |
| 1090 | + | |
| 1091 | + | |
| 1092 | + | |
| 1093 | + | |
| 1094 | + | |
| 1095 | + | |
| 1096 | + | |
| 1097 | + | |
| 1098 | + | |
| 1099 | + | |
| 1100 | + | |
| 1101 | + | |
| 1102 | + | |
| 1103 | + | |
| 1104 | + | |
| 1105 | + | |
| 1106 | + | |
| 1107 | + | |
| 1108 | + | |
| 1109 | + | |
| 1110 | + | |
| 1111 | + | |
| 1112 | + | |
| 1113 | + | |
| 1114 | + | |
| 1115 | + | |
| 1116 | + | |
| 1117 | + | |
1080 | 1118 | | |
1081 | 1119 | | |
1082 | 1120 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2287 | 2287 | | |
2288 | 2288 | | |
2289 | 2289 | | |
2290 | | - | |
| 2290 | + | |
| 2291 | + | |
| 2292 | + | |
| 2293 | + | |
| 2294 | + | |
| 2295 | + | |
| 2296 | + | |
2291 | 2297 | | |
2292 | 2298 | | |
2293 | 2299 | | |
| |||
0 commit comments