Showing results for 
Search instead for 
Did you mean: 

Row Level Security in BO: Performance

Active Participant
0 Kudos


I was recently asked a very interesting question and could not find any useful answers, so decided to post it here.

The question is:

How does the query engine process Row level security in BO? Does it fetch the data first (which seems right) and then fail the condition or is it vice versa?

Will having a row level security implementation in the universe impact the performance of the reports?

Would like to know your insights on the same.

Thanks and regards,


Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hello Vinayak,

When you are using rowlevel restrictions, the restriction condition  will be inserted into the query where clause and then  the query will hit the database and you will get the restricted data only into the report.
So the restrictions doen't cause any performance issues.
As you aware that the report rfreshing time will be more than the direct query execution on the database.

Hope this will helps


Former Member
0 Kudos

Hello Vinayak,

When the user with restriction logs into any repoting application(deski/webi) and runs the report, the firts thing which the processing server checks is if there is any type of security and then the qt.dll generates the sql with the restriction applied for the user. So the sql comes along with the restriction applied. One simple way to check this is when you drag the objects in report(before running) you can check the sql. It will show it along with the restriction applied.

Row level restriction wont affect the universe performance. Performance will only depend on the sql or any processing server issues. Getting abck resttricted data should not have an impact.

Hope i answered your question.