Bug 1293881

Summary: Host installation fails with "java.lang.Integer cannot be cast to java.lang.String"
Product: [oVirt] ovirt-engine Reporter: Idan Shaby <ishaby>
Component: BLL.NetworkAssignee: Yevgeny Zaspitsky <yzaspits>
Status: CLOSED NEXTRELEASE QA Contact: Meni Yakove <myakove>
Severity: medium Docs Contact:
Priority: medium    
Version: 4.0.0CC: bugs, danken, stirabos, ylavi, yzaspits
Target Milestone: ovirt-4.0.0-alphaFlags: danken: ovirt-3.6.z?
rule-engine: planning_ack?
rule-engine: devel_ack+
rule-engine: testing_ack?
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard: network
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-01-08 08:43:15 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Network RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
engine.log none

Description Idan Shaby 2015-12-23 11:01:32 UTC
Created attachment 1108937 [details]
engine.log

Description of problem:
Trying to install a new host fails with the error "java.lang.Integer cannot be cast to java.lang.String":

2015-12-23 12:43:37,449 ERROR [org.ovirt.engine.core.vdsbroker.vdsbroker.CollectVdsNetworkDataAfterInstallationVDSCommand] (org.ovirt.thread.pool-9-thread-1) [4f3f234f] Failed in 'CollectVdsNetworkDataAfterInstallationVDS' method, for vds: 'host-with-local-storage-rhel'; host: 'host-with-local-storage-rhel': java.lang.Integer cannot be cast to java.lang.String
2015-12-23 12:43:37,450 ERROR [org.ovirt.engine.core.vdsbroker.vdsbroker.CollectVdsNetworkDataAfterInstallationVDSCommand] (org.ovirt.thread.pool-9-thread-1) [4f3f234f] Command 'CollectVdsNetworkDataAfterInstallationVDSCommand(HostName = host-with-local-storage-rhel, CollectHostNetworkDataVdsCommandParameters:{runAsync='true', hostId='e1931049-28ef-47f5-9caa-c372a6c80d3b', vds='Host[host-with-local-storage-rhel,e1931049-28ef-47f5-9caa-c372a6c80d3b]'})' execution failed: java.lang.Integer cannot be cast to java.lang.String

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

How reproducible:
100%

Steps to Reproduce:
1. Install a new host.
2. 
3.

Actual results:
Installation fails


Expected results:
Installation should work.

Additional info:
Engine log is attached.

Comment 1 Red Hat Bugzilla Rules Engine 2015-12-23 14:38:54 UTC
Fixed bug tickets must have version flags set prior to fixing them. Please set the correct version flags and move the bugs back to the previous status after this is corrected.

Comment 2 Dan Kenigsberg 2015-12-24 07:32:23 UTC
Vdsm commit 59ede0bcf176e08e1a194a3b52ecdf87adf41fd1
Author: Ido Barkan <ibarkan>
Date:   Mon Dec 14 13:56:26 2015 +0200

    net: MTU should be an integer all over VDSM.
    
has inadvertently broken existing Engines (I thought that they could handle both str and int). However, if we fix this in ovirt-engine-3.6.2, we can keep the Vdsm-side patch, since upcoming Vdsm is not expected to be manageable by pre-3.6 Engines.

Comment 3 Simone Tiraboschi 2016-01-07 18:00:57 UTC
Did you backported to 3.6.2?

Comment 4 Yevgeny Zaspitsky 2016-01-07 18:13:55 UTC
No.
AFAIK the problem was caused by the a VDSM change in master that wasn't backword compatible. Thus the problem has been fixed in master only. Also danken plans reverting the change in VDSM, so I'm not sure if the change has to be back-ported to 3.6.
Dan, what's your opinion on that?

Comment 5 Dan Kenigsberg 2016-01-08 08:43:15 UTC
Vdsm is already fixed on master by https://gerrit.ovirt.org/51164

I *wanted* to backport your fix to 3.6.2, but now it is too late. We'd have to carry the string mtu to 4.0.