-
Notifications
You must be signed in to change notification settings - Fork 382
Description
Is your feature request related to a problem?/Why is this needed
Currently, the CreateSnapshot API is a synchronous call and it blocked until the snapshot is cut, as said in the doc:
Based on this information, CO can issue repeated (idempotent) calls to CreateSnapshot, monitor the response, and make decisions. Note that CreateSnapshot is a synchronous call and it MUST block until the snapshot is cut.
But creating snapshot from disk may take long time, depends on the data size.
The issue is the synchronous mode will be stucked and may be broken if any error occured.
So raised this issue to support both sync and async mode on CreateSnapshot API.
Describe the solution you'd like in detail
In the async mode, CreateSnapshot API will get the snapshotID very quickly from the SP (Storage Provider), then
we can call query API to get the snapshot status or progress.
In the meantime, the FrontEnd could display the snapshot progress user-friendly.
Describe alternatives you've considered
We can add a param as mode="sync|async" to support both mode, let user choose as they like.
Additional context
It is a common issue among cloud SPs, hope this proposal will get acceptance, then I can do the PR to implement it.