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

Bug 1572470 - use binding id as instance, do not error on conflict #924

Merged
merged 1 commit into from May 4, 2018

Conversation

jmrodri
Copy link
Contributor

@jmrodri jmrodri commented May 3, 2018

  • CRDs use the binding id alone switched to using binding id.
  • Generate the statekey for use in etcd in the broker.go
  • Make logs informative, some now include the k8s reason
  • A conflicting update is now simply logged and skipped

@openshift-ci-robot openshift-ci-robot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label May 3, 2018
@rthallisey rthallisey added 3.10 | release-1.2 Kubernetes 1.10 | Openshift 3.10 | Broker release-1.2 bug labels May 3, 2018
Copy link
Contributor

@shawn-hurley shawn-hurley left a comment

Choose a reason for hiding this comment

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

Thanks for cleaning up my mess. I really like all the logging changes those will be helpful.

}

bindingInstance.CreateJobKey = stateKey
bindingInstance.CreateJobKey = fmt.Sprintf("/state/%s/job/%s", instance.ID.String(), token)
Copy link
Contributor

Choose a reason for hiding this comment

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

isn't the job state subscriber using the binding id for the instance ID? If this is the case then we are will not update this job state and that could cause issues for recovery I think.

if err != nil {
log.Errorf("Unable to update the service binding, after a failed creation: %v - %v", id, err)

if err != nil && apierrors.IsConflict(err) {
Copy link
Contributor

Choose a reason for hiding this comment

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

If you wanted we could also see if there is something in the spec that that has changed? this would allow us to alert that an actual update was missed?

* CRDs use the binding id alone switched to using binding id.
* Generate the statekey for use in etcd in the broker.go
* Make logs informative, some now include the k8s reason
* A conflicting update is now simply logged and skipped
@jmrodri jmrodri merged commit e1ce22e into master May 4, 2018
@jmrodri jmrodri deleted the bz1572470 branch May 31, 2018 13:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3.10 | release-1.2 Kubernetes 1.10 | Openshift 3.10 | Broker release-1.2 size/M Denotes a PR that changes 30-99 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants