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
It is possible for Managed Object References to be returned with an empty string for the ServerGUID field.
I am not sure whether this is a problem with the SOAP response serialization or if its just they way some of the VC APIs work.
In any case the new WaitEx method filters incoming updates by matching the entire Managed Object Reference.
This means that if the ServerGUID field is an empty string the entire update is filtered out.
Describe the bug
It is possible for Managed Object References to be returned with an empty string for the
ServerGUID
field.I am not sure whether this is a problem with the SOAP response serialization or if its just they way some of the VC APIs work.
In any case the new
WaitEx
method filters incoming updates by matching the entire Managed Object Reference.This means that if the
ServerGUID
field is an empty string the entire update is filtered out.This is the exact line where the the filtering occurs
https://github.com/vmware/govmomi/blob/main/task/wait.go#L144
WaitEx
was introduced in #3331The original Wait method did not have the MOR comparison
To Reproduce
Steps to reproduce the behavior:
The bug is easily reproducibly by using govc
datastore.disk.info
Reverting #3331 or modifying the MOR comparison to just check the Value field
resolves the problem.
Expected behavior
WaitEx should not drop valid updates and should not cause the execution to hang for the duration of the default timeout
Affected version
Latest code from the main branch
Screenshots/Debug Output
N/A
Additional context
This issue is the root cause for hashicorp/terraform-provider-vsphere#2162
The text was updated successfully, but these errors were encountered: