You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
(VGPU ref → GPU_group ref) map vgpu_map | Map of source vGPU to destination GPU group
When the vgpu_map parameter is missing, the migrate_send call is still processed and completes well if there's no vgpu. However a warning appears in the logs ("cannot marshall arguments"):
/var/log/xensource.log.1:35182:Jul 15 15:06:55 <host> xapi: [ warn|<host>|178440 |Async.VM.migrate_send R:3793418e587b|rbac_audit] cannot marshall arguments for the action VM.migrate_send: name and value list lengths don't match. str_names=[session_id,vm,dest,live,vdi_map,vif_map,options,vgpu_map,], xml_values=[S(OpaqueRef:934aaee6-cf8e-436f-8396-ae93d8745db6),S(OpaqueRef:06934e5f-04ca-4ff9-96a8-fe8a244d4fce),{SM:S(http://<ip>/services/SM?session_id=OpaqueRef:2b31dd59-acf2-473c-8c04-c3040b8a1301);host:S(OpaqueRef:076a9aca-5df0-47dc-a050-21fbb96abfda);xenops:S(http://<ip>/services/xenops?session_id=OpaqueRef:2b31dd59-acf2-473c-8c04-c3040b8a1301);session_id:S(OpaqueRef:2b31dd59-acf2-473c-8c04-c3040b8a1301);master:S(http://<ip>/)},B(true),{OpaqueRef:b622ba46-ea56-4a27-80a4-fce6e5e6d7d3:S(OpaqueRef:b9c12444-c03d-4808-980c-d64c220465c4)},{},{force:S(true)},]
From what I understand, either the argument is mandatory and then the API call should fail without it, or it is optional and then an empty map should be added to avoid the error.
The text was updated successfully, but these errors were encountered:
The problem seems to be here: https://github.com/xapi-project/xen-api/blob/v1.184.0/ocaml/xapi/rbac_audit.ml#L360-L394
The code uses a fold_right2 which requires matching list lengths, and if there are any optional arguments then it gives up, warns and returns the empty list. It is not specific to this API call, should happen on any API call with optional arguments.
From the API docs:
When the
vgpu_map
parameter is missing, themigrate_send
call is still processed and completes well if there's no vgpu. However a warning appears in the logs ("cannot marshall arguments"):From what I understand, either the argument is mandatory and then the API call should fail without it, or it is optional and then an empty map should be added to avoid the error.
The text was updated successfully, but these errors were encountered: