Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Specify timeout for plugins of specific Kind. #3018

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

phuongatemc
Copy link
Contributor

Signed-off-by: Hoang, Phuong phuong.hoang@emc.com

Signed-off-by: Hoang, Phuong <phuong.hoang@emc.com>
@phuongatemc
Copy link
Contributor Author

This design proposes a solution that allows user to specify timeout during backup for all plugin executions on an object of specific resource types.

@nrb nrb added the Area/Design Design Documents label Oct 20, 2020
@carlisia
Copy link
Contributor

carlisia commented Nov 5, 2020

@phuongatemc did you mean to delete design/backup-resources-order.md?

@phuongatemc
Copy link
Contributor Author

@phuongatemc did you mean to delete design/backup-resources-order.md?

Sorry but am I supposed to remove the design doc after it has been released?

@carlisia
Copy link
Contributor

carlisia commented Nov 6, 2020

That's a great question! We are gonna keep it around. I actually am due to create some folder structure to house wip / completed.

Copy link
Contributor

@nrb nrb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@phuongatemc I think we definitely need to have an overall timeout on backup operations and a way to pass them down to plugins, but I don't know about having individual timeouts per Kubernetes resource type.

It seems your use case is to run this against PVCs specifically? Is there anything else you'd want to run this against?

- Enhance the BackupSpec to contain the map of resource type (Kind) to the timeout of executing all plugins being executed on an object of that resource type.
type BackupSpec struct {
...
TotalPluginsTimeouts map[string]int `json:"totalPluginsTimeouts,omitempty"` //map of resource type to total plugins timeout (in milliseconds)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you give an example of what you envision the keys within this map to look like? Is it matching on a Kubernetes Kind?

If so, is that really only meaningful on BackupItemAction plugins, and not on any of the other plugin types, like ObjectStorage or VolumeSnapshotter?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The key in this map is the Kubernetes Kind.
In theory, I think I can extend this design for all plugins, not just BackupItemAction. Not sure if I can have time to implement for all.

@nrb
Copy link
Contributor

nrb commented Mar 11, 2021

@phuongatemc Can this be closed in favor of #3355?

@carlisia carlisia requested review from dsu-igeek and removed request for carlisia and ashish-amarnath April 15, 2021 22:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area/Design Design Documents
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants