store: return when read_only is set

I'm mostly concerned about CAS here @fbogsany, do we need to process the block either way, or can we assume it's safe to skip it? I'm thinking if a client is doing something with a side-effect in the block, we need to actually execute the block—but ignore the return value?