Bug 883548

Summary: Qpid HA's '--ha-public-url' option duplicates the '--known-hosts-url' option but cannot be disabled
Product: Red Hat Enterprise MRG Reporter: Jason Dillaman <jdillama>
Component: qpid-cppAssignee: Alan Conway <aconway>
Status: CLOSED CURRENTRELEASE QA Contact: MRG Quality Engineering <mrgqe-bugs>
Severity: unspecified Docs Contact:
Priority: medium    
Version: DevelopmentCC: esammons, jross, mcressma
Target Milestone: 2.3Keywords: Improvement, OtherQA
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Fixed In Version: qpid-cpp-0.18-14 Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-03-19 12:38:45 EDT Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On:    
Bug Blocks: 698367    

Description Jason Dillaman 2012-12-04 15:49:02 EST
Description of problem:
Qpid HA's '--ha-public-url' option will replace the known broker URL list that is exchanged with all clients / federated peers.  This is the same behavior that '--known-hosts-url' provides with the exception that it cannot be disabled by specifying 'none' as the URL.  

As a result, if you federate two brokers over a NATed link, the NAT URL will be replaced by a potentially non-routable '--ha-public-url', which will prevent recovery of the link.  

Version-Release number of selected component (if applicable):
Qpid 0.18

How reproducible:

Steps to Reproduce:
1. Federate two HA brokers over a NATed IP address -- ensure that the brokers can only connect over the NATed IP address
2. Interrupt the link
Actual results:
The destination broker will attempt to re-connect to the published '--ha-public-url' host instead of the original NAT URL.  

Expected results:
The destination broker will attempt to re-connect to the original NAT address if you can disable the '--ha-public-url' option / replace it w/ '--known-hosts-url=none'

Additional info:
Comment 1 Alan Conway 2012-12-14 09:49:47 EST
Fixed on branch 0.18-mrg-aconway-bz883548-2


Reverts the previous commit and simplifies the semantics of setting --ha-public-url and --ha-brokers-url. There is no longer any over-riding or implicit updating of values. That means you must set --ha-public-url as well as --ha-brokers-url, it will not be defaulted. Likewise if you *dont* set ha-public-url, it will remain empty, which is the use case in this bug. The defaulting was adding complexity without adding much value.