From Data Center using Guide Me to create storage domain of type gluster received unhandled ui exception oVirt 3.6.7 gluster 3.7.13 How reproducible: So far every time Steps to Reproduce: 1. Create Data-center 2. use guide me 3. on attempt to finalize storage domain instead of setting up received UI exception After Installing debug packages this was last error 2016-07-25 13:46:54,701 ERROR [org.ovirt.engine.ui.frontend.server.gwt.OvirtRemoteLoggingService] (default task-33) [] Permutation name: 430985F23DFC1C8BE1C7FDD91EDAA785 2016-07-25 13:46:54,702 ERROR [org.ovirt.engine.ui.frontend.server.gwt.OvirtRemoteLoggingService] (default task-33) [] Uncaught exception: : java.lang.ClassCastException at java.lang.Throwable.fillInStackTrace(Throwable.java:114) [rt.jar:1.8.0_101] at java.lang.Exception.Exception(Exception.java:25) [rt.jar:1.8.0_101] at java.lang.RuntimeException.RuntimeException(RuntimeException.java:25) [rt.jar:1.8.0_101] at java.lang.ClassCastException.ClassCastException(ClassCastException.java:23) [rt.jar:1.8.0_101] at com.google.gwt.lang.Cast.dynamicCast(Cast.java:53) at org.ovirt.engine.ui.uicommonweb.models.datacenters.DataCenterGuideModel.run(DataCenterGuideModel.java:1679) at org.ovirt.engine.ui.uicompat.Task.$run(Task.java:19) at org.ovirt.engine.ui.uicommonweb.models.datacenters.DataCenterGuideModel.$saveSanStorage(DataCenterGuideModel.java:955) at org.ovirt.engine.ui.uicommonweb.models.datacenters.DataCenterGuideModel.$postOnAddStorage(DataCenterGuideModel.java:667) at org.ovirt.engine.ui.uicommonweb.models.datacenters.DataCenterGuideModel$9$1.onSuccess(DataCenterGuideModel.java:646) at org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider.$getConfigFromCache(AsyncDataProvider.java:2853) at org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider.$getStorageDomainMaxNameLength(AsyncDataProvider.java:2267) at org.ovirt.engine.ui.uicommonweb.models.datacenters.DataCenterGuideModel$9.onSuccess(DataCenterGuideModel.java:629) at org.ovirt.engine.ui.frontend.Frontend$2.$onSuccess(Frontend.java:244) [frontend.jar:] at org.ovirt.engine.ui.frontend.Frontend$2.onSuccess(Frontend.java:244) [frontend.jar:] at org.ovirt.engine.ui.frontend.communication.OperationProcessor$2.$onSuccess(OperationProcessor.java:141) [frontend.jar:] at org.ovirt.engine.ui.frontend.communication.OperationProcessor$2.onSuccess(OperationProcessor.java:141) [frontend.jar:] at org.ovirt.engine.ui.frontend.communication.GWTRPCCommunicationProvider$3$1.$onSuccess(GWTRPCCommunicationProvider.java:161) [frontend.jar:] at org.ovirt.engine.ui.frontend.communication.GWTRPCCommunicationProvider$3$1.onSuccess(GWTRPCCommunicationProvider.java:161) [frontend.jar:] at com.google.gwt.rpc.client.impl.RpcCallbackAdapter.onResponseReceived(RpcCallbackAdapter.java:72) [gwt-servlet.jar:] at org.ovirt.engine.ui.common.gin.BaseSystemModule$1$1.onResponseReceived(BaseSystemModule.java:140) at com.google.gwt.http.client.Request.$fireOnResponseReceived(Request.java:237) [gwt-servlet.jar:] at com.google.gwt.http.client.RequestBuilder$1.onReadyStateChange(RequestBuilder.java:409) [gwt-servlet.jar:] at Unknown.<anonymous>(https://ccengine2.carouselchecks.local/ovirt-engine/webadmin/430985F23DFC1C8BE1C7FDD91EDAA785.cache.html@65) at com.google.gwt.core.client.impl.Impl.apply(Impl.java:296) [gwt-servlet.jar:] at com.google.gwt.core.client.impl.Impl.entry0(Impl.java:335) [gwt-servlet.jar:] at Unknown.<anonymous>(https://ccengine2.carouselchecks.local/ovirt-engine/webadmin/430985F23DFC1C8BE1C7FDD91EDAA785.cache.html@54)
Bug tickets must have version flags set prior to targeting them to a release. Please ask maintainer to set the correct version flags and only then set the target milestone.
The issue comes from the postOnAddStorage method. Apparantly, it assumes that everything that isn't NFS or local storage is block storage (WAT?). public void postOnAddStorage() { StorageModel model = (StorageModel) getWindow(); if (!model.validate()) { return; } // Save changes. if (model.getCurrentStorageItem() instanceof NfsStorageModel) { saveNfsStorage(); } else if (model.getCurrentStorageItem() instanceof LocalStorageModel) { saveLocalStorage(); } else { // ALLON: HERE! saveSanStorage(); } } I've also confirmed the creating a POSIX domain via the guide me screen fails in the same way. We need to either add handling for these types, or just remove this from the guide me completely, as it's already on our radar. Regardless, a workaround can be creating a new domain from the storage main tab.
-------------------------------------- Tested with the following code: ---------------------------------------- ovirt- 4.0.6 gluster- 3.7.5 Tested with the following scenario: Steps to Reproduce: 1. Create Data-center 2. use guide me 3. on attempt to finalize storage domain instead of setting up received UI exception Actual results: Gluster storage domain is created successfully without any ui exception Moving to VERIFIED!