Background
Once #3057 is resolved the most expensive DB insert that currently happens in the post-processing of the autopilot is just 1 DB query (instead of the multiple ones we have today).
That means it will be very straight forward to optimistically upload the data in the background while solvers are crunching numbers and roll-back if there are no proposed solutions.
Acceptance criteria
While the autopilot waits for solvers returning their bids it already uploads the auction data to competition_auctions.
If the autopilot at any point aborts the run_loop (e.g. no bids submitted) it should delete the row that is no longer needed again.
All the other data (fee_policies, solutions, reference scores) still depends on the bids so it still has to be done right before calling /settle.
Background
Once #3057 is resolved the most expensive DB insert that currently happens in the post-processing of the autopilot is just 1 DB query (instead of the multiple ones we have today).
That means it will be very straight forward to optimistically upload the data in the background while solvers are crunching numbers and roll-back if there are no proposed solutions.
Acceptance criteria
While the autopilot waits for solvers returning their bids it already uploads the auction data to
competition_auctions.If the autopilot at any point aborts the run_loop (e.g. no bids submitted) it should delete the row that is no longer needed again.
All the other data (fee_policies, solutions, reference scores) still depends on the bids so it still has to be done right before calling
/settle.