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

pkg/lb/lbgrpc/client.go: createsnapshtot err #31

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 11 additions & 1 deletion pkg/lb/lbgrpc/client.go
Original file line number Diff line number Diff line change
Expand Up @@ -1263,14 +1263,24 @@ func (c *Client) CreateSnapshot(
return nil, status.Errorf(codes.Internal,
"failed to create snapshot '%s' on LB: %s", name, st.Message())
case codes.FailedPrecondition:
// most likely source volume is being updated, tell
// most likely old snapshot still creating (older Lightbits releases), tell
Copy link
Collaborator

Choose a reason for hiding this comment

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

most likely old snapshot is still being created (this blocked creating new snapshots in older Lightbits releases)

// upper layers to retry the whole thing and
// hope the logic above will weed out the bad states so
// we don't end up in an infinite loop:
c.log.Debugf("create snapshot refused by LB on failed "+
"precondition: %s", st.Message())
return nil, status.Errorf(codes.Unavailable,
"create snapshot (%s) transiently failed", name)
case codes.Unavailable:
// most likely old snapshot still creating (newer Lightbits releases),
Copy link
Collaborator

Choose a reason for hiding this comment

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

same comment re comment

// volume in updating state, tell
// upper layers to retry the whole thing and
// hope the logic above will weed out the bad states so
// we don't end up in an infinite loop:
c.log.Debugf("create snapshot refused by LB on failed "+
Copy link
Collaborator

Choose a reason for hiding this comment

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

create snapshot operation returned <...>

"unavailable: %s", st.Message())
return nil, status.Errorf(codes.Unavailable,
"create snapshot (%s) transiently failed", name)
}
return nil, err
}
Expand Down