Bug 1302358 - File Storage domain export path does not support [IPv6]:/path input
Summary: File Storage domain export path does not support [IPv6]:/path input
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: vdsm
Classification: oVirt
Component: General
Version: 4.20.0
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: ovirt-4.1.1
: 4.19.5
Assignee: Idan Shaby
QA Contact: Elad
URL:
Whiteboard:
: 1302356 (view as bug list)
Depends On:
Blocks: RHEV_IPv6
TreeView+ depends on / blocked
 
Reported: 2016-01-27 15:24 UTC by Edward Haas
Modified: 2017-04-21 09:47 UTC (History)
7 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2017-04-21 09:47:54 UTC
oVirt Team: Storage
Embargoed:
rule-engine: ovirt-4.1+
danken: testing_plan_complete?


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
oVirt gerrit 56538 0 master MERGED webadmin: Refactor validations to cope with IPv6 addresses 2016-05-05 12:00:05 UTC
oVirt gerrit 56539 0 master MERGED engine: Allow IPv6 in NFS mount points 2016-05-05 12:00:31 UTC
oVirt gerrit 58938 0 master MERGED tests: add tests for file domains' lookup 2017-02-01 14:16:35 UTC
oVirt gerrit 69835 0 master MERGED fileSD: escape values passed to glob.glob 2017-02-01 14:39:13 UTC
oVirt gerrit 70473 0 master MERGED compat: add glob.escape from Python 3.6 2017-01-30 21:10:57 UTC
oVirt gerrit 71575 0 ovirt-4.1 MERGED compat: add glob.escape from Python 3.6 2017-02-06 14:42:52 UTC
oVirt gerrit 71576 0 ovirt-4.1 MERGED tests: add tests for file domains' lookup 2017-02-06 14:42:56 UTC
oVirt gerrit 71577 0 ovirt-4.1 MERGED fileSD: escape values passed to glob.glob 2017-02-06 14:42:49 UTC

Description Edward Haas 2016-01-27 15:24:44 UTC
Description of problem:
When creating a new Storage Domain, the export path cannot be edited with an IPv6 address.
The format should be [IPv6 Address]:/path, e.g [201::1]:/path

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

How reproducible:
Try to add a new storage domain with an IPv6 address/

Steps to Reproduce:
1. Open Storage tab.
2. Click New Domain
3. Edit in 'Export Path' textbox something like: [201::1]:/my/folder
4. Try to add the domain.

Actual results:
Error on the textbox: NFS mount path is illegal...

Expected results:
To accept the address and connect to the storage.

Additional info:
Should work with all storage types.
It is part of the IPv6 task.
With an FQDN that points to an IPv6 address, it works fine.

Comment 1 Tal Nisan 2016-01-31 17:31:47 UTC
*** Bug 1302356 has been marked as a duplicate of this bug. ***

Comment 2 Yevgeny Zaspitsky 2016-04-20 10:43:40 UTC
org.ovirt.engine.ui.uicommonweb.validation.LinuxMountPointValidation should be updated in order to validate IPv6 containing URLs properly.

Comment 3 Idan Shaby 2017-01-05 16:54:08 UTC
It looks like this bug is only about the webadmin for some reason.
If I got it right, it is not possible to add a file domain using an ipv6 address at all, and not only via the webadmin.
Am I right? Or have I got it wrong when trying to do it via the REST API?
If I am wrong, can you give an example for a REST API call to add an file domain?

Comment 4 Idan Shaby 2017-01-09 07:44:52 UTC
The problem seems to reside in vdsm.
Updating the BZ.

Comment 5 Idan Shaby 2017-01-09 08:04:04 UTC
In more details:
It seems that oop.getProcessPool(possibleDomain)... in fileSD - scanDomains -> collectMetaFile doesn't return the metaFiles because the '[' and ']' are not escaped.
The exact same bug occurred when I tried to create a domain with a name like "the[new]sd". We need to escape the '[]' characters because when trying to find what the sd dir contains I think that vdsm treats the '[]' as a part of a regex, and since it cannot find the dir it complains that the storage domain does not exist.

Comment 6 Idan Shaby 2017-03-07 06:51:16 UTC
Until this bug was solved, file domains could not be created using IPV6 addresses. Therefore, this will probably require creating new automation tests by QE.
Raz, can you please make sure that it happens?

Comment 7 Raz Tamir 2017-03-10 15:04:53 UTC
Sure

Comment 8 Elad 2017-03-12 11:38:16 UTC
IPv6 export path is accepted. ConnectStorageServer is executed using the correct path including the IPv6 address of the NFS server.  

2017-03-12 13:32:15,311+02 INFO  [org.ovirt.engine.core.vdsbroker.vdsbroker.ConnectStorageServerVDSCommand] (default task-28) [b6c72be6-776b-4b6c-a044-f80317eed34e] START, ConnectStorageServerVDSCommand(HostName
 = host_mixed_1, StorageServerConnectionManagementVDSParameters:{runAsync='true', hostId='652a6dec-7c2d-423e-9b9b-abcb4c29d04f', storagePoolId='00000000-0000-0000-0000-000000000000', storageType='NFS', connectio
nList='[StorageServerConnections:{id='null', connection='[fe80::21b:21ff:fe75:35fb]:/Storage_NFS/elad/2', iqn='null', vfsType='null', mountOptions='null', nfsVersion='AUTO', nfsRetrans='null', nfsTimeo='null', i
face='null', netIfaceName='null'}]'}), log id: 33dd9a16



Used:
rhevm-4.1.1.3-0.1.el7.noarch
vdsm-4.19.7-1.el7ev.x86_64


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