added an event so that cache writes don't collide