Bug 1406572 - Uncaught exception is received when trying to create a vm from User portal without power user role assigned
Summary: Uncaught exception is received when trying to create a vm from User portal wi...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Virtualization Manager
Classification: Red Hat
Component: ovirt-engine
Version: 4.0.5
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: ovirt-4.1.1
: ---
Assignee: jniederm
QA Contact: Pavel Stehlik
URL:
Whiteboard:
: 1418660 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-12-21 00:07 UTC by Koutuk Shukla
Modified: 2020-05-14 15:29 UTC (History)
12 users (show)

Fixed In Version: ovirt-engine-4.1.1
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-04-25 00:55:29 UTC
oVirt Team: Virt
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
Screen print of error on User portal after trying to create the vm (84.26 KB, image/png)
2016-12-21 00:07 UTC, Koutuk Shukla
no flags Details
print screen (122.89 KB, image/png)
2017-02-28 16:56 UTC, Shira Maximov
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHEA-2017:0997 0 normal SHIPPED_LIVE Red Hat Virtualization Manager (ovirt-engine) 4.1 GA 2017-04-18 20:11:26 UTC
oVirt gerrit 71128 0 None None None 2017-01-25 20:22:05 UTC
oVirt gerrit 71169 0 None None None 2017-01-25 20:21:35 UTC

Description Koutuk Shukla 2016-12-21 00:07:38 UTC
Created attachment 1234145 [details]
Screen print of error on User portal after trying to create the vm

Description of problem:

Uncaught exception is received when trying to create a vm from User portal

Version-Release number of selected component (if applicable):
rhevm-4.0.5

How reproducible:
100%

Steps to Reproduce:

1. Login to user portal --> Extended --> New VM --> Ok 


Actual results:

Receive an error message as " Uncaught exception occurred. Please try reloading the page. Details: (TypeError) __gwt$exception: <skipped>: Cannot read property 'f' of undefined"

Expected results:

User should be able to create the vm without any errors

Additional info:

- This issue is not faced when trying to create the vm with admin portal.

- Below is the /var/log/ovirt-engine/ui.log output for the recent attempt when the error was received while trying to create a vm with user portal

=====================
2016-12-20 10:20:01,200 ERROR [org.ovirt.engine.ui.frontend.server.gwt.OvirtRemoteLoggingService] (default task-63) [] Permutation name: 587E534EAE351BE2F229E0B865EFB2D3
2016-12-20 10:20:01,201 ERROR [org.ovirt.engine.ui.frontend.server.gwt.OvirtRemoteLoggingService] (default task-63) [] Uncaught exception: com.google.gwt.core.client.JavaScriptException: (TypeError)
 __gwt$exception: <skipped>: Cannot read property 'f' of undefined
        at org.ovirt.engine.ui.uicommonweb.models.storage.DisksAllocationModel.$updateImageToDestinationDomainMap(DisksAllocationModel.java:307)
        at org.ovirt.engine.ui.uicommonweb.models.storage.DisksAllocationModel.$getImageToDestinationDomainMap(DisksAllocationModel.java:133)
        at org.ovirt.engine.ui.uicommonweb.models.userportal.UserPortalListModel.$postVmNameUniqueCheck(UserPortalListModel.java:975)
        at org.ovirt.engine.ui.uicommonweb.models.userportal.UserPortalListModel$10.onSuccess(UserPortalListModel.java:921)
        at org.ovirt.engine.ui.frontend.Frontend$2.$onSuccess(Frontend.java:238) [frontend.jar:]
        at org.ovirt.engine.ui.frontend.Frontend$2.onSuccess(Frontend.java:238) [frontend.jar:]
        at org.ovirt.engine.ui.frontend.communication.OperationProcessor$2.$onSuccess(OperationProcessor.java:139) [frontend.jar:]
        at org.ovirt.engine.ui.frontend.communication.OperationProcessor$2.onSuccess(OperationProcessor.java:139) [frontend.jar:]
        at org.ovirt.engine.ui.frontend.communication.GWTRPCCommunicationProvider$3$1.$onSuccess(GWTRPCCommunicationProvider.java:160) [frontend.jar:]
        at org.ovirt.engine.ui.frontend.communication.GWTRPCCommunicationProvider$3$1.onSuccess(GWTRPCCommunicationProvider.java:160) [frontend.jar:]
        at com.google.gwt.rpc.client.impl.RpcCallbackAdapter.onResponseReceived(RpcCallbackAdapter.java:72) [gwt-servlet.jar:]
        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.eval(userportal-0.js@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.eval(userportal-0.js@54)

=====================

Comment 1 Tomas Jelinek 2016-12-21 08:03:38 UTC
I have a suspicion that the user logged into user portal which has this error does not have permissions on the storage domain on which the template from which the VM is being created from has the disks. Could you please set the user permissions properly and check again?

Comment 6 Tomas Jelinek 2017-01-04 09:11:40 UTC
(In reply to Koutuk Shukla from comment #5)
> (In reply to Yaniv Kaul from comment #4)
> > Severity is missing. 
> > Also, asking questions without setting needinfo is not very helpful. 
> > Lastly, it'll probably wait until after the shutdown.
> 
> Hello Yaniv,
> 
> -- Customer wants to know if there is any other role which can be set for
> User instead of PowerUserRole to avoid hitting this issue.

- this was the case also on 3.6 (considering the thread you are referring to is about 3.6.5.3).

- it should be enough to assign "vm creator" to the datacenter.

> 
> -- Also is there a possibility of having a Error message as "Insufficient
> Permission" pop up instead of a Uncaught exception message when this issue
> is faced ?

yes, this should be fixed, but will not fit into 4.1

Comment 8 Tomas Jelinek 2017-01-05 15:39:49 UTC
I was trying to simulate this situation and I can not get to a state where it actually fails on NPE. It either shows:

"There is no Cluster on which you can create a VM. Please check Data Center status and Cluster permissions."

or it lets me to submit the dialog and results in "you dont have enough permissions to perform this action".

Could you please provide the exact configuration of permissions which caused this to happen?

Thank you

Comment 14 Tomas Jelinek 2017-01-18 09:02:53 UTC
ok, finally succeeded to simulate. This is what is needed:
- have 2 data storage domains, A and B
- give the following permissions to the user: disk creator on domain A, the UsertemplatebasedVM on Cluster and VnicProfileUser on Networks
- create a template with disk on storage B (e.g. the one where the user has no permissions on)
- from user portal try to create a VM based on this template
- observe the exception

Comment 20 Shira Maximov 2017-02-28 16:56:13 UTC
Created attachment 1258437 [details]
print screen

verified on : 
Red Hat Virtualization Manager Version: 4.1.1.2-0.1.el7

verification steps: 
- have 2 data storage domains, A and B
- give the following permissions to the user: disk creator on domain A, the UsertemplatebasedVM on Cluster and VnicProfileUser on Networks
- create a template with disk on storage B (e.g. the one where the user has no permissions on)
- from user portal try to create a VM based on this template
- observe the exception

result : 
attached

Comment 28 jniederm 2017-08-31 13:56:56 UTC
*** Bug 1418660 has been marked as a duplicate of this bug. ***


Note You need to log in before you can comment on or make changes to this bug.