Bug 1268033 - After clicking apply in register on 'choose server', the ui blocks pinging the server
After clicking apply in register on 'choose server', the ui blocks pinging th...
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: subscription-manager (Show other bugs)
Unspecified Unspecified
low Severity low
: rc
: ---
Assigned To: Kevin Howell
John Sefler
: Triaged
Depends On:
  Show dependency treegraph
Reported: 2015-10-01 11:50 EDT by Adrian Likins
Modified: 2017-08-01 15:18 EDT (History)
5 users (show)

See Also:
Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2017-08-01 15:18:42 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
validating (218.20 KB, image/png)
2017-05-10 05:25 EDT, Rehana
no flags Details

External Trackers
Tracker ID Priority Status Summary Last Updated
Github candlepin/subscription-manager/pull/1510 None None None 2016-10-19 17:28 EDT
Red Hat Product Errata RHBA-2017:2083 normal SHIPPED_LIVE python-rhsm and subscription-manager bug fix and enhancement update 2017-08-01 14:14:19 EDT

  None (edit)
Description Adrian Likins 2015-10-01 11:50:25 EDT
Description of problem:

The 'apply()' of ChooseServerScreen attempts to validate the server url by making a connection to it and a 'GET /subscription/status' (via 'is_valid_server_info()) but that request is not-async and will block the main thread. If the server url responds very slowly, there will be a perceptible pause between 'next' and the credentials screen.

That doesn't appear to be a new behavior, I think it dates back a while, but it's more noticeable now since most screens instantly apply()

Fix would likely need there to be a nongui/progress ValidateServerUrlScreen between ChooseServer and CredentialsScreen, and AsyncBackend method to make a status request. 

Version-Release number of selected component (if applicable):
1.15.9-13 or earlier

How reproducible:

Steps to Reproduce:

Actual results:

Expected results:

Additional info:
Comment 2 John Sefler 2015-10-02 10:21:06 EDT
deferring to rhel-7.3.0 due to severity and time schedule remaining for rhel-7.2.0
Comment 3 Chris Snyder 2016-11-16 16:59:43 EST
Fix has been merged upstream. Moving to POST.
Comment 5 Rehana 2017-05-10 05:24:39 EDT
Demonstrating that in RHEL 73  there was no "Validating connection" check when you click next on the server details page of system registration.

subscription-manager: 1.17.15-1.el7
python-rhsm: 1.17.9-1.el7

1) Launch subscription-manager-gui
2) Click on register button
3) click next on the window

You will notice that next the user credential screen appears  and there was *NO* screen with server connection check.

Retesting with latest subscription-manager on RHEL74

# subscription-manager version
server type: This system is currently not registered.
subscription management server:
subscription management rules: 5.15.1
subscription-manager: 1.19.12-1.el7
python-rhsm: 1.19.6-1.el7

# rpm -qa subscription-manager --changelog | grep 1268033
- 1268033: Add progress screen for validate server (khowell@redhat.com)

Follow the same steps mentioned above , you will notice a new progress window with 'Validating connection" appears before the user was presented with credentials screen. (PFA:validating.png) 

Marking the bug as Verified!!
Comment 6 Rehana 2017-05-10 05:25 EDT
Created attachment 1277589 [details]
Comment 7 errata-xmlrpc 2017-08-01 15:18:42 EDT
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.


Note You need to log in before you can comment on or make changes to this bug.