catch and re-throw Throwable
implement async storing of OOCache