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

oc scale against a dc is fragile in the presence of races #4327

Closed
smarterclayton opened this issue Aug 22, 2015 · 10 comments
Closed

oc scale against a dc is fragile in the presence of races #4327

smarterclayton opened this issue Aug 22, 2015 · 10 comments

Comments

@smarterclayton
Copy link
Contributor

Attempting to scale a DC while the controller is creating new RCs returns confusing and vague error messages. If the conditional create of an RC fails (because it's being updated by the DC), we should reload the RC and check that it still current (not failed or completed) and try once more to save. Even a few retries (well factored) would make this a safer experience.

pod "test-deployment-config-1-deploy" deleted
deploymentconfig "test-deployment-config" created
Started deployment #2
CONTROLLER                 CONTAINER(S)      IMAGE(S)                                      SELECTOR                                                                                           REPLICAS   AGE
test-deployment-config-2   ruby-helloworld   127.0.0.1:5001/openshift/origin-ruby-sample   deployment=test-deployment-config-2,deploymentconfig=test-deployment-config,name=test-deployment   0          0s
Scaling the controller failed with: replicationControllers "test-deployment-config-3" not found; Current resource version Unknown
!!! Error in test/cmd/deployments.sh:41
  'oc scale dc test-deployment-config --replicas=1' exited with status 1
Call stack:
  1: test/cmd/deployments.sh:41 main(...)
@smarterclayton
Copy link
Contributor Author

@Kargakis @ironcladlou

@liggitt
Copy link
Contributor

liggitt commented Aug 25, 2015

whatever we do here, we should come up with a pattern that makes sense for the label, annotate, volume commands

@smarterclayton
Copy link
Contributor Author

Let's open an upstream issue - "Client commands tend to race against
controllers due to status changes / scheduling when used in bash" with the
fix being "client spec changes should be against spec only using generation
or "

On Tue, Aug 25, 2015 at 12:30 AM, Jordan Liggitt notifications@github.com
wrote:

whatever we do here, we should come up with a pattern that makes sense for
the label, annotate, volume commands


Reply to this email directly or view it on GitHub
#4327 (comment).

Clayton Coleman | Lead Engineer, OpenShift

@ironcladlou
Copy link
Contributor

New/related upstream issue to lay the foundation for safe concurrent scaling/deployment: kubernetes/kubernetes#14062

@liggitt
Copy link
Contributor

liggitt commented Dec 9, 2015

probably addressed by dc/scale changes

@ironcladlou
Copy link
Contributor

Fixed by #5875

@smarterclayton
Copy link
Contributor Author

Such confidence.

On Wed, Dec 9, 2015 at 9:46 AM, Dan Mace notifications@github.com wrote:

Fixed by #5875 #5875


Reply to this email directly or view it on GitHub
#4327 (comment).

@ironcladlou
Copy link
Contributor

oc scale against a dc no longer touches RCs as of #5875, so there's no longer a way for the reported condition to arise.

@liggitt liggitt closed this as completed Dec 9, 2015
@0xmichalis
Copy link
Contributor

It doesn't even touch the DC.

@0xmichalis
Copy link
Contributor

But the scaling endpoint

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants