Bug 1448267
| Summary: | When receive 429 info for stage candlepin, it will loop to show log "Trying again in 60" every 60s. | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | yuefliu <yuefliu> |
| Component: | virt-who | Assignee: | Chris Snyder <csnyder> |
| Status: | CLOSED ERRATA | QA Contact: | Eko <hsun> |
| Severity: | urgent | Docs Contact: | |
| Priority: | high | ||
| Version: | 7.4 | CC: | hsun, khowell, mstead, shihliu, yanpliu, yuefliu |
| Target Milestone: | rc | Keywords: | Triaged |
| Target Release: | --- | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2017-08-01 19:26:06 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
Yes, it worked as expected before virt-who-0.19, now 429 info makes virt-who keeping restart every 60s, cannot stop and send mapping info out, which have blocked all our automation test for stage candlepin. A couple of comments on the issues in this bug. Regarding the issue of CTRL-C causing virt-who to loop without waiting, I believe that is an issue and it shall be fixed. As the RFC below[1] specifies that the 429 response MAY or MAY NOT include the Retry-After header I propose the new behavior be as follows: If the response includes Retry-After -> wait Retry-After seconds and try again If the response does not include Retry-After -> wait 60s * number of failures for the given request. (So for the first failure wait 60s, for the second subsequent failure wait 120s, for the third subsequent failure wait 180s). [1]: https://tools.ietf.org/html/rfc6585 Attaching a PR with my proposed changes to solve this bug. Verified the bug with virt-who-0.19-5, it works as design to wait 60s and try again. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2017:2084 |
> - without oneshot option, virt-who should loop to restart with 60s, 120s and 180s, then send mapping info out successfully. Where did this expectation come from? Did this work as expected in a prior virt-who release?