-
Notifications
You must be signed in to change notification settings - Fork 99
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
OCPBUGS-25331: UPSTREAM: <carry>: extend termination events #1827
OCPBUGS-25331: UPSTREAM: <carry>: extend termination events #1827
Conversation
@tkashem: the contents of this pull request could not be automatically validated. The following commits could not be validated and must be approved by a top-level approver:
Comment |
dcaaeab
to
2de15a6
Compare
@tkashem: the contents of this pull request could not be automatically validated. The following commits could not be validated and must be approved by a top-level approver:
Comment |
@tkashem: This pull request references Jira Issue OCPBUGS-25331, which is invalid:
Comment The bug has been updated to refer to the pull request using the external bug tracker. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
/jira refresh |
@tkashem: This pull request references Jira Issue OCPBUGS-25331, which is valid. The bug has been moved to the POST state. 3 validation(s) were run on this bug
No GitHub users were found matching the public email listed for the QA contact in Jira (anli@redhat.com), skipping review request. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
@tkashem: This pull request references Jira Issue OCPBUGS-25331, which is valid. 3 validation(s) were run on this bug
No GitHub users were found matching the public email listed for the QA contact in Jira (anli@redhat.com), skipping review request. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
/retest |
Name: fmt.Sprintf("%v.%x", ref.Name, t.UnixNano()), | ||
Namespace: ref.Namespace, | ||
}, | ||
EventTime: t, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since we are creating corev1 Events, IMO we should mimic the behavior of the corev1 client implementation and set FirstTimestamp
and LastTimestamp
instead of EventTime
: https://github.com/openshift/kubernetes/blob/master/staging/src/k8s.io/client-go/tools/record/event.go#L482-L483
The events/v1 client implementation is actually the one setting EventTime: https://github.com/openshift/kubernetes/blob/master/staging/src/k8s.io/client-go/tools/events/event_recorder.go#L102
// when we emit the lifecycle events, we store the event ID of the first | ||
// shutdown event "ShutdownInitiated" emitted so we can correlate it to | ||
// the other shutdown events for a particular apiserver restart. | ||
// This provides a more deterministic way to determine the shutdown | ||
// duration for an apiserver restart | ||
eventLock sync.Mutex |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What kind of correlation are we talking about? Normally with client-go implementation, similar events are aggregated into one and with up-to-date count and timestamps you can easily track the lifecycle of the event. So maybe we could reuse some of client-go implementation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
iiuc its a correlation with events from other components - i.e. disruption events on timeline, lb status and so on
/test e2e-gcp |
1 similar comment
/test e2e-gcp |
- we tie the shutdown events with the UID of the first (shutdown initiated), this provides us with a more deterministic way to compute shutdown duration from these events - move code snippets from the upstream file to openshift specific patch file, it reduces chance of code conflict Note for rebase: squash it into the following commit cfbb6d6 UPSTREAM: <carry>: create termination events
2de15a6
to
518f920
Compare
@tkashem: the contents of this pull request could not be automatically validated. The following commits could not be validated and must be approved by a top-level approver:
Comment |
/remove-label backports/unvalidated-commits |
/retest-required |
/test unit |
/test e2e-aws-ovn-fips |
I don't see any places where oauth-apiserver or openshift-apiserver needs to be patched - they all seem to be using vendored kubernetes for shutdown events. @tkashem shall we remove the hold and start vendoring new kube in openshift-apiserver/oauth-apiserver? |
4.16 has branched so its safe to land |
/cherrypick release-4.16 |
@vrutkovs: once the present PR merges, I will cherry-pick it on top of release-4.16 in a new PR and assign it to you. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: tkashem, vrutkovs The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/refresh |
/retest |
/test e2e-gcp |
/test e2e-gcp |
/retest |
/hold Revision 518f920 was retested 3 times: holding |
/retest |
@tkashem: all tests passed! Full PR test history. Your PR dashboard. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
/hold cancel |
@tkashem: Jira Issue OCPBUGS-25331: All pull requests linked via external trackers have merged: Jira Issue OCPBUGS-25331 has been moved to the MODIFIED state. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
@vrutkovs: new pull request created: #1980 In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
set
EventTime
for the shutdown eventswe tie the shutdown events that follow with the UID of the first (shutdown initiated), this provides us with a more deterministic way to compute shutdown duration from these events
move code snippets from the upstream file to openshift specific patch file, it reduces chance of code conflict
Note for rebase: squash it into the following commit
cfbb6d6 UPSTREAM: : create termination events