Vcloud Director, DB compatibility mess

I’m on VCD 9.1 with external MSSQL 2016. I need to update to VCD 9.7. Since i want later to migrate to the VCD Appliance i have to migrate the current MSSQL DB to Postgres. But VCD 9.5 and 9.7 are quite rigid regarding Postgres version support. Only Postgres v10 and v9.5 are supported

Now…Release FAQ for 9.5 stated

>vCloud Director 9.5 is the last release to support MS SQL as the vCloud Director Database. Going forward only PostgreSQL database will be supported. 

But VCD 9.7 supports MSSQL 2017 again.

But…Migrating VCD 9.1 DB from MSSQL to our Postgres cluster generates an error about version mismatch.

>WARNING: The provided target PostgreSQL database version is greater than all supported versions. Database migration may work with this version but is not supported. Supported: 10.9 Found: [9 Continue with migration anyway? [Y/N] (Default: N)y Finished clearing tables for migration. Beginning database migration.

I run Postgres v10.9. After asking support they’ve answered that if i want later to migrate VCD to the VCD appliance i should migrate to 10.6 or below – which is old and obvisouly i cant roll back the Postgres cluster…

Even if i do first the VCD 9.5 update and after that the MSSQL to Postgres Migration i run into the same issue.

Kind of stupid rigid version compatbility to Postgres….

View Reddit by tomsonxxxView Source


To see the full content, share this page by clicking one of the buttons below

Related Articles


  1. > After asking support they’ve answered that if i want later to migrate VCD to the VCD appliance i should migrate to 10.6 or below

    This is **not** accurate. For PostgreSQL 10 we have *never* specified a minor version, we have *always* supported 10.anything in vCD 9.1 and beyond, in fact we’ve *never* specified a minor version for postgres[1]. e.g. for 9.7 our interop matrix[2] clearly indicates support for “PostgreSQL 10” (i.e. not 10.6 or 10.9 or any other minor version of 10).

    As for the warning (not error) about version mismatch you can safely ignore that (as it appears you did), it is something that was present in very old versions of the migrator but has since been removed (i.e. we now only do a min version check, not a max version).

    If the migration completed successfully that’s terrific, but if not, I would suggest upgrading to a new vCD version (9.5. or 9.7) and _then_ migrating (since newer versions of vCD include improvements/changed to the migrator).

    [1] Postgres changed their versioning scheme starting in their version 10. Prior to that the major version was indicated by x.y, e.g. 9.5 and 9.6 represent two different major versions, a minor version would be for example 9.5.1 or 9.5.2, if you look at our old interop matrixes when we supported 9.5 you’ll note it just sated 9.5, not a specific 9.5.x, with 10+ they changed it to the more common (and sensible) first digit representing a major release (e.g. 10 and 11 are major releases) and our interop matrix we specify 10 because you are free to use whatever minor version of 10 you prefer (hopefully a recent one though!), see also https://www.postgresql.org/support/versioning/

    [2] https://www.vmware.com/resources/compatibility/sim/interop_matrix.php#db&224=3101

  2. Yeah I know what you mean. This is a strange dependency.

    That’s why we updated our Linux VCD first to 9.7 (also with external MSSQL still in use) and in a second step we parallel deployed VCD 9.7 Appliances. Then we migrated the MSSQL to the internal Postgres and switched to the Appliances.

    See docs at [https://docs.vmware.com/en/vCloud-Director/9.7/com.vmware.vcloud.install.doc/GUID-09AC43D7-A2C5-4A8C-B2D8-E1295E31E668.html](https://docs.vmware.com/en/vCloud-Director/9.7/com.vmware.vcloud.install.doc/GUID-09AC43D7-A2C5-4A8C-B2D8-E1295E31E668.html)

Leave a Reply