Refactor record cache to separate source