I think Wido already fixed this issue in the following commit
https://git-wip-us.apache.org/repos/asf?p=cloudstack.git;a=commit;h=088247b61b4ecea7bb757becd233e10c97a7a75a


2013/12/17 howie yu (JIRA) <j...@apache.org>

> 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)
>

Reply via email to