What is ROQL (RightNow Object Query Language) Blacklisting?
RightNow Object Query Language (ROQL) Blacklisting
Oracle Service Cloud, August 2011 and newer
New to the August 2011 release, ROQL will be able to identify and blacklist bad queries. A performance metric has been established to identify and effectively quarantine bad queries done in the database.
Bad queries will be blacklisted to protect shared environment. The result of ROQL blacklisting is that the query is either blocked or redirected to replication. An exception / fault will be returned for blacklisted queries when run directly.
When a bad query is identified it will contain one of following messages:
- "Poor performing query - aborting"
- "Poor performing query - blocked"
- "Poor performing query - too much time taken“
Some best practices to help keep your queries compliant:
- Pick the right primary object (most restrictions to be applied)
- Use where qualifiers to filter query (do not return everything)
- Do not try to create joins through the WHERE clause (use relationships)
- Test queries before going into production
Most blacklisted queries can be redesigned to be compliant. ROQL queries are also run by product functionality behind the scenes, and those queries can be blacklisted as well. If blacklisted queries are suspected, please submit an SR to Technical Support for further investigation.