Изменение размера VDI api не работает

Я разрабатываю Xen management webapp с Php. API переименования VDI (образ виртуального диска) и изменение размера API-интерфейсов очень похожи. Мне не удалось изменить размер VDI. Вы думаете, что я делаю неправильно здесь.

Функция переименования:

function xenapi_set_vdi_name($session, $ref, $name) { $conn = $session[0]; $sess = new xmlrpcval($session[1]); $vdi = new xmlrpcval($ref); $name = new xmlrpcval($name); $msg = new xmlrpcmsg("VDI.set_name_label", array($sess, $vdi, $name)); $res = $conn->send($msg); if ($res->faultcode()) return false; $val = $res->value(); $status = $val->structmem("Status"); if ($status->scalarval() != "Success") return false; $value = $val->structmem("Value"); return $value->scalarval(); } 

Переименование рабочего использования:

 ... xenapi_set_vdi_name($session, $vdi, "NewNameToMyVDI"); ... 

Функция изменения размера:

 function xenapi_set_vdi_virtual_size($session, $ref, $size) { $conn = $session[0]; $sess = new xmlrpcval($session[1]); $vdi = new xmlrpcval($ref); $size = new xmlrpcval($size); $msg = new xmlrpcmsg("VDI.set_virtual_size", array($sess, $vdi, $size)); $res = $conn->send($msg); if ($res->faultcode()) return false; $val = $res->value(); $status = $val->structmem("Status"); if ($status->scalarval() != "Success") return false; $value = $val->structmem("Value"); return $value->scalarval(); } 

Не работает изменение размера:

 ... $size = '27011707392'; settype($size, "integer"); xenapi_set_vdi_virtual_size($session, $vdi, $size); ... 

Новое значение размера работает с командой XEN на физическом сервере как:

 xe vdi-resize uuid="91fe671c-93e1-4162-8128-96fedc3c215c" disk-size="27011707392"