Description of problem: If a numeric attribute such as headerFetchCount, networkRetries, or headerCacheSize is changed to 1 (or 0), the resulting current value becomes "Yes" (or "No"). Once this happens, you can only change the current value between "No" and "Yes". Version-Release number of selected component (if applicable): up2date-4.4.56-3 How reproducible: always. Steps to Reproduce: 1. Run up2date-nox --configure 2. Choose a numeric attribute such as networkRetries 3. Change it to 1 4. <enter> to save and exit 5. Run up2date-nox --configure again to look at the current value. Actual results: networkRetries Yes Expected results: networkRetries 1 Additional info: Once the numeric attribute becomes snagged in the eddy of Yes/No, you can't change it back to a number. Here's an example. Note the networkRetries attribute (#24). I've snipped out everything else. [root@rlx-3-04 tmp]# up2date-nox --configure 24. networkRetries 5 Enter number of item to edit <return to exit, q to quit without saving>: 24 Attribute Name: networkRetries Comment: Number of attempts to make at network connections before giving up Current value: 5 <return for default, enter two spaces and return to clear> New Value: 1 24. networkRetries 1 Enter number of item to edit <return to exit, q to quit without saving>: <enter, save> Run it again: [root@rlx-3-04 tmp]# up2date-nox --configure 24. networkRetries Yes <-- now it says "Yes" instead of 1 Enter number of item to edit <return to exit, q to quit without saving>: 24 Attribute Name: networkRetries Comment: Number of attempts to make at network connections before giving up Current value: Yes New Value: 14 New Value: 1 <-- can't change it back to 1 New Value: 3 <-- can't change it to any number New Value: No <-- can only change it to "No" 24. networkRetries No Enter number of item to edit <return to exit, q to quit without saving>: q Workaround: Edit /etc/sysconfig/rhn/up2date manually.
legit bug, dunno if it's crucial enough to be a blocker though
looks to be a bug around lines 216in text_config.py It assumes that things that are 0/1 in the file are booleans, and treats them as such. Not sure how to fix it without breaking actually boolean stuff. We could add "types" to the config file/object, but thats not a small change. Easiest fix might just to be to hardcode the types that we know are numeric values to ignore those cases. A slightly klugey fix is to just hardcode the numeric non boolean stuff.
Created attachment 123262 [details] patch to hard code cases for numeric values patch to hardcode numberRetries, etc to be intrepreted as ints/strings instead of as bools
up2date-4.4.49
14. networkRetries Yes
doh, typoed the networkRetries option as numberRetries... I'll rev it when I get a chance.
4.4.65-3 should contain the fix.
This is only fixed for networkRetries. Other numeric attributes need to be fixed as well, such as headerCacheSize and headerFetchCount.
up2date-4.4.67-3 should fix issues for networkRetries, headerCacheSize, and headerFetchCount. If there are other numeric entries, I don't see them.
passes_qa on i386, ia64, and x86_64
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on the solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2006-0105.html