Bring javelin back to the status of being able to start System VMs after another round of master branch merge

This commit is contained in:
Kelven Yang 2013-01-18 19:15:09 -08:00
parent d056cd5cab
commit 2c5859dbd4
29 changed files with 59 additions and 239 deletions

View File

@ -32,11 +32,24 @@
<!--
Configurable components
Compose a CloudStack deployment with selected components here
-->
<bean id="databaseUpgradeChecker" class="com.cloud.upgrade.DatabaseUpgradeChecker" />
<bean id="management-server" class ="com.cloud.server.ManagementServerExtImpl" />
<bean id="configuration-server" class="com.cloud.server.ConfigurationServerImpl" />
<bean id="clusterManagerImpl" class="com.cloud.cluster.ClusterManagerImpl" />
<bean id="clusteredAgentManagerImpl" class="com.cloud.agent.manager.ClusteredAgentManagerImpl" />
<bean id="clusteredVirtualMachineManagerImpl" class="com.cloud.vm.ClusteredVirtualMachineManagerImpl" />
<bean id="highAvailabilityManagerExtImpl" class="com.cloud.ha.HighAvailabilityManagerExtImpl" />
<bean id="bareMetalVmManagerImpl" class="com.cloud.baremetal.BareMetalVmManagerImpl" />
<bean id="consoleProxyManagerImpl" class="com.cloud.consoleproxy.ConsoleProxyManagerImpl" />
<bean id="securityGroupManagerImpl2" class="com.cloud.network.security.SecurityGroupManagerImpl2" />
<bean id="premiumSecondaryStorageManagerImpl" class="com.cloud.secstorage.PremiumSecondaryStorageManagerImpl" />
<bean id="randomlyIncreasingVMInstanceDaoImpl" class="com.cloud.vm.dao.RandomlyIncreasingVMInstanceDaoImpl" />
<!--
Network Elements
-->

View File

@ -56,8 +56,10 @@ public class DataStoreProviderManagerImpl implements DataStoreProviderManager {
@Override
public boolean configure(String name, Map<String, Object> params)
throws ConfigurationException {
//TODO: hold global lock
throws ConfigurationException {
/*
//TODO: hold global lock
List<DataStoreProviderVO> providerVos = providerDao.listAll();
for (DataStoreProvider provider : providers) {
boolean existingProvider = false;
@ -82,6 +84,7 @@ public class DataStoreProviderManagerImpl implements DataStoreProviderManager {
provider.configure(params);
providerMap.put(uuid, provider);
}
*/
return true;
}

View File

@ -140,7 +140,6 @@ import edu.emory.mathcs.backport.java.util.Collections;
* ping.interval before announcing an agent has timed out | float | 2.0x || || router.stats.interval | interval to
* report router statistics | seconds | 300s || * }
**/
@Component
@Local(value = { AgentManager.class })
public class AgentManagerImpl implements AgentManager, HandlerFactory, Manager {
private static final Logger s_logger = Logger.getLogger(AgentManagerImpl.class);

View File

@ -88,8 +88,6 @@ import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.utils.nio.Link;
import com.cloud.utils.nio.Task;
@Component
@Primary
@Local(value = { AgentManager.class, ClusteredAgentRebalanceService.class })
public class ClusteredAgentManagerImpl extends AgentManagerImpl implements ClusterManagerListener, ClusteredAgentRebalanceService {
final static Logger s_logger = Logger.getLogger(ClusteredAgentManagerImpl.class);
@ -117,8 +115,6 @@ public class ClusteredAgentManagerImpl extends AgentManagerImpl implements Clust
// @com.cloud.utils.component.Inject(adapter = AgentLoadBalancerPlanner.class)
@Inject protected List<AgentLoadBalancerPlanner> _lbPlanners;
@Inject
protected AgentManager _agentMgr;
@Inject ConfigurationDao _configDao;
protected ClusteredAgentManagerImpl() {

View File

@ -105,8 +105,6 @@ import com.cloud.vm.VirtualMachineName;
import com.cloud.vm.VirtualMachineProfile;
import com.cloud.vm.VirtualMachineProfile.Param;
@Component
@Primary
@Local(value={BareMetalVmManager.class, BareMetalVmService.class})
public class BareMetalVmManagerImpl extends UserVmManagerImpl implements BareMetalVmManager, BareMetalVmService, Manager,
StateListener<State, VirtualMachine.Event, VirtualMachine> {

View File

@ -88,8 +88,6 @@ import com.cloud.utils.mgmt.JmxUtil;
import com.cloud.utils.net.NetUtils;
import com.google.gson.Gson;
@Component
@Primary
@Local(value = { ClusterManager.class })
public class ClusterManagerImpl implements ClusterManager {
private static final Logger s_logger = Logger.getLogger(ClusterManagerImpl.class);

View File

@ -32,7 +32,6 @@ import com.cloud.host.Status.Event;
import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.utils.net.MacAddress;
@Component
@Local(value={ClusterManager.class})
public class DummyClusterManagerImpl implements ClusterManager {
private static final Logger s_logger = Logger.getLogger(DummyClusterManagerImpl.class);

View File

@ -62,7 +62,6 @@ import com.cloud.vm.dao.ConsoleProxyDao;
import com.cloud.vm.dao.UserVmDao;
import com.cloud.vm.dao.VMInstanceDao;
@Component
@Local(value = { ConsoleProxyManager.class })
public class AgentBasedConsoleProxyManager implements ConsoleProxyManager, VirtualMachineGuru<ConsoleProxyVO>, AgentHook {
private static final Logger s_logger = Logger.getLogger(AgentBasedConsoleProxyManager.class);

View File

@ -28,7 +28,6 @@ import com.cloud.host.HostVO;
import com.cloud.info.ConsoleProxyInfo;
import com.cloud.vm.UserVmVO;
@Component
@Local(value={ConsoleProxyManager.class})
public class AgentBasedStandaloneConsoleProxyManager extends
AgentBasedConsoleProxyManager {

View File

@ -170,8 +170,6 @@ import com.google.gson.GsonBuilder;
// Starting, HA, Migrating, Running state are all counted as "Open" for available capacity calculation
// because sooner or later, it will be driven into Running state
//
@Component
@Primary
@Local(value = { ConsoleProxyManager.class, ConsoleProxyService.class })
public class ConsoleProxyManagerImpl implements ConsoleProxyManager, ConsoleProxyService, Manager, AgentHook, VirtualMachineGuru<ConsoleProxyVO>, SystemVmLoadScanHandler<Long>, ResourceStateAdapter {
private static final Logger s_logger = Logger.getLogger(ConsoleProxyManagerImpl.class);

View File

@ -33,7 +33,6 @@ import com.cloud.resource.ResourceManager;
import com.cloud.vm.VMInstanceVO;
import com.cloud.vm.dao.ConsoleProxyDao;
@Component
@Local(value={ConsoleProxyManager.class})
public class StaticConsoleProxyManager extends AgentBasedConsoleProxyManager implements ConsoleProxyManager {
String _ip = null;

View File

@ -32,8 +32,6 @@ import com.cloud.configuration.dao.ConfigurationDao;
import com.cloud.usage.dao.UsageJobDao;
import com.cloud.utils.db.Transaction;
@Component
@Primary
@Local(value={HighAvailabilityManager.class})
public class HighAvailabilityManagerExtImpl extends HighAvailabilityManagerImpl {

View File

@ -95,7 +95,6 @@ import com.cloud.vm.dao.VMInstanceDao;
* ha.retry.wait | time to wait before retrying the work item | seconds | 120 || || stop.retry.wait | time to wait
* before retrying the stop | seconds | 120 || * }
**/
@Component
@Local(value = { HighAvailabilityManager.class })
public class HighAvailabilityManagerImpl implements HighAvailabilityManager, ClusterManagerListener {
protected static final Logger s_logger = Logger.getLogger(HighAvailabilityManagerImpl.class);

View File

@ -1778,8 +1778,9 @@ public class NetworkModelImpl implements NetworkModel, Manager{
if (s_providerToNetworkElementMap.containsKey(implementedProvider.getName())) {
s_logger.error("Cannot start NetworkModel: Provider <-> NetworkElement must be a one-to-one map, " +
"multiple NetworkElements found for Provider: " + implementedProvider.getName());
return false;
continue;
}
s_logger.info("Add provider <-> element map entry. " + implementedProvider.getName() + "-" + element.getName() + "-" + element.getClass().getSimpleName());
s_providerToNetworkElementMap.put(implementedProvider.getName(), element.getName());
}
if (capabilities != null && implementedProvider != null) {

View File

@ -115,7 +115,6 @@ import com.cloud.vm.dao.VMInstanceDao;
import edu.emory.mathcs.backport.java.util.Collections;
@Component
@Local(value = { SecurityGroupManager.class, SecurityGroupService.class })
public class SecurityGroupManagerImpl implements SecurityGroupManager, SecurityGroupService, Manager, StateListener<State, VirtualMachine.Event, VirtualMachine> {
public static final Logger s_logger = Logger.getLogger(SecurityGroupManagerImpl.class);

View File

@ -47,8 +47,6 @@ import com.cloud.network.security.SecurityRule.SecurityRuleType;
* Same as the base class -- except it uses the abstracted security group work queue
*
*/
@Component
@Primary
@Local(value={ SecurityGroupManager.class, SecurityGroupService.class })
public class SecurityGroupManagerImpl2 extends SecurityGroupManagerImpl{
SecurityGroupWorkQueue _workQueue = new LocalSecurityGroupWorkQueue();

View File

@ -49,8 +49,6 @@ import com.cloud.vm.SystemVmLoadScanner.AfterScanAction;
import com.cloud.vm.VirtualMachine.State;
import com.cloud.vm.dao.SecondaryStorageVmDao;
@Component
@Primary
@Local(value = { SecondaryStorageVmManager.class })
public class PremiumSecondaryStorageManagerImpl extends SecondaryStorageManagerImpl {
private static final Logger s_logger = Logger.getLogger(PremiumSecondaryStorageManagerImpl.class);

View File

@ -1,184 +0,0 @@
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership. The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
package com.cloud.server;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.PostConstruct;
import javax.inject.Inject;
import org.springframework.stereotype.Component;
import com.cloud.agent.AgentManager;
import com.cloud.alert.AlertManagerImpl;
import com.cloud.api.query.QueryManagerImpl;
import com.cloud.async.AsyncJobManager;
import com.cloud.async.SyncQueueManager;
import com.cloud.capacity.CapacityManagerImpl;
import com.cloud.cluster.ClusterFenceManagerImpl;
import com.cloud.cluster.ClusterManagerImpl;
import com.cloud.configuration.ConfigurationManager;
import com.cloud.consoleproxy.ConsoleProxyManager;
import com.cloud.dao.EntityManagerImpl;
import com.cloud.ha.HighAvailabilityManager;
import com.cloud.hypervisor.HypervisorGuruManagerImpl;
import com.cloud.keystore.KeystoreManager;
import com.cloud.maint.UpgradeManagerImpl;
import com.cloud.network.ExternalLoadBalancerUsageManager;
import com.cloud.network.NetworkManagerImpl;
import com.cloud.network.StorageNetworkManager;
import com.cloud.network.as.AutoScaleManagerImpl;
import com.cloud.network.firewall.FirewallManagerImpl;
import com.cloud.network.lb.LoadBalancingRulesManagerImpl;
import com.cloud.network.router.VpcVirtualNetworkApplianceManager;
import com.cloud.network.rules.RulesManagerImpl;
import com.cloud.network.security.SecurityGroupManagerImpl2;
import com.cloud.network.vpc.NetworkACLManagerImpl;
import com.cloud.network.vpc.VpcManagerImpl;
import com.cloud.network.vpn.RemoteAccessVpnManagerImpl;
import com.cloud.network.vpn.Site2SiteVpnManagerImpl;
import com.cloud.projects.ProjectManagerImpl;
import com.cloud.resource.ResourceManagerImpl;
import com.cloud.resourcelimit.ResourceLimitManagerImpl;
import com.cloud.storage.OCFS2Manager;
import com.cloud.storage.StorageManagerImpl;
import com.cloud.storage.download.DownloadMonitor;
import com.cloud.storage.s3.S3Manager;
import com.cloud.storage.secondary.SecondaryStorageManagerImpl;
import com.cloud.storage.snapshot.SnapshotManagerImpl;
import com.cloud.storage.snapshot.SnapshotSchedulerImpl;
import com.cloud.storage.swift.SwiftManager;
import com.cloud.storage.upload.UploadMonitor;
import com.cloud.tags.TaggedResourceManagerImpl;
import com.cloud.template.TemplateManagerImpl;
import com.cloud.user.AccountManagerImpl;
import com.cloud.user.DomainManagerImpl;
import com.cloud.utils.component.Manager;
import com.cloud.vm.UserVmManagerImpl;
import com.cloud.vm.VirtualMachineManager;
@Component
public class CloudStackComponentComposer {
// @Inject CheckPointManagerImpl _checkPointMgr;
@Inject ClusterManagerImpl _clusterMgr;
@Inject ClusterFenceManagerImpl _clusterFenceMgr;
@Inject AgentManager _AgentMgr;
@Inject SyncQueueManager _sycnQueueMgr;
@Inject AsyncJobManager _jobMgr;
@Inject ConfigurationManager _confMgr;
@Inject AccountManagerImpl _accountMgr;
@Inject DomainManagerImpl _domainMgr;
@Inject ResourceLimitManagerImpl _resLimitMgr;
@Inject NetworkManagerImpl _networkMgr;
@Inject DownloadMonitor _downloadMonitor;
@Inject UploadMonitor _uploadMonitor;
@Inject KeystoreManager _ksMgr;
@Inject SecondaryStorageManagerImpl _ssMgr;
@Inject UserVmManagerImpl _userVmMgr;
@Inject UpgradeManagerImpl _upgradeMgr;
@Inject StorageManagerImpl _storageMgr;
@Inject AlertManagerImpl _alertMgr;
@Inject TemplateManagerImpl _tmplMgr;
@Inject SnapshotManagerImpl _snpahsotMgr;
@Inject SnapshotSchedulerImpl _snapshotScheduleMgr;
@Inject SecurityGroupManagerImpl2 _sgMgr;
@Inject EntityManagerImpl _entityMgr;
@Inject LoadBalancingRulesManagerImpl _lbRuleMgr;
@Inject AutoScaleManagerImpl _asMgr;
@Inject RulesManagerImpl _rulesMgr;
@Inject RemoteAccessVpnManagerImpl _acVpnMgr;
@Inject CapacityManagerImpl _capacityMgr;
@Inject VirtualMachineManager _vmMgr;
@Inject HypervisorGuruManagerImpl _hvGuruMgr;
@Inject ResourceManagerImpl _resMgr;
@Inject OCFS2Manager _ocfsMgr;
@Inject FirewallManagerImpl _fwMgr;
@Inject ConsoleProxyManager _cpMgr;
@Inject ProjectManagerImpl _prjMgr;
@Inject SwiftManager _swiftMgr;
@Inject S3Manager _s3Mgr;
@Inject StorageNetworkManager _storageNetworkMgr;
@Inject ExternalLoadBalancerUsageManager _extlbUsageMgr;
@Inject HighAvailabilityManager _haMgr;
@Inject VpcManagerImpl _vpcMgr;
@Inject VpcVirtualNetworkApplianceManager _vpcNetApplianceMgr;
@Inject NetworkACLManagerImpl _networkAclMgr;
@Inject TaggedResourceManagerImpl _taggedResMgr;
@Inject Site2SiteVpnManagerImpl _s2sVpnMgr;
@Inject QueryManagerImpl _queryMgr;
List<Manager> _managers = new ArrayList<Manager>();
public CloudStackComponentComposer() {
}
@PostConstruct
void init() {
// _managers.add(_checkPointMgr);
_managers.add(_clusterMgr);
_managers.add(_clusterFenceMgr);
_managers.add(_AgentMgr);
_managers.add(_sycnQueueMgr);
_managers.add(_jobMgr);
_managers.add(_confMgr);
_managers.add(_accountMgr);
_managers.add(_domainMgr);
_managers.add(_resLimitMgr);
_managers.add(_networkMgr);
_managers.add(_downloadMonitor);
_managers.add(_uploadMonitor);
_managers.add(_ksMgr);
_managers.add(_ssMgr);
_managers.add(_userVmMgr);
_managers.add(_upgradeMgr);
_managers.add(_storageMgr);
_managers.add(_alertMgr);
_managers.add(_tmplMgr);
_managers.add(_snpahsotMgr);
_managers.add(_snapshotScheduleMgr);
_managers.add(_sgMgr);
_managers.add(_entityMgr);
_managers.add(_lbRuleMgr);
_managers.add(_asMgr);
_managers.add(_rulesMgr);
_managers.add(_acVpnMgr);
_managers.add(_capacityMgr);
_managers.add(_vmMgr);
_managers.add(_hvGuruMgr);
_managers.add(_resMgr);
_managers.add(_ocfsMgr);
_managers.add(_fwMgr);
_managers.add(_cpMgr);
_managers.add(_prjMgr);
_managers.add(_swiftMgr);
_managers.add(_s3Mgr);
_managers.add(_storageNetworkMgr);
_managers.add(_extlbUsageMgr);
_managers.add(_haMgr);
_managers.add(_vpcMgr);
_managers.add(_vpcNetApplianceMgr);
_managers.add(_networkAclMgr);
_managers.add(_taggedResMgr);
_managers.add(_s2sVpnMgr);
_managers.add(_queryMgr);
}
public List<Manager> getManagers() {
return _managers;
}
}

View File

@ -107,6 +107,7 @@ import com.cloud.capacity.Capacity;
import com.cloud.capacity.CapacityVO;
import com.cloud.capacity.dao.CapacityDao;
import com.cloud.capacity.dao.CapacityDaoImpl.SummedCapacity;
import com.cloud.cluster.ClusterManager;
import com.cloud.configuration.Config;
import com.cloud.configuration.Configuration;
import com.cloud.configuration.ConfigurationManager;
@ -396,6 +397,7 @@ public class ManagementServerImpl implements ManagementServer {
@Inject List<UserAuthenticator> _userAuthenticators;
@Inject ClusterManager _clusterMgr;
private String _hashKey = null;
public ManagementServerImpl() {
@ -429,8 +431,10 @@ public class ManagementServerImpl implements ManagementServer {
private void initCloudStackComponents() {
runCheckers();
startDaos(); // daos should not be using managers and adapters.
startManagers();
startAdapters();
Map<String, Object> avoidMap = new HashMap<String, Object>();
startManagers(avoidMap);
startAdapters(avoidMap);
}
private void runCheckers() {
@ -464,12 +468,28 @@ public class ManagementServerImpl implements ManagementServer {
}
}
private void startManagers() {
private void startManagers(Map<String, Object> avoidMap) {
Map<String, Object> params = new HashMap<String, Object>();
for(Manager manager : _componentRegistry.getManagers()) {
// make sure startup sequence is maintained
try {
_clusterMgr.configure("ClusterMgr", params);
_clusterMgr.start();
avoidMap.put(ComponentContext.getTargetClass(_clusterMgr).getName(), _clusterMgr);
} catch(Exception e) {
s_logger.error("Problems to start manager:" + ComponentContext.getTargetClass(_clusterMgr).getName(), e);
System.exit(1);
}
for(Manager manager : ComponentContext.getComponentsOfType(Manager.class).values()) {
s_logger.info("Start manager: " + ComponentContext.getTargetClass(manager).getName() + "...");
try {
if(avoidMap.get(ComponentContext.getTargetClass(manager).getName()) != null) {
s_logger.info("Skip manager: " + ComponentContext.getTargetClass(manager).getName() + " as it is already started");
continue;
}
if(!manager.configure(manager.getClass().getSimpleName(), params)) {
throw new CloudRuntimeException("Failed to start manager: " + ComponentContext.getTargetClass(manager).getName());
}
@ -477,6 +497,7 @@ public class ManagementServerImpl implements ManagementServer {
if (!manager.start()) {
throw new CloudRuntimeException("Failed to start manager: " + ComponentContext.getTargetClass(manager).getName());
}
avoidMap.put(ComponentContext.getTargetClass(manager).getName(), manager);
if (manager instanceof ManagementBean) {
registerMBean((ManagementBean) manager);
@ -488,7 +509,7 @@ public class ManagementServerImpl implements ManagementServer {
}
}
private void startAdapters() {
private void startAdapters(Map<String, Object> avoidMap) {
@SuppressWarnings("rawtypes")
Map<String, Adapter> adapters = ComponentContext.getApplicationContext().getBeansOfType(
Adapter.class);
@ -497,22 +518,27 @@ public class ManagementServerImpl implements ManagementServer {
for(Adapter adapter : adapters.values()) {
try {
// we also skip Adapter class that is both a manager class and a adapter class
if(Manager.class.isAssignableFrom(ComponentContext.getTargetClass(adapter)))
continue;
s_logger.info("Start adapter: " + ComponentContext.getTargetClass(adapter).getName() + "...");
if(avoidMap.get(ComponentContext.getTargetClass(adapter).getName()) != null) {
s_logger.info("Skip adapter: " + ComponentContext.getTargetClass(adapter).getName() + " as it is already started");
continue;
}
if(!adapter.configure(adapter.getName(), params)) {
throw new CloudRuntimeException("Failed to start adapter: " + ComponentContext.getTargetClass(adapter).getName());
throw new CloudRuntimeException("Failed to configure adapter: " + ComponentContext.getTargetClass(adapter).getName());
}
if (!adapter.start()) {
throw new CloudRuntimeException("Failed to start adapter: " + ComponentContext.getTargetClass(adapter).getName());
}
avoidMap.put(ComponentContext.getTargetClass(adapter).getName(), adapter);
if (adapter instanceof ManagementBean) {
registerMBean((ManagementBean) adapter);
}
} catch (Exception e) {
s_logger.error("Problems to start manager:" + ComponentContext.getTargetClass(adapter).getName(), e);
s_logger.error("Problems to start adapter:" + ComponentContext.getTargetClass(adapter).getName(), e);
System.exit(1);
}
}

View File

@ -157,7 +157,6 @@ import com.cloud.vm.dao.VMInstanceDao;
// Starting, HA, Migrating, Creating and Running state are all counted as "Open" for available capacity calculation
// because sooner or later, it will be driven into Running state
//
@Component
@Local(value = { SecondaryStorageVmManager.class })
public class SecondaryStorageManagerImpl implements SecondaryStorageVmManager, VirtualMachineGuru<SecondaryStorageVmVO>, SystemVmLoadScanHandler<Long>, ResourceStateAdapter {
private static final Logger s_logger = Logger.getLogger(SecondaryStorageManagerImpl.class);

View File

@ -46,8 +46,6 @@ import com.cloud.upgrade.dao.VersionDaoImpl;
import com.cloud.utils.component.SystemIntegrityChecker;
@Component
@Primary
@Local(value = { SystemIntegrityChecker.class })
public class PremiumDatabaseUpgradeChecker extends DatabaseUpgradeChecker {
public PremiumDatabaseUpgradeChecker() {

View File

@ -28,8 +28,6 @@ import org.springframework.stereotype.Component;
import com.cloud.cluster.ClusterManagerListener;
import com.cloud.cluster.ManagementServerHostVO;
@Component
@Primary
@Local(value=VirtualMachineManager.class)
public class ClusteredVirtualMachineManagerImpl extends VirtualMachineManagerImpl implements ClusterManagerListener {

View File

@ -54,7 +54,6 @@ import org.apache.cloudstack.engine.cloud.entity.api.VirtualMachineEntity;
import org.apache.cloudstack.engine.service.api.OrchestrationService;
import org.apache.commons.codec.binary.Base64;
import org.apache.log4j.Logger;
import org.springframework.stereotype.Component;
import com.cloud.agent.AgentManager;
import com.cloud.agent.api.Answer;
@ -237,7 +236,6 @@ import com.cloud.vm.dao.UserVmDao;
import com.cloud.vm.dao.UserVmDetailsDao;
import com.cloud.vm.dao.VMInstanceDao;
@Component
@Local(value = { UserVmManager.class, UserVmService.class })
public class UserVmManagerImpl implements UserVmManager, UserVmService, Manager {
private static final Logger s_logger = Logger

View File

@ -158,7 +158,6 @@ import com.cloud.vm.dao.SecondaryStorageVmDao;
import com.cloud.vm.dao.UserVmDao;
import com.cloud.vm.dao.VMInstanceDao;
@Component
@Local(value = VirtualMachineManager.class)
public class VirtualMachineManagerImpl implements VirtualMachineManager, Listener {
private static final Logger s_logger = Logger.getLogger(VirtualMachineManagerImpl.class);

View File

@ -23,8 +23,6 @@ import org.apache.log4j.Logger;
import org.springframework.context.annotation.Primary;
import org.springframework.stereotype.Component;
@Component
@Primary
@Local(value = { UserVmDao.class })
public class RandomlyIncreasingVMInstanceDaoImpl extends UserVmDaoImpl {

View File

@ -55,7 +55,6 @@ import com.cloud.vm.dao.UserVmData.NicData;
import com.cloud.vm.dao.UserVmData.SecurityGroupData;
@Component
@Local(value={UserVmDao.class})
public class UserVmDaoImpl extends GenericDaoBase<UserVmVO, Long> implements UserVmDao {
public static final Logger s_logger = Logger.getLogger(UserVmDaoImpl.class);

View File

@ -23,7 +23,7 @@ alter table template_spool_ref add state varchar(255);
alter table template_spool_ref add update_count bigint unsigned;
alter table volumes add disk_type varchar(255);
alter table volumes drop foreign key `fk_volumes__account_id`;
CREATE TABLE `cloud`.`primary_data_store_provider` (
CREATE TABLE `cloud`.`data_store_provider` (
`id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',
`name` varchar(255) NOT NULL COMMENT 'name of primary data store provider',
PRIMARY KEY(`id`)

View File

@ -16,11 +16,6 @@
// under the License.
package com.cloud.utils;
import org.springframework.context.annotation.Primary;
import org.springframework.stereotype.Component;
@Component
@Primary
public class DummyPremiumImpl implements DummyInterface {
@Override