We are using both the VMware VDDK 1.1.1 API and the VIX API from our backup
application.
VDDK 1.1.1 and VIX 1.6.2 coexisted fine, used from the same Windows executable.
However, since upgrading to VIX 1.8.1, the VDDK's VixDiskLib_Open fro write crashes with the following stacktrace:
vixDiskLibVim.dll!039342c9() vixDiskLibVim.dll!03934c12() gvmomi.dll!1110bb61() libcurl.dll!00368704() libcurl.dll!0036908f() gvmomi.dll!1110b88a() gvmomi.dll!1110b96a() gvmomi.dll!111034a4() gvmomi.dll!11105ad3() gvmomi.dll!1110401c() gvmomi.dll!11105bbb() vixDiskLibVim.dll!039339d9() vixDiskLibVim.dll!039346da() vixDiskLibVim.dll!039353dd() vixDiskLibVim.dll!0393445e() vixDiskLibVim.dll!039341d6() vixDiskLib.dll!01c7217a() vixDiskLib.dll!01c73568() vixDiskLib.dll!01c737de()
This occurs when the VDDK is used with either VIX 1.8.1 or VIX 1.10b
The VDDK and VIX have a few third party libraries in common, but
different versions of them:
vix 1.8.1 vddk 1.1.1 ----------------------- glib-2.0.dll 2.16.4.0 2.12.12.0 gobject-2.0.dll 2.16.4.0 2.12.12.0 gthread-2.0.dll 2.16.4.0 2.12.12.0 gvmomi.dll 6.5.0.8977 iconv.dll 1.9.0.0 1.9.0.0 intl.dll 0.14.6.0 0.14.5.0 libcurl.dll libeay32.dll 0.9.8.9 liblber.dll libldap_r.dll libxml2.dll ssleay32.dll 0.9.8.9
The VDDK has older libraries.
One would hope that merging the two, and where they are common, using the newer third party dlls that come with VIX would work, but that gives the crash above.
The other way around, using the older common dlls from the VDDK of course results in missing symbols:
vix.dll requires gvmomi.dll gvmomi_quark_version_vim25_2_5u2server
which the VDDK's gvmomi.dll does not have.
Are there compatible distros of the VDDK and VIX that have the same third party dependencies?
Anyone else use VDDK and VIX from the same executable?
The problem is that 1.1.1 does not yet support the latest vSphere version. The next vddk version will have 2.16.4 glib.
Thanks
Sudarsan
Thank you Sudarsan
I have heard from VMware SDK Developer Support that "the fix for this issue is expected to be made available in future VIX API release ... This would require users to initialize the VDDK library first, and then call VixHost_Connect. VIX has been modified to work properly after VDDK is initialized."
I understand that the future release of VIX will fix the library conflict, and that a future version of the VDDK will support the latest vSphere version (4.1)?
Thank you
-- Peter
Latest version 1.10 of vix api was released last week. Please download the latest vix and see if it solves the issue.
-Thanks
Sankar.