fix async cache bug