netapp dataontap NFS manage operation fails with ipv6 reference

Bug #1923866 reported by Eric Harney
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Cinder
New
Medium
Unassigned

Bug Description

netapp dataontap NFS manage operation fails w/ ipv6 volume reference

When running a "cinder manage" operation of a volume that is on an IPv6 NFS export, _convert_vol_ref_share_name_to_share_ip() in nfs_base.py splits on ':' which does not work if using an IPv6 address in the volume reference.

This results in an error shown below, because the first part of the address is passed to resolve_hostname().

2020-08-19 20:36:20.684 62 WARNING cinder.volume.manager [req-9174ea68-4394-4dec-8218-3fddd54a627f 71ee021f89c044dd8ff6ccfc3af4d9e4 7c282dc3b1f9459a84d92b5add3b8aec - default default] Task 'cinder.volume.flows.manager.manage_existing.PrepareForQuotaReservationTask;volume:manage_existing' (fe11ac76-9f59-4f62-992b-7fc4f0dffffd) transitioned into state 'FAILURE' from state 'RUNNING'
2 predecessors (most recent first):
  Atom 'cinder.volume.flows.manager.create_volume.NotifyVolumeActionTask;volume:create, manage_existing.start' {'intention': 'EXECUTE', 'state': 'SUCCESS', 'requires': {'volume': Volume(_name_id=None,admin_metadata=<?>,attach_status='detached',availability_zone='nova',bootable=False,cluster=<?>,cluster_name=None,consistencygroup=<?>,consistencygroup_id=None,created_at=2020-08-19T20:36:19Z,deleted=False,deleted_at=None,display_description=None,display_name='display-name',ec2_id=None,encryption_key_id=None,glance_metadata=<?>,group=<?>,group_id=None,host='hostgroup@tripleo_netapp#[2600:abcd::11]:/cinder_01',id=5185a08b-1fad-4c1f-9bab-c6345d506030,launched_at=None,metadata={},migration_status=None,multiattach=False,previous_status=None,project_id='7c282dc3b1f9459a84d92b5add3b8aec',provider_auth=None,provider_geometry=None,provider_id=None,provider_location=None,replication_driver_data=None,replication_extended_status=None,replication_status=None,scheduled_at=None,service_uuid=None,shared_targets=True,size=0,snapshot_id=None,snapshots=<?>,source_volid=None,status='error_managing',terminated_at=None,updated_at=None,user_id='71ee021f89c044dd8ff6ccfc3af4d9e4',volume_attachment=<?>,volume_type=<?>,volume_type_id=None), 'context': <cinder.context.RequestContext object at 0x7efde4732090>}, 'provides': None}
  |__Flow 'volume_manage_existing_manager': gaierror: [Errno -5] No address associated with hostname
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager Traceback (most recent call last):
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/taskflow/engines/action_engine/executor.py", line 53, in _execute_task
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager result = task.execute(**arguments)
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/flows/manager/manage_existing.py", line 61, in execute
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager status='error_managing')
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 220, in __exit__
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager self.force_reraise()
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 196, in force_reraise
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager six.reraise(self.type_, self.value, self.tb)
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/flows/manager/manage_existing.py", line 56, in execute
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager manage_existing_ref)
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/utils.py", line 849, in trace_method_logging_wrapper
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager return f(*args, **kwargs)
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/drivers/netapp/dataontap/nfs_base.py", line 1041, in manage_existing_get_size
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager self._get_share_mount_and_vol_from_vol_ref(existing_vol_ref)
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/utils.py", line 849, in trace_method_logging_wrapper
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager return f(*args, **kwargs)
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/drivers/netapp/dataontap/nfs_base.py", line 946, in _get_share_mount_and_vol_from_vol_ref
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager vol_ref_name)
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/utils.py", line 849, in trace_method_logging_wrapper
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager return f(*args, **kwargs)
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/drivers/netapp/dataontap/nfs_base.py", line 913, in _convert_vol_ref_share_name_to_share_ip
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager vol_ref_share_ip = na_utils.resolve_hostname(share_split[0])
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/cinder/volume/drivers/netapp/utils.py", line 153, in resolve_hostname
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager res = socket.getaddrinfo(hostname, None)[0]
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/eventlet/support/greendns.py", line 504, in getaddrinfo
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager qname, addrs = _getaddrinfo_lookup(host, family, flags)
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager File "/usr/lib/python2.7/site-packages/eventlet/support/greendns.py", line 477, in _getaddrinfo_lookup
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager raise err
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager gaierror: [Errno -5] No address associated with hostname
2020-08-19 20:36:20.684 62 ERROR cinder.volume.manager
2020-08-19 20:36:20.689 62 ERROR cinder.volume.flows.manager.manage_existing [req-9174ea68-4394-4dec-8218-3fddd54a627f 71ee021f89c044dd8ff6ccfc3af4d9e4 7c282dc3b1f9459a84d92b5add3b8aec - default default] Volume 5185a08b-1fad-4c1f-9bab-c6345d506030: manage failed.

Tags: drivers netapp
Changed in cinder:
importance: Undecided → Medium
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.