Bug 1527828 - [BLOCKED on ovs-2.9.0-45] Failed to create OVN network names with unicode characters
Summary: [BLOCKED on ovs-2.9.0-45] Failed to create OVN network names with unicode cha...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: ovirt-provider-ovn
Classification: oVirt
Component: provider
Version: unspecified
Hardware: Unspecified
OS: Unspecified
high
medium
Target Milestone: ovirt-4.2.4
: ---
Assignee: Marcin Mirecki
QA Contact: Michael Burman
URL:
Whiteboard:
Depends On: 1502612 1547065
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-12-20 08:39 UTC by Mor
Modified: 2018-06-26 08:41 UTC (History)
7 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2018-06-26 08:41:32 UTC
oVirt Team: Network
Embargoed:
rule-engine: ovirt-4.2+
rule-engine: blocker+


Attachments (Terms of Use)
logs (544.74 KB, application/octet-stream)
2017-12-20 08:39 UTC, Mor
no flags Details
engine log with debug on (5.99 MB, text/plain)
2017-12-20 11:18 UTC, Mor
no flags Details

Description Mor 2017-12-20 08:39:02 UTC
Created attachment 1370346 [details]
logs

Description of problem:
When trying to create OVN network name with Hebrew characters, the operation fails with UI error: "Error while executing action AddNetworkOnProvider: Failed to communicate with the external provider, see log for additional details."

Version-Release number of selected component (if applicable):
openvswitch-2.7.3-2.git20171010.el7fdp.x86_64
ovirt-provider-ovn-1.2.2-1.el7ev.noarch
RHV 4.2.0.2-0.1.el7

How reproducible:
100%

Steps to Reproduce:
1. Try to create OVN network name with Hebrew characters.

Actual results:
Error in UI and ovirt-provider-ovn logs error:
2017-12-20 10:24:44,105   'UUID' object has no attribute 'uuid'
Traceback (most recent call last):
  File "/usr/share/ovirt-provider-ovn/handlers/base_handler.py", line 126, in _handle_request
    method, path_parts, content)
  File "/usr/share/ovirt-provider-ovn/handlers/selecting_handler.py", line 176, in handle_request
    return self.call_response_handler(handler, content, parameters)
  File "/usr/share/ovirt-provider-ovn/handlers/neutron.py", line 36, in call_response_handler
    return response_handler(ovn_north, content, parameters)
  File "/usr/share/ovirt-provider-ovn/handlers/neutron_responses.py", line 133, in post_networks
    network = nb_db.add_network(received_network)
  File "/usr/share/ovirt-provider-ovn/ovndb/ovn_north_mappers.py", line 59, in wrapper
    else f(wrapped_self, rest_data))
  File "/usr/share/ovirt-provider-ovn/ovndb/ovn_north_mappers.py", line 42, in wrapper
    return cls.rest2row(wrapped_self, f, rest_data, entity_id)
  File "/usr/share/ovirt-provider-ovn/ovndb/ovn_north_mappers.py", line 127, in rest2row
    vlan=provider_segmentation_id
  File "/usr/share/ovirt-provider-ovn/ovndb/ovn_north_mappers.py", line 70, in wrapper
    return cls.row2rest(data)
  File "/usr/share/ovirt-provider-ovn/ovndb/ovn_north_mappers.py", line 135, in row2rest
    NetworkMapper.REST_NETWORK_ID: str(network_row.uuid),
AttributeError: 'UUID' object has no attribute 'uuid'

engine.log:
2017-12-20 10:31:37,096+02 ERROR [org.ovirt.engine.core.bll.provider.network.AddNetworkOnProviderCommand] (default task-6) [0b34a175-499c-4fd7-a155-55b3c9764825] Command 'org.ovirt.engine.core.bll.provider.network.AddNetworkOnProviderCommand' failed: EngineException: (Failed with error PROVIDER_FAILURE and code 5050)
2017-12-20 10:31:37,114+02 ERROR [org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogDirector] (default task-6) [0b34a175-499c-4fd7-a155-55b3c9764825] EVENT_ID: NETWORK_ADD_NETWORK_FAILED(943), Failed to add Network בדיקה to Data Center: golden_env_mixed

Expected results:
Should work according to BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1476385

Additional info:

Comment 1 Marcin Mirecki 2017-12-20 10:05:46 UTC
Could you please collect the logs again changing the log level to DEBUG?
(/etc/ovirt-provider-ovn/logger.conf

Comment 2 Mor 2017-12-20 11:18:19 UTC
Created attachment 1370423 [details]
engine log with debug on

Comment 3 Marcin Mirecki 2017-12-21 15:28:41 UTC
This is an openvswitch bug.
It looks like it is fixed in 2.8, which we can not currently use due to the selinux issue.

Comment 4 Yaniv Kaul 2018-03-13 07:37:27 UTC
(In reply to Marcin Mirecki from comment #3)
> This is an openvswitch bug.
> It looks like it is fixed in 2.8, which we can not currently use due to the
> selinux issue.

Where's the bug on getting OVS 2.8 to our channels, or are we taking it from RHEL (which should also have a BZ for it). In short, where's the dependency?

Comment 5 Mor 2018-03-27 12:34:16 UTC
Assigning the back back. 

I still fail in creating a unicode name with OVS 2.9:
openvswitch-2.9.0-1.el7fdp.x86_64
python-openvswitch-2.9.0-1.el7fdp.noarch
openvswitch-ovn-central-2.9.0-1.el7fdp.x86_64
openvswitch-ovn-common-2.9.0-1.el7fdp.x86_64

ovirt-provider-ovn-1.2.9-1.el7ev.noarch

ovirt-provider-ovn.log:
2018-03-27 13:26:11,341 root Uncaught exception
Traceback (most recent call last):
  File "/usr/share/ovirt-provider-ovn/ovirt_provider_ovn.py", line 62, in run_with_except_hook
    run_original(*args2, **kwargs2)
  File "/usr/lib64/python2.7/threading.py", line 765, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/lib/python2.7/site-packages/ovsdbapp/backend/ovs_idl/connection.py", line 96, in run
    self.idl.run()
  File "/usr/lib/python2.7/site-packages/ovs/db/idl.py", line 179, in run
    assert not self.txn
AssertionError

Comment 6 Mor 2018-03-27 12:34:40 UTC
* bug back.

Comment 7 Marcin Mirecki 2018-05-15 13:59:22 UTC
Ovs bugs pending release.
Build should be done on 18-06

Comment 8 Sandro Bonazzola 2018-06-01 07:17:33 UTC
(In reply to Marcin Mirecki from comment #7)
> Ovs bugs pending release.
> Build should be done on 18-06

If we need to wait 18-06 please mark this as blocker since after next week build only blockers will be accepted.

Comment 9 Sandro Bonazzola 2018-06-05 10:00:24 UTC
Proposing as blocker as per assignee request

Comment 10 Marcin Mirecki 2018-06-05 10:11:15 UTC
marked as blocker

Comment 11 Marcin Mirecki 2018-06-08 11:33:52 UTC
The issue is fixed in the coming Jun18th OVS build.
Until the build is available, the fix can be tested with one of the available ovs build, for example:
  https://brewweb.engineering.redhat.com/brew/buildinfo?buildID=706535

Comment 12 Michael Burman 2018-06-19 09:36:35 UTC
It's now possible to create ovn network with unicode characters(hebrew included).
Via the UI and REST

Network created successfully and reported on ovn provider

{
    "network": {
        "name": "שתיים"

    }
}

switch be4e99c4-171e-4d18-8ea3-d5ffd2c5d4aa (שתיים)
switch 1a3f0370-85b0-4db9-80b3-0fe909691528 (נסיוןבעברית)

The same possible for subnets via REST, but not via the UI, we still have a validation in the UI for unicode characters that we need to remove, because via rest it allowed and works as expected. 

Verified on - 4.2.4.4-0.1.el7_3 with openvswitch-2.9.0-45.el7fdp.x86_64
openvswitch-ovn-common-2.9.0-45.el7fdp.x86_64
openvswitch-ovn-central-2.9.0-45.el7fdp.x86_64

Comment 13 Michael Burman 2018-06-19 12:31:39 UTC
Created new bug for subnet with unicode characters via the UI - BZ 1592842

Comment 14 Sandro Bonazzola 2018-06-26 08:41:32 UTC
This bugzilla is included in oVirt 4.2.4 release, published on June 26th 2018.

Since the problem described in this bug report should be
resolved in oVirt 4.2.4 release, it has been closed with a resolution of CURRENT RELEASE.

If the solution does not work for you, please open a new bug report.


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