portal-update: add error logging and retries + delay options