Collaborat​ion

Domino Query Language: What You Need to Know

Share this post:

Domino Tech School’s first session had overwhelming enthusiasm and participation. Hundreds of attendees joined us live on Thursday, January 24, eager to learn about Domino Query Language (DQL) from HCL’s John Curtis. John delivered a great session — system administrators from around the globe shared how easy it was to follow along and developers were excited for DQL as a new language.

If you were not able to attend the webcast live, you can watch the recording here.

We have gathered answers to the most asked questions from the live session below. Enjoy!

Q. Where can I find documentation about DQL?
A. You can find it here.

Q. Is the ISSUMMARY field required? Does that mean that we can’t query for content in RT fields?
A. Yes. Document summary residence is currently required.

Q. As DQL relates on columns in views, does that mean it can’t access data stored in encrypted fields (even if it has been encrypted with a private encryption key stored in the server’s ID file)?
A. Correct. DQL can’t access encrypted data. The same goes for full text, views, and folders.

Q. What if two users store a temporary query into the same folder?
A. The last one takes precedence. You have to control your folder name space.

Q. How does the performance of DQL compare with doing a full text search in LotusScript/Java?
A. It varies. For small document sets it’s comparable, but for large sets FTSearch will likely have an edge. For now. We’re going to include FTSearch in DQL, speed up view searching for parity, and deliver even better speed. DQL will only get faster.

Q. How is security implemented in DQL?
A. Views with any security on them are not included, and all document security is honored. DQL processing honors document level security.

Q. Can DQL be used on local replicas, or just on the server?
A. DQL runs on the client or the server. On the client, because it requires the design catalog, updall must be run.

Q. The view with SELECT @All is for the nsf scan. Is that correct?
A. No, it’s for use with field = value terms — we will use view columns to satisfy it (faster).

Q. Do DQL queries run under a new task?
A. No. DQL code resides in the main Domino DLL/.so file, so any code in any add-in can call it.

Q. Would it be possible to get a trace for an executed search — specifically, so you can get performance metrics from a live system?
A. Yes. EXPLAIN is the thing to learn and tune your queries with.

Q. Please expand on view needing “Select @All” always.
A. We use views to satisfy <field> <operator> <value> terms, looking them up in views where we can for speed. Anything OTHER than Select @ALL would create additional, uncoded filters on the results. So SELECT form = ‘myform’ will tack that filter onto name = ‘John’  and the user never asked for that filter. If you do want that filter, use the ‘myview’.name = ‘John’ syntax.

Q. Does the NSF scan operate on documents in particular order (creation date, modification date, etc.) for purposes of the max scan limit?
A. No. There’s no defined order for NSFSearch scanning. Going beyond the max fails the query, so the order is not important. There is no “get first n” parameter.

Finally, don’t forget to register for the next session of Domino Tech School, “Upgrading to Domino V10: Best Practices.” We look forward to seeing you there.

WW Senior Certified Executive IT Specialist, IBM Collaboration Solutions

John Curtis

Software Architect, HCL Collaboration Workflow Platform

More Collaborat​ion stories
February 6, 2019

New IBM Connections updates are available! CR4, Mobile 6.1.3, Component Pack 6.0.0.7

Today IBM released not one, but four, updates to work with IBM Connections 6! Continuing with IBM Collaboration Solutions’ goal to release end-user focused features on a quarterly basis, IBM Connections CR4 and the accompanying components put the end user at the center of our efforts. All four releases are available today on IBM Fix […]

Continue reading

January 8, 2019

We’re Launching Domino Tech School

What a year it’s been! In the last few months we’ve released Domino V10 and delivered great, new capabilities for application developers, administrators, and business users. We’ve also been on a mission to educate the community on the possibilities of Domino V10 and share as much code as possible in webcasts and blogs — but […]

Continue reading

December 17, 2018

Get More Domino in December

There’s a lot to be excited about this Holiday Season with Domino. Here is what we are planning to deliver by the end of 2018 to make your Domino experience even better — so that Domino is the gift that just keeps on giving. First: IBM Domino App Dev Pack 1.0 eGA: Enables full-stack web […]

Continue reading