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

Fix problem of Configuration becomes ready prematurely #6096

Merged
merged 3 commits into from
Nov 27, 2019

Conversation

taragu
Copy link
Contributor

@taragu taragu commented Nov 25, 2019

/lint

Fixes #6060

Proposed Changes

There is currently a bug documented by knative/client#500 (comment) and #6060. The problem occurs because the Configuration is set to Ready prematurely, before the latest created revision becomes ready. This PR sets Configuration Ready status to True only if the latest created revision is ready.

Release Note

NONE

/cc mattmoor
/cc @navidshaikh

@knative-prow-robot
Copy link
Contributor

@taragu: GitHub didn't allow me to request PR reviews from the following users: navidshaikh.

Note that only knative members and repo collaborators can review this PR, and authors cannot review their own PRs.

In response to this:

/lint

Fixes #6060

Proposed Changes

There is currently a bug documented by knative/client#500 (comment) and #6060. The problem occurs because the Configuration is set to Ready prematurely, before the latest created revision becomes ready. This PR sets Configuration Ready status to True only if the latest created revision is ready.

Release Note

NONE

/cc mattmoor
/cc @navidshaikh

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.

@googlebot googlebot added the cla: yes Indicates the PR's author has signed the CLA. label Nov 25, 2019
@knative-prow-robot knative-prow-robot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label Nov 25, 2019
Copy link
Contributor

@knative-prow-robot knative-prow-robot left a comment

Choose a reason for hiding this comment

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

@taragu: 2 warnings.

In response to this:

/lint

Fixes #6060

Proposed Changes

There is currently a bug documented by knative/client#500 (comment) and #6060. The problem occurs because the Configuration is set to Ready prematurely, before the latest created revision becomes ready. This PR sets Configuration Ready status to True only if the latest created revision is ready.

Release Note

NONE

/cc mattmoor
/cc @navidshaikh

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.

pkg/apis/serving/v1alpha1/configuration_lifecycle.go Outdated Show resolved Hide resolved
pkg/apis/serving/v1alpha1/configuration_lifecycle.go Outdated Show resolved Hide resolved
@knative-prow-robot knative-prow-robot added area/API API objects and controllers area/test-and-release It flags unit/e2e/conformance/perf test issues for product features labels Nov 25, 2019
@taragu taragu force-pushed the lrr-lcr branch 3 times, most recently from f5feda4 to ee20b3f Compare November 25, 2019 22:06
@knative-test-reporter-robot

The following jobs failed:

Test name Triggers Retries
pull-knative-serving-unit-tests 0/3

Failed non-flaky tests preventing automatic retry of pull-knative-serving-unit-tests:

pkg/reconciler/service.TestReconcile
pkg/reconciler/service.TestReconcile/pinned_-_with_ready_config_and_route
pkg/reconciler/service.TestReconcile/release_-_update_service,_route_not_ready
pkg/reconciler/service.TestReconcile/release_-_update_service,_route_not_ready,_2_rev,_no_split
pkg/reconciler/service.TestReconcile/release_-_update_service,_route_not_ready,_traffic_split
pkg/reconciler/service.TestReconcile/release_-_update_service,_route_not_ready,_traffic_split,_percentage_changed
pkg/reconciler/service.TestReconcile/release_-_route_and_config_ready,_using_@latest
pkg/reconciler/service.TestReconcile/release_-_route_and_config_ready,_traffic_split,_using_@latest

and 5 more.

@knative-prow-robot knative-prow-robot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Nov 25, 2019
}

// MarkConfigurationReady sets the Ready state of a configuration to True
func (cs *ConfigurationStatus) MarkConfigurationReady() {
confCondSet.Manage(cs).MarkTrue(ConfigurationConditionReady)
Copy link
Member

Choose a reason for hiding this comment

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

This seems like a huge change. Why can't we just guard this in a check that LatestCreated == LatestReady?

@knative-prow-robot knative-prow-robot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Nov 27, 2019
@knative-metrics-robot
Copy link

The following is the coverage report on the affected files.
Say /test pull-knative-serving-go-coverage to re-run this coverage report

File Old Coverage New Coverage Delta
pkg/reconciler/configuration/configuration.go 87.0% 87.7% 0.7

@taragu
Copy link
Contributor Author

taragu commented Nov 27, 2019

/retest

Copy link
Member

@mattmoor mattmoor left a comment

Choose a reason for hiding this comment

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

/lgtm
/approve

@knative-prow-robot knative-prow-robot added the lgtm Indicates that a PR is ready to be merged. label Nov 27, 2019
@knative-prow-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: mattmoor, taragu

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 /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@knative-prow-robot knative-prow-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Nov 27, 2019
@knative-prow-robot knative-prow-robot merged commit c987798 into knative:master Nov 27, 2019
@taragu taragu deleted the lrr-lcr branch February 18, 2020 15:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. area/API API objects and controllers area/test-and-release It flags unit/e2e/conformance/perf test issues for product features cla: yes Indicates the PR's author has signed the CLA. lgtm Indicates that a PR is ready to be merged. 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.

Condition ConfigurationsReady is True but LCR != LRR
6 participants