The dagster machinery will start op 1 from the beginning. If you want to start from the failed state, you need to encode that in the body of the op itself by storing some sort of cursor between runs that's able to pick up where the failure left off. Where and how you do that depends on your use case, and your execution environment.