Fix hang when using a read-only ActionCache
Description
It is possible to set up a BuildGrid with a read-only ActionCache. If the Execute service tries to use this cache, it will ignore the read-only state and try forever to cache ActionResults, despite the ActionCache rejecting the attempt. This manifests on the client-side as the job hanging indefinitely.
This MR fixes this hang by catching the NotImplementedError raised by attempting to update a read-only ActionCache, and continuing to complete the Operation to stop repeatedly trying to cache.