repair async & sync