Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Expire schemas from Avro cache based on age instead of recency
Guava's cache performs poorly under high loaded when tracking recency. The details are in google/guava#2408. The short version is that each access is tracked and aggregated. If there's constant read access by more threads than there are cores (as happens for the AvroSerde in a Presto worker), the whole thing gets backed up and ultimately leads to a lengthy GC pause and query timeouts. Expiring based on age instead of recency avoids the issue.
- Loading branch information