Change in ovirt-engine[master]: Host Power-Management Refactor (#977674)

emesika at redhat.com emesika at redhat.com
Wed Dec 17 12:20:05 UTC 2014


Eli Mesika has submitted this change and it was merged.

Change subject: Host Power-Management Refactor (#977674)
......................................................................


Host Power-Management Refactor (#977674)

This patch refactors Power-Management to work with 'n' fence agents.

Fence agents now have their own table in the database. Each fence agent has an 'order'
field, and agents are run sequentially according to their order until the fence
operation  succeeds. When 2 or more agents have the same order they are run concurrently.

Power-Management health check was also modified to consider n agents.

API was enhanced to include 'n' or more agents. Now fence-agents have their
own API context: .../api/hosts/xxx/fenceagents. Agents can by added, updated and
deleted.

Change-Id: Id0b384347a52db8b0aa6ae684fad40a5491dd2f7
Signed-off-by: Ori Liel <oliel at redhat.com>
Signed-off-by: emesika <emesika at redhat.com>
---
A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddFenceAgentCommand.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVdsCommand.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ClearNonResponsiveVdsVmsCommand.java
A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/FenceAgentCommandBase.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/FenceExecutor.java
A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/FenceProxyLocator.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/FenceVdsBaseCommand.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetAgentFenceOptionsQuery.java
A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetFenceAgentByIdQuery.java
A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetFenceAgentsByVdsIdQuery.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetNewVdsFenceStatusQuery.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetVdsFenceStatusQuery.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitVdsOnUpCommand.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InstallVdsInternalCommand.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RegisterVdsQuery.java
A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveFenceAgentCommand.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RestartVdsCommand.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/StartVdsCommand.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/StopVdsCommand.java
A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateFenceAgentCommand.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateVdsCommand.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpgradeOvirtNodeInternalCommand.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VdsCommand.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VdsGroupOperationCommandBase.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VdsNotRespondingTreatmentCommand.java
A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/RemoveFenceAgentsByVdsIdCommand.java
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/pm/PmHealthCheckManager.java
A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/pm/PowerManagementHelper.java
A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/validator/FenceValidator.java
M backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/AddVdsCommandTest.java
M backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/UpdateVdsCommandTest.java
M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java
M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/AddVdsActionParameters.java
A backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/FenceAgentCommandParameterBase.java
M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/UpdateVdsActionParameters.java
M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java
M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdsOperationActionParameters.java
A backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/FenceAgent.java
D backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/FenceAgentOrder.java
M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VDS.java
M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VdsStatic.java
M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java
M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/GetNewVdsFenceStatusParameters.java
M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java
A backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSFenceReturnValue.java
M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSReturnValue.java
M backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/DbFacade.java
M backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/auditloghandling/AlertDirector.java
A backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/FenceAgentDAO.java
A backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/FenceAgentDaoDbFacadeImpl.java
M backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/VdsDAO.java
M backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/VdsDAODbFacadeImpl.java
M backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/VdsStaticDAODbFacadeImpl.java
M backend/manager/modules/dal/src/main/jdbc-resources/engine-daos.properties
M backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties
M backend/manager/modules/dal/src/main/resources/bundles/AuditLogMessages.properties
M backend/manager/modules/dal/src/main/resources/bundles/ExecutionMessages.properties
M backend/manager/modules/dal/src/main/resources/bundles/VdsmErrors.properties
M backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/VdsDAOTest.java
M backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/VdsStaticDAOTest.java
M backend/manager/modules/dal/src/test/resources/fixtures.xml
A backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/FenceAgentResource.java
A backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/FenceAgentsResource.java
M backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/HostResource.java
M backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/utils/LinkHelper.java
M backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd
M backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
A backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendFenceAgentResource.java
A backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendFenceAgentsResource.java
M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendHostResource.java
M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendHostsResource.java
M backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendHostResourceTest.java
A backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/DeprecatedPowerManagementMapper.java
A backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/FenceAgentMapper.java
M backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/HostMapper.java
A backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/utils/AgentComparator.java
A backend/manager/modules/restapi/types/src/test/java/org/ovirt/engine/api/restapi/types/DeprecatedPowerManagementMapperTest.java
M backend/manager/modules/restapi/types/src/test/java/org/ovirt/engine/api/restapi/types/HostMapperTest.java
M backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/pm/VdsFenceOptions.java
M backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/serialization/json/JsonObjectDeserializer.java
M backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/serialization/json/JsonObjectSerializer.java
D backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/serialization/json/JsonVDSMixIn.java
D backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/serialization/json/JsonVdsStaticMixIn.java
M backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/threadpool/ThreadPoolUtil.java
M backend/manager/modules/utils/src/test/java/org/ovirt/engine/core/utils/serialization/json/JsonObjectSerializationEntitiesTest.java
M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/FenceVdsVDSCommand.java
M frontend/webadmin/modules/gwt-common/src/main/resources/org/ovirt/engine/core/Common.gwt.xml
M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/Cloner.java
M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterGuideModel.java
M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterGuideModel.java
M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostListModel.java
M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/hosts/HostModel.java
M packaging/dbscripts/create_dwh_views.sql
M packaging/dbscripts/create_tables.sql
M packaging/dbscripts/create_views.sql
A packaging/dbscripts/fence_agents_sp.sql
A packaging/dbscripts/upgrade/03_06_0620_create_fence_agents_table.sql
M packaging/dbscripts/upgrade/post_upgrade/0010_add_object_column_white_list_table.sql
M packaging/dbscripts/vds_sp.sql
99 files changed, 3,770 insertions(+), 2,508 deletions(-)

Approvals:
  Eli Mesika: Verified; Looks good to me, approved



-- 
To view, visit http://gerrit.ovirt.org/27578
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Id0b384347a52db8b0aa6ae684fad40a5491dd2f7
Gerrit-PatchSet: 46
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Ori Liel <oliel at redhat.com>
Gerrit-Reviewer: Eli Mesika <emesika at redhat.com>
Gerrit-Reviewer: Liran Zelkha <lzelkha at redhat.com>
Gerrit-Reviewer: Martin Peřina <mperina at redhat.com>
Gerrit-Reviewer: Ori Liel <oliel at redhat.com>
Gerrit-Reviewer: Oved Ourfali <oourfali at redhat.com>
Gerrit-Reviewer: Ravi Nori <rnori at redhat.com>
Gerrit-Reviewer: Yair Zaslavsky <yzaslavs at redhat.com>
Gerrit-Reviewer: automation at ovirt.org
Gerrit-Reviewer: oVirt Jenkins CI Server



More information about the Engine-commits mailing list