#17 separate transactional cache access into read and write operations