Object server wont start if the ring contains hostnames and servers_per_port is enabled

Bug #1850487 reported by david courtois
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Object Storage (swift)
New
Undecided
Unassigned

Bug Description

setting hostnames instead of IP in the ring isn't an issue, but when enabling servers_per_port the object server silently loops reading the ring and doesn't bind to any interface.
to reproduce on SAIO :
set "export SERVERS_PER_PORT=1" in localrc
in the vm :
for i in {1..4} ; do swift-ring-builder /etc/swift/object.builder set_info --ip 127.0.0.${i} --change-ip node${i} --change-replication-ip node${i} -y; done
edit /etc/hosts accordingly (actually this doesn't change anything)
swift-ring-builder /etc/swift/object.builder write_ring
swift-init object start

The server tries to compare the hostname in the ring (https://github.com/openstack/swift/blob/master/swift/common/storage_policy.py#L76) with the ip addresses returned by whataremyips (https://github.com/openstack/swift/blob/master/swift/common/utils.py#L2602) without success, even if we want it to bind on every ("0.0.0.0") interfaces.
We are using swift v2.22.0, reproduced on master in saio

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.