Hi Rajesh, I'll PM the scripts.
WRT problem below, it looks like a CS persists paths with spaces as URL encoded strings. Is it the Hyper-V code storing the path in the wrong formant? I can fix that if it's an issue. I would be very reluctant to change the the format of columns in the database. There will be other code reliant on URL encoding. DL > -----Original Message----- > From: Rajesh Battala [mailto:rajesh.batt...@citrix.com] > Sent: 02 September 2013 08:37 > To: dev@cloudstack.apache.org > Subject: RE: [Merge] Minimal Hyper-V Plugin > > Hi Donal, > One more issue is, currently local storage is discovered when host is added. > But when mgmt. server got restarted, there is an exception happening while > add/discovering already existing local storage pool. > > > Root cause: > ========== > I had debugged and figured out the root cause, CS not able to find the > storage pool and tries to created it but it fails to add to DB as the entry is > already persisted. > The reason why CS not able to get the existing localstorage is , when > executing the query to get the storage pool, it's getting empty set . It's > because of the storage path issue. > In the db the local storage path is stored as > "C:\Users\Public\Documents\Hyper-V\Virtual+Hard+Disks", ('+' symbol in > place of space) > In the db query its searching without "+" and with space which is causing the > query to have empty set and hence the issue. > > I can fix the issue by removing the "+" when we are persisting the local > storage pool from hyperv > > > > Exception: > ========= > WARN [c.c.r.ResourceManagerImpl] (AgentTaskPool-14:ctx-ddbbf089) > Unable to connect due to > com.cloud.exception.ConnectionException: Unable to setup the local storage > pool for Host[-1-Routing] > at > com.cloud.storage.StorageManagerImpl.createLocalStorage(StorageManage > rImpl.java:598) > at > com.cloud.utils.component.ComponentInstantiationPostProcessor$Intercep > torDispatcher.intercept(ComponentInstantiationPostProcessor.java:125) > at > com.cloud.storage.LocalStoragePoolListener.processConnect(LocalStoragePo > olListener.java:86) > at > com.cloud.agent.manager.AgentManagerImpl.notifyMonitorsOfConnection( > AgentManagerImpl.java:519) > at > com.cloud.agent.manager.AgentManagerImpl.handleDirectConnectAgent(A > gentManagerImpl.java:1414) > at > com.cloud.resource.ResourceManagerImpl.createHostAndAgent(Resource > ManagerImpl.java:1760) > at > com.cloud.resource.ResourceManagerImpl.createHostAndAgent(Resource > ManagerImpl.java:1922) > at > com.cloud.agent.manager.AgentManagerImpl$SimulateStartTask.run(Agent > ManagerImpl.java:1063) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.jav > a:1110) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.ja > va:603) > at java.lang.Thread.run(Thread.java:722) > Caused by: com.cloud.utils.exception.CloudRuntimeException: duplicate > uuid: 35aa91ba-c95b-3fc4-91df-9c95dc31b350-HypervResource > at > org.apache.cloudstack.storage.volume.datastore.PrimaryDataStoreHelper.cr > eatePrimaryDataStore(PrimaryDataStoreHelper.java:66) > at > org.apache.cloudstack.storage.datastore.lifecycle.CloudStackPrimaryDataSto > reLifeCycleImpl.initialize(CloudStackPrimaryDataStoreLifeCycleImpl.java:349) > at > com.cloud.storage.StorageManagerImpl.createLocalStorage(StorageManage > rImpl.java:589) > ... 14 more > > > > -----Original Message----- > From: Donal Lafferty [mailto:donal.laffe...@citrix.com] > Sent: Saturday, August 31, 2013 5:19 AM > To: dev@cloudstack.apache.org > Subject: [Merge] Minimal Hyper-V Plugin > > A plugin for Hyper-V control is available for CloudStack. The plugin > implements basic VM control; however, its architecture allows additional > functionality to be easily added. Incorporating the plugin in CloudStack will > allow the community to participate in improving the features available with > Hyper-V. > > The plugin uses a Director Connect Agent architecture described here: > https://cwiki.apache.org/confluence/display/CLOUDSTACK/Progress > > This links provides details of third party libraries used by the plugin > including > their licenses. No source for these libraries is used, and the binaries are > downloaded from their distributors at build time. > > No proprietary tools are required for the build. For instance, C# compiled > with Mono has been tested. Therefore, the plugin has been added to the > default build and the default deployment. > > The plugin includes unit and functional tests that can be triggered at build > time. See the link above for details. > > The Apache header is applied to source and where feasible to build config > files. > > The source is the https://github.com/lafferty/cloudstack/tree/hyperv_plugin > > Finally, the review request is at https://reviews.apache.org/r/13922/ > > Testing? > > Integration test: created zone with CIFS secondary storage, added Hyper-V > host, registered templates, create/stop/start/destroy VM. Scripts for zone > setup are available on request. > > Functional & unit tests: the Java versions are part of the build. The C# > versions were run inside Visual Studio's Test Explorer.