cache options and attempt retries