Durable workflows without replay: freezing the VM instead of re-running the code