Description of problem: <mac_pool href= is missing under /api/datacenters/ In 4.1 API V3 <mac_pool href> is missing from /api/datacenters/ The <mac_pool href> is available when accessing specific dc /api/datacenters/<datacenter_id> Version-Release number of selected component (if applicable): rhevm-4.1.0.4-0.1.el7.noarch Steps to Reproduce: 1. 2. 3. From 4.1 API V3: <data_centerhref="/ovirt-engine/api/datacenters/54959610-289f-4f8c-96b3-03d3665b3f93"id="54959610-289f-4f8c-96b3-03d3665b3f93"> <name>mac_pool_dc_1</name> <linkhref="/ovirt-engine/api/datacenters/54959610-289f-4f8c-96b3-03d3665b3f93/permissions"rel="permissions"/> <linkhref="/ovirt-engine/api/datacenters/54959610-289f-4f8c-96b3-03d3665b3f93/clusters"rel="clusters"/> <linkhref="/ovirt-engine/api/datacenters/54959610-289f-4f8c-96b3-03d3665b3f93/networks"rel="networks"/> <linkhref="/ovirt-engine/api/datacenters/54959610-289f-4f8c-96b3-03d3665b3f93/storagedomains"rel="storagedomains"/> <linkhref="/ovirt-engine/api/datacenters/54959610-289f-4f8c-96b3-03d3665b3f93/qoss"rel="qoss"/> <linkhref="/ovirt-engine/api/datacenters/54959610-289f-4f8c-96b3-03d3665b3f93/quotas"rel="quotas"/> <linkhref="/ovirt-engine/api/datacenters/54959610-289f-4f8c-96b3-03d3665b3f93/iscsibonds"rel="iscsibonds"/> <local>false</local> <quota_mode>disabled</quota_mode> <status>uninitialized</status> <supported_versions> <version> <major>4</major> <minor>1</minor> </version> </supported_versions> <version> <major>4</major> <minor>1</minor> </version> </data_center> </data_centers> From 4.0 API V3: <data_centerhref="/ovirt-engine/api/datacenters/7bc6f043-6890-445e-8bf1-fcf1baa73902"id="7bc6f043-6890-445e-8bf1-fcf1baa73902"> <name>golden_env_mixed</name> <linkhref="/ovirt-engine/api/datacenters/7bc6f043-6890-445e-8bf1-fcf1baa73902/storagedomains"rel="storagedomains"/> <linkhref="/ovirt-engine/api/datacenters/7bc6f043-6890-445e-8bf1-fcf1baa73902/clusters"rel="clusters"/> <linkhref="/ovirt-engine/api/datacenters/7bc6f043-6890-445e-8bf1-fcf1baa73902/networks"rel="networks"/> <linkhref="/ovirt-engine/api/datacenters/7bc6f043-6890-445e-8bf1-fcf1baa73902/permissions"rel="permissions"/> <linkhref="/ovirt-engine/api/datacenters/7bc6f043-6890-445e-8bf1-fcf1baa73902/quotas"rel="quotas"/> <linkhref="/ovirt-engine/api/datacenters/7bc6f043-6890-445e-8bf1-fcf1baa73902/qoss"rel="qoss"/> <linkhref="/ovirt-engine/api/datacenters/7bc6f043-6890-445e-8bf1-fcf1baa73902/iscsibonds"rel="iscsibonds"/> <local>false</local> <storage_format>v3</storage_format> <versionmajor="4"minor="0"/> <supported_versions> <versionmajor="4"minor="0"/> </supported_versions> <status> <state>up</state> </status> <mac_poolhref="/ovirt-engine/api/macpools/5899d284-0047-02cc-015c-0000000002dc"id="5899d284-0047-02cc-015c-0000000002dc"/> <quota_mode>disabled</quota_mode> </data_center> </data_centers>
This happens will all versions of the API, not just with version 3. The reason is that when using search the backend doesn't return the identifier of the MAC pool. The API uses search to retrieve the collection (SearchType.StoragePool) and a query (VdcQueryType.GetStoragePoolById) to retrieve a specific data center. The expectation is that be backedn will return the same type of object, and the same set of attributes, for both things. In this case that expectation is broken.
This bug report has Keywords: Regression or TestBlocker. Since no regressions or test blockers are allowed between releases, it is also being identified as a blocker for this release. Please resolve ASAP.
pwd /home/mmucha/projects/ovirt-engine/packaging/dbscripts/upgrade git co ovirt-engine-4.1 Switched to branch 'ovirt-engine-4.1' ls 04_01_0010_add_mac_pool_id_to_vds_group.sql 04_01_0010_add_mac_pool_id_to_vds_group.sql git co ovirt-engine-4.0 Switched to branch 'ovirt-engine-4.0' ls 04_01_0010_add_mac_pool_id_to_vds_group.sql ls: cannot access 04_01_0010_add_mac_pool_id_to_vds_group.sql: No such file or directory ==> between these two version this script were introduced. With it was introduced new logic: MacPool is not property of datacenter, but cluster. It will be reported on DC in 'best-effort' way. If we can calculate single mac pool value for whole DC, this will be reported. If we cannot do that, we won't report mac pool for DC. We can report single mac pool for whole DC, if every cluster in that DC has same mac pool. So I believe, that here must be difference in your setups. The 4.1 one has 2 or more clusters with different mac pool assigned. Is it like that? Please confirm. If so, then CLOSE->NOTABUG I believe.
I have a DC with two clusters that use 'Default' MAC pool and I still don't have it under /api/datacenters <data_centerhref="/ovirt-engine/api/datacenters/18a899cb-9a51-45a3-99fd-eca0e3770e77"id="18a899cb-9a51-45a3-99fd-eca0e3770e77"> <name>golden_env_mixed</name> <linkhref="/ovirt-engine/api/datacenters/18a899cb-9a51-45a3-99fd-eca0e3770e77/permissions"rel="permissions"/> <linkhref="/ovirt-engine/api/datacenters/18a899cb-9a51-45a3-99fd-eca0e3770e77/networks"rel="networks"/> <linkhref="/ovirt-engine/api/datacenters/18a899cb-9a51-45a3-99fd-eca0e3770e77/storagedomains"rel="storagedomains"/> <linkhref="/ovirt-engine/api/datacenters/18a899cb-9a51-45a3-99fd-eca0e3770e77/clusters"rel="clusters"/> <linkhref="/ovirt-engine/api/datacenters/18a899cb-9a51-45a3-99fd-eca0e3770e77/quotas"rel="quotas"/> <linkhref="/ovirt-engine/api/datacenters/18a899cb-9a51-45a3-99fd-eca0e3770e77/iscsibonds"rel="iscsibonds"/> <linkhref="/ovirt-engine/api/datacenters/18a899cb-9a51-45a3-99fd-eca0e3770e77/qoss"rel="qoss"/> <local>false</local> <storage_format>v4</storage_format> <versionmajor="4"minor="1"/> <supported_versions> <versionmajor="4"minor="1"/> </supported_versions> <status> <state>up</state> </status> <quota_mode>disabled</quota_mode> </data_center> </data_centers>
FYI, from my test on master (4.2) the mac_pool element appears in both versions (v3 and v4).
same result on the latest 4.1 branch
Verified on: Red Hat Virtualization Manager Version: 4.1.2-0.1.el7 See output: <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <data_centers> <data_center href="/ovirt-engine/api/datacenters/00000001-0001-0001-0001-000000000311" id="00000001-0001-0001-0001-000000000311"> <name>Default</name> <description>The default Data Center</description> <link href="/ovirt-engine/api/datacenters/00000001-0001-0001-0001-000000000311/networks" rel="networks"/> <link href="/ovirt-engine/api/datacenters/00000001-0001-0001-0001-000000000311/storagedomains" rel="storagedomains"/> <link href="/ovirt-engine/api/datacenters/00000001-0001-0001-0001-000000000311/permissions" rel="permissions"/> <link href="/ovirt-engine/api/datacenters/00000001-0001-0001-0001-000000000311/clusters" rel="clusters"/> <link href="/ovirt-engine/api/datacenters/00000001-0001-0001-0001-000000000311/quotas" rel="quotas"/> <link href="/ovirt-engine/api/datacenters/00000001-0001-0001-0001-000000000311/iscsibonds" rel="iscsibonds"/> <link href="/ovirt-engine/api/datacenters/00000001-0001-0001-0001-000000000311/qoss" rel="qoss"/> <local>false</local> <quota_mode>disabled</quota_mode> <status>uninitialized</status> <supported_versions> <version> <major>4</major> <minor>1</minor> </version> </supported_versions> <version> <major>4</major> <minor>1</minor> </version> <mac_pool href="/ovirt-engine/api/macpools/58dbbb44-02cf-0122-00e1-00000000014e" id="58dbbb44-02cf-0122-00e1-00000000014e"/> </data_center> <data_center href="/ovirt-engine/api/datacenters/a9174c01-08de-4674-8def-6e142fe0209c" id="a9174c01-08de-4674-8def-6e142fe0209c"> <name>golden_env_mixed</name> <link href="/ovirt-engine/api/datacenters/a9174c01-08de-4674-8def-6e142fe0209c/networks" rel="networks"/> <link href="/ovirt-engine/api/datacenters/a9174c01-08de-4674-8def-6e142fe0209c/storagedomains" rel="storagedomains"/> <link href="/ovirt-engine/api/datacenters/a9174c01-08de-4674-8def-6e142fe0209c/permissions" rel="permissions"/> <link href="/ovirt-engine/api/datacenters/a9174c01-08de-4674-8def-6e142fe0209c/clusters" rel="clusters"/> <link href="/ovirt-engine/api/datacenters/a9174c01-08de-4674-8def-6e142fe0209c/quotas" rel="quotas"/> <link href="/ovirt-engine/api/datacenters/a9174c01-08de-4674-8def-6e142fe0209c/iscsibonds" rel="iscsibonds"/> <link href="/ovirt-engine/api/datacenters/a9174c01-08de-4674-8def-6e142fe0209c/qoss" rel="qoss"/> <local>false</local> <quota_mode>disabled</quota_mode> <status>up</status> <storage_format>v4</storage_format> <supported_versions> <version> <major>4</major> <minor>1</minor> </version> </supported_versions> <version> <major>4</major> <minor>1</minor> </version> <mac_pool href="/ovirt-engine/api/macpools/58dbbb44-02cf-0122-00e1-00000000014e" id="58dbbb44-02cf-0122-00e1-00000000014e"/> </data_center> </data_centers>