cloudstack-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "howie yu (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CLOUDSTACK-5526) LibvirtDomainXMLParser
Date Tue, 17 Dec 2013 10:16:07 GMT
howie yu created CLOUDSTACK-5526:
------------------------------------

             Summary: LibvirtDomainXMLParser 
                 Key: CLOUDSTACK-5526
                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-5526
             Project: CloudStack
          Issue Type: Bug
      Security Level: Public (Anyone can view this level - this is the default.)
          Components: KVM
    Affects Versions: 4.4.0
         Environment: CentOS 6.4 with KVM 0.1002
Libvirt 0.5.1
            Reporter: howie yu
            Priority: Trivial


When using LibvirtDomainXMLParser  parser xml from Domain.
The attribute diskCacheMode not always have value , and will be empty string

 String diskCacheMode = getAttrValue("driver", "cache", disk);

when the code go to here valueOf

} else if (type.equalsIgnoreCase("block")) {
                        def.defBlockBasedDisk(diskDev, diskLabel,
                            DiskDef.diskBus.valueOf(bus.toUpperCase()));
                        def.setCacheMode(DiskDef.diskCacheMode.valueOf(diskCacheMode));
}

There will be cause IllegalArgumentException at 
at java.lang.Enum.valueOf(Enum.java:196)

I suggest we may check if diskCacheMode is empty string , such as

if (diskCacheMode == null || diskCacheMode.isEmpty()) {
	def.setCacheMode(DiskDef.diskCacheMode.NONE);
} else {					

def.setCacheMode(DiskDef.diskCacheMode.valueOf(diskCacheMode));

}






--
This message was sent by Atlassian JIRA
(v6.1.4#6159)

Mime
View raw message