SlideShare a Scribd company logo
1 of 30
Download to read offline
OPENNTF WEBINARS
September Webinar - What's New with Domino Query
Language with John Curtis from HCL
AGENDA
• Welcome – Howard Greenberg
• John Curtis
• Questions – Graham Acres
ASKING QUESTIONS
• First Question – Will this be recorded?
• Yes, view on YouTube!!!
• https://www.youtube.com/user/OpenNTF
• Use the Questions Pane in GoToWebinar
• We will get to your questions at the end of
the webinar
• The speakers will respond to your questions
verbally
• (not in the Questions pane)
• Please keep all questions related to the
topics that our speakers are discussing!!!
• Unrelated Question => post at:
• http://openntf.slack.com/
THANKS TO THE OPENNTF SPONSORS
• HCL made a significant contribution to help our
organization
• Funds these webinars!
• Contests like Hackathons
• Running the organization
• Prominic donates all IT related services
• Cloud Hosting for OpenNTF
• Infrastructure management for HCL Domino and Atlassian
Servers
• System Administration for day-to-day operation
THIS IS OUR COMMUNITY
• Join us and get involved!
• We are all volunteers
• No effort is too small
• If your idea is bigger than you can do on your own, we
can connect you to a team to work on it
• Test or help or modify an existing project
• Write guides or documentation
• Add reviews on projects / stars on Snippets
NEXT WEBINAR
• October 22, 2020
• Michael Smith – A Flexible View Control for XPages
• Signup at https://openntf.org/webinars
UPCOMING EVENTS
• Let’s Connect Virtual Event – September 29-30
• https://letsconnect.world/agenda/
• Collabsphere – October 27-29
• https://collabsphere.org/ug/cs2020.nsf/index.html
• DNUG – monthly online events
• https://dnug.de/en/dnug47online-2/
8 | Copyright © 2019 HCL Technologies Limited | www.hcltech.com8 | Technology for the Next Decade, Today Copyright © 2019 HCL Technologies Limited | www.hcltechsw.com
What's New with Domino Query
Language (and Domino Appdev)
John Curtis
Software Architect, Project Lead, Domino Development
HCL Digital Solutions
@john_d_curtis_
http://www.jdcurtis.blog
john_curtis@pnp-hcl.com
Copyright © 2020 HCL Technologies Limited | www.hcltechsw.com
DQL Evolution
October 2018
December 2018
1H-2021
March 2020
• Consolidation of Domino search and
results processing
• Constant improvement in
• Performance
• Capability
• Multiple venues and
programming models
December 2019
DQL V1
FT Support
Inboard catalog
FT Support completed
Statistics
Performance
Results processing (sort, federation, joins)
Formula Language inclusion
v11.0.1 DQL Features
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• Complete full text index utilization – enable numeric
and date terms to take advantage of FT indexes
▪ 5-200X improvement in speed
▪ DQL plan and costing executes FT terms first, then views,
then NSF scans
▪ Seamless – existing DQL syntax will work automatically on
terms and across Boolean operators
▪ Caveats/limitations:
➢ Single-occurrence fields only (Domino does NOT FT index multiple
field values of numbers and dates)
➢ No TIMEs in the datetime values, only dates
v11.0.1 DQL Features
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• DQL search strategy by term type
Term type Full Text Search View Search NSF Scan
field = ‘text’? No Yes Yes
field contains (‘Text’) Yes No No
field = 123122 Yes * Yes Yes
field > ‘text’ No Yes Yes
field < 123122 Yes * Yes Yes
field = @dt(‘2020-09-17’) Yes * Yes Yes
field > @dt(‘2020-09-17’) Yes * Yes Yes
field = @dt(‘2020-09-17T11:00:00.00’) No Yes Yes
* = single occurrence only (FT search does NOT handle ranges or lists)
v11.0.1 DQL Features (continued)
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• DQL statistics
▪ Avg, max, min by term type
and overall
▪ “show stat query*”
• Enhanced Boolean
optimization
▪ Deeper results injection
▪ Reduces view and especially
NSF scan processing for
much faster query times
v12 Early Access September 2020 drop DQL Features
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• DQL client/server
▪ DominoQuery working against remote databases (not
supported till now)
▪ Transaction appears in the “show trans” list from the
Domino console
▪ Full support for substitution variables, entire DQL syntax
v12 Early Access September 2020 drop DQL Features (continued)
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• Embedded Formula Language
▪ Syntax
▪ @FL or @formula (case insensitive)
▪ Embedded syntax enclosed in single quotes
@fl(‘@length > 2320)
@FORMULA(‘@left(fld1;3) = "abl" or @left(fld2;2) = "ab“’)
▪ Provides
▪ Intra-document terms (between different fields)
▪ Full expression support
▪ HUGE library of existing functionality
v12 Early Access September 2020 drop DQL Features (continued)
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• Embedded Formula Language (continued)
▪ Support for substitution variables
@fl(‘@length’) > ?lengthvar
@formula(‘@left(fld1;3)’) = ?fld1var or @FL(‘@left(fld2;2)’) = ?fld2var
▪ Complete compatibility with the rest of DQL
▪ All formula language terms satisfied via NSF scanning
▪ All ANDed/ORed terms satisfied with a single pass
▪ Current implementation
▪ 256-byte maximum Formula Language syntax allowed
▪ No substitution variable support for an entire FL string
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
DEMO
v12 Work in progress
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• Results processing
▪ Extensive handling of document collections
➢ NOT just DQL – ALL document collections
▪ Across multiple databases and database schemas
▪ Flexible computed values everywhere
▪ Sorting (including categorization)
▪ Combine rules (joins, lookups, etc.)
▪ Aggregate function support
▪ Impossible to avoid complexity
v12 Work in progress
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• Results processing (continued) – the details
▪ (Notes)QueryResultProcessor
➢ New backend (Java/Lotusscript) class
➢ Supplied lists of data and other classes working together
➢ Builds on known classes never combined or used this way before
➢ Extensive capabilities, multiple output formats and objects
➢ Low code? Not so much, but let’s build one to see
v12 Work in progress
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• (Notes)QueryResultProcessor (continued) – methods
▪ AddSortColumn(programmatic name, column title, sort order,
hidden, categorized)
▪ Akin to creating a view column on the fly
▪ In fact, one of the output types IS a view
▪ May add additional attributes but those shown should be
familiar from use in Designer
▪ REMEMBER the programmatic name – it will appear again in
other calls
▪ If NOT overridden, will be used as a field name to fetch
v12 Work in progress
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• (Notes)QueryResultProcessor (continued) – methods
▪ AddDocumentCollection((Notes)DocumentCollection doccol,
collection name)
… or …
▪ AddDominoQuery ((Notes)DominoQuery, collection name)
▪ (Notes)DocumentCollection can be created against any
database using any means (db.search, ftsearch,
getalldocumentsbykey or DQL)
▪ DominoQuery option will also execute DQL for you
▪ Remember collection name – will appear later
v12 Work in progress
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• (Notes)QueryResultProcessor (continued) – methods
▪ AddFormula(document collection name, programmatic column
name, formula)
➢ Used to override the programmatic name with a formula to
compute and fetch values for processing by the results engine
➢ Can use one call to override the formula for multiple document
collections using wildcards
Addsortcolumn (“name”, “Name Column Title”, “ascending” … ) …
AddDocumentCollection(doccol, “doccol1”) .. e.g. from db.search - database 1
AddDocumentCollection(doccol2, “doccol2) .. e.g. from ftsearch - database 2
AddFormula(“doccol*”, “name”, “@Propercase(NameField)”)
v12 Work in progress
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• (Notes)QueryResultProcessor (continued) – methods
▪ AddCombineRule (left programmatic name, rule, right
programmatic name)
➢ Prior to sort or view create, combine data using the sort columns
(with applied formulas) using the specified rule (or method)
➢ “Join” is the most familiar rule type, also keyword lookup ++
▪ SetOutputType (type, viewname, streamtype)
➢ View (with name) or stream (with streamtype)
▪ Execute (run the result processor)
v12 Work in progress
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• (Notes)QueryResultProcessor how it works
Sort
doccol1
DQL1
ftdoccol
Dbsearch
doccol
DQL2
Combine Fetch
View
Specified
output
Input
(Notes)DocumentCollections
Optional join/lookup
Quick fetch
including DQL executes
(uses formula overrides
Domino sort service
(with streaming optimization)
or
v12 Work in progress
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• (Notes)QueryResultProcessor additional information
▪ NEW - Sort package is decoupled from view building
➢ In stream mode, we don’t need to wait for a completed view
build
▪ Separate column formulas for each DocumentCollection
▪ Views created can be used and discarded or retained
➢ Given input DocumentCollections, views cannot be refreshed
➢ Document security problem (multi-db documents have multiple
readers and authors lists)
▪ Join strategies – sort/merge and nested loop using views or
FT indexes
Early Access September 2020 drop non-DQL Feature
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• Domino Transaction Support in Lotusscript/Java
▪ (Notes)Database object has 3 new methods
➢ TransactionBegin – starts a unit of work
➢ TransactionCommit – completes a unit of work
➢ TransactionRollback – aborts everything since TransactionBegin
▪ Automatic rollback happens when
➢ Database object is closed or goes out of scope
➢ Agent is terminated
▪ Large, uncommitted transactions can cause log file full (crash)
▪ Transactions cannot nest (one db, one level, one at a time)
v12 Work in progress – non-DQL
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• Field length limit relief
▪ Aha idea - https://domino-ideas.hcltechsw.com/ideas/DDXP-I-5
▪ Traditional limits:
➢ 32k limitation on field size
➢ 62k limitation on document summaries
• Other problems:
➢ Better error messages when limits are hit
➢ Support in views and folders for larger fields
➢ Designer support (code size)
➢ Other Domino limitations – like 32k Lotusscript arrays
v12 Work in progress – non-DQL
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• Field length limit relief (continued)
• (load) compact <db> -ls (or -largesummary) on
➢ First delivered ~ 9.01FP8
➢ New max sizes:
✓ All fields (text lists or number or time ranges) – 64K
✓ Document summary size - 16MB (had been 62k)
➢ Requires compact to ODS 52
• Have you tried this?
v12 Work in progress – non-DQL
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• Field length limit relief (continued)
▪ Multiple core API and persistent data structure changes
▪ Will require a new ODS and large summaries enabled
▪ Only the max summary size (16MB) will remain –
➢ That is, the SUM of the lengths of all summary fields
➢ No size limit within the 16MB for individual summary fields
▪ Nonsummary fields can be up to 4GB (not a typo)
▪ Retain a hard limit on view-indexable fields (64K)
v12 Work in progress – non-DQL
Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com
• Field length limit relief (continued)
• “Field is too large (32K) or View's column & selection formulas
are too large”
➢ Catch-all, multiple venues and error states throw the error
➢ Often is the SUM of field lengths generating the error – no one
field is responsible
• Effort for v12 – separate the states into 2 types and improve –
➢ Overall summary size – provide a document summary “map” to
show sizes only
➢ Individual fields – include field name in the message
30
Q&A

More Related Content

What's hot

5 essential tools for the PHP Developer on Windows
5 essential tools for the PHP Developer on Windows5 essential tools for the PHP Developer on Windows
5 essential tools for the PHP Developer on WindowsStefan Koopmanschap
 
VAST 8.0
VAST 8.0VAST 8.0
VAST 8.0ESUG
 
Drupal 8 and Pantheon
Drupal 8 and PantheonDrupal 8 and Pantheon
Drupal 8 and PantheonPantheon
 
Managing Translation Workflows in Drupal 7
Managing Translation Workflows in Drupal 7Managing Translation Workflows in Drupal 7
Managing Translation Workflows in Drupal 7Suzanne Dergacheva
 
A Personal Journey
A Personal JourneyA Personal Journey
A Personal JourneyMichael Lihs
 
Highlights from microsoft ignite 2015
Highlights from microsoft ignite 2015Highlights from microsoft ignite 2015
Highlights from microsoft ignite 2015Kim Frehe
 
Engage 2018 adm04 - The lazy admin wins
Engage 2018   adm04 - The lazy admin winsEngage 2018   adm04 - The lazy admin wins
Engage 2018 adm04 - The lazy admin winsMatteo Bisi
 
Behavioral driven development with Behat
Behavioral driven development with BehatBehavioral driven development with Behat
Behavioral driven development with BehatPromet Source
 
Drupal Webinar: Ignite and Accelerate Your Drupal 7 to Drupal 9 Migration
Drupal Webinar: Ignite and Accelerate Your Drupal 7 to Drupal 9 MigrationDrupal Webinar: Ignite and Accelerate Your Drupal 7 to Drupal 9 Migration
Drupal Webinar: Ignite and Accelerate Your Drupal 7 to Drupal 9 MigrationCyber-Duck
 
Composer tools and frameworks for drupal.ppt
Composer tools and frameworks for drupal.pptComposer tools and frameworks for drupal.ppt
Composer tools and frameworks for drupal.pptPromet Source
 
Implementing Certificate Based Authentication for HCL Traveler Access - Enga...
 Implementing Certificate Based Authentication for HCL Traveler Access - Enga... Implementing Certificate Based Authentication for HCL Traveler Access - Enga...
Implementing Certificate Based Authentication for HCL Traveler Access - Enga...Milan Matejic
 
Whats New in Visual Studio 2019
Whats New in Visual Studio 2019Whats New in Visual Studio 2019
Whats New in Visual Studio 2019Mike Douglas
 
Engage 2020 - Ad19. Engaging users with HCL Connections Touchpoint and User I...
Engage 2020 - Ad19. Engaging users with HCL Connections Touchpoint and User I...Engage 2020 - Ad19. Engaging users with HCL Connections Touchpoint and User I...
Engage 2020 - Ad19. Engaging users with HCL Connections Touchpoint and User I...Matteo Bisi
 
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)Brian Culver
 
Untangling spring week2
Untangling spring week2Untangling spring week2
Untangling spring week2Derek Jacoby
 
Untangling spring week6
Untangling spring week6Untangling spring week6
Untangling spring week6Derek Jacoby
 
O365 Developer Bootcamp NJ 2018 - Material
O365 Developer Bootcamp NJ 2018 - MaterialO365 Developer Bootcamp NJ 2018 - Material
O365 Developer Bootcamp NJ 2018 - MaterialThomas Daly
 
[20160314][CUHK][CSCI4140]Life of an Agile Team]
[20160314][CUHK][CSCI4140]Life of an Agile Team][20160314][CUHK][CSCI4140]Life of an Agile Team]
[20160314][CUHK][CSCI4140]Life of an Agile Team]Wong Hoi Sing Edison
 
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?Wong Hoi Sing Edison
 

What's hot (20)

5 essential tools for the PHP Developer on Windows
5 essential tools for the PHP Developer on Windows5 essential tools for the PHP Developer on Windows
5 essential tools for the PHP Developer on Windows
 
VAST 8.0
VAST 8.0VAST 8.0
VAST 8.0
 
Drupal 8 and Pantheon
Drupal 8 and PantheonDrupal 8 and Pantheon
Drupal 8 and Pantheon
 
Managing Translation Workflows in Drupal 7
Managing Translation Workflows in Drupal 7Managing Translation Workflows in Drupal 7
Managing Translation Workflows in Drupal 7
 
A Personal Journey
A Personal JourneyA Personal Journey
A Personal Journey
 
Highlights from microsoft ignite 2015
Highlights from microsoft ignite 2015Highlights from microsoft ignite 2015
Highlights from microsoft ignite 2015
 
Engage 2018 adm04 - The lazy admin wins
Engage 2018   adm04 - The lazy admin winsEngage 2018   adm04 - The lazy admin wins
Engage 2018 adm04 - The lazy admin wins
 
Behavioral driven development with Behat
Behavioral driven development with BehatBehavioral driven development with Behat
Behavioral driven development with Behat
 
Drupal Webinar: Ignite and Accelerate Your Drupal 7 to Drupal 9 Migration
Drupal Webinar: Ignite and Accelerate Your Drupal 7 to Drupal 9 MigrationDrupal Webinar: Ignite and Accelerate Your Drupal 7 to Drupal 9 Migration
Drupal Webinar: Ignite and Accelerate Your Drupal 7 to Drupal 9 Migration
 
Composer tools and frameworks for drupal.ppt
Composer tools and frameworks for drupal.pptComposer tools and frameworks for drupal.ppt
Composer tools and frameworks for drupal.ppt
 
Implementing Certificate Based Authentication for HCL Traveler Access - Enga...
 Implementing Certificate Based Authentication for HCL Traveler Access - Enga... Implementing Certificate Based Authentication for HCL Traveler Access - Enga...
Implementing Certificate Based Authentication for HCL Traveler Access - Enga...
 
Whats New in Visual Studio 2019
Whats New in Visual Studio 2019Whats New in Visual Studio 2019
Whats New in Visual Studio 2019
 
Engage 2020 - Ad19. Engaging users with HCL Connections Touchpoint and User I...
Engage 2020 - Ad19. Engaging users with HCL Connections Touchpoint and User I...Engage 2020 - Ad19. Engaging users with HCL Connections Touchpoint and User I...
Engage 2020 - Ad19. Engaging users with HCL Connections Touchpoint and User I...
 
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 
Untangling spring week2
Untangling spring week2Untangling spring week2
Untangling spring week2
 
Untangling spring week6
Untangling spring week6Untangling spring week6
Untangling spring week6
 
O365 Developer Bootcamp NJ 2018 - Material
O365 Developer Bootcamp NJ 2018 - MaterialO365 Developer Bootcamp NJ 2018 - Material
O365 Developer Bootcamp NJ 2018 - Material
 
[20160314][CUHK][CSCI4140]Life of an Agile Team]
[20160314][CUHK][CSCI4140]Life of an Agile Team][20160314][CUHK][CSCI4140]Life of an Agile Team]
[20160314][CUHK][CSCI4140]Life of an Agile Team]
 
Using Features
Using FeaturesUsing Features
Using Features
 
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?
[HKDUG] #20151017 - BarCamp 2015 - Drupal 8 is Coming! Are You Ready?
 

Similar to OpenNTF Webinar Series: DQL with John Curtis September 2020

DITA on a Shoe String
DITA on a Shoe StringDITA on a Shoe String
DITA on a Shoe StringStan Doherty
 
Introduction to InfluxDB 2.0 & Your First Flux Query by Sonia Gupta, Develope...
Introduction to InfluxDB 2.0 & Your First Flux Query by Sonia Gupta, Develope...Introduction to InfluxDB 2.0 & Your First Flux Query by Sonia Gupta, Develope...
Introduction to InfluxDB 2.0 & Your First Flux Query by Sonia Gupta, Develope...InfluxData
 
Nu Skin: Integrating the Day CMS with Translation.com
Nu Skin: Integrating the Day CMS with Translation.comNu Skin: Integrating the Day CMS with Translation.com
Nu Skin: Integrating the Day CMS with Translation.comDay Software
 
An XPager's Guide to Process Server-Side Jobs on Domino
An XPager's Guide to Process Server-Side Jobs on DominoAn XPager's Guide to Process Server-Side Jobs on Domino
An XPager's Guide to Process Server-Side Jobs on DominoFrank van der Linden
 
ICONUK 2013 - An XPager's Guide to Process Server-Side Jobs on IBM® Domino®
ICONUK 2013 - An XPager's Guide to Process Server-Side Jobs on IBM® Domino®ICONUK 2013 - An XPager's Guide to Process Server-Side Jobs on IBM® Domino®
ICONUK 2013 - An XPager's Guide to Process Server-Side Jobs on IBM® Domino®Serdar Basegmez
 
Intro to InfluxDB 2.0 and Your First Flux Query by Sonia Gupta
Intro to InfluxDB 2.0 and Your First Flux Query by Sonia GuptaIntro to InfluxDB 2.0 and Your First Flux Query by Sonia Gupta
Intro to InfluxDB 2.0 and Your First Flux Query by Sonia GuptaInfluxData
 
SQL in the Hybrid World
SQL in the Hybrid WorldSQL in the Hybrid World
SQL in the Hybrid WorldTanel Poder
 
ReactJS vs AngularJS - Head to Head comparison
ReactJS vs AngularJS - Head to Head comparisonReactJS vs AngularJS - Head to Head comparison
ReactJS vs AngularJS - Head to Head comparison500Tech
 
Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...
Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...
Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...Serdar Basegmez
 
Coding Like the Wind - Tips and Tricks for the Microsoft Visual Studio 2012 C...
Coding Like the Wind - Tips and Tricks for the Microsoft Visual Studio 2012 C...Coding Like the Wind - Tips and Tricks for the Microsoft Visual Studio 2012 C...
Coding Like the Wind - Tips and Tricks for the Microsoft Visual Studio 2012 C...Rainer Stropek
 
Running Cognos on Hadoop
Running Cognos on HadoopRunning Cognos on Hadoop
Running Cognos on HadoopSenturus
 
Achieving Full Stack DevOps at Colonial Life
Achieving Full Stack DevOps at Colonial Life Achieving Full Stack DevOps at Colonial Life
Achieving Full Stack DevOps at Colonial Life DevOps.com
 
.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven Design
.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven Design.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven Design
.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven DesignNETFest
 
Large Scale Production DITA landscape @SAP
Large Scale Production DITA landscape @SAPLarge Scale Production DITA landscape @SAP
Large Scale Production DITA landscape @SAPYoussef Bennani
 
December OpenNTF Webinar: The Volt MX LotusScript Toolkit
December OpenNTF Webinar: The Volt MX LotusScript ToolkitDecember OpenNTF Webinar: The Volt MX LotusScript Toolkit
December OpenNTF Webinar: The Volt MX LotusScript ToolkitHoward Greenberg
 
Near real-time anomaly detection at Lyft
Near real-time anomaly detection at LyftNear real-time anomaly detection at Lyft
Near real-time anomaly detection at Lyftmarkgrover
 

Similar to OpenNTF Webinar Series: DQL with John Curtis September 2020 (20)

DITA on a Shoe String
DITA on a Shoe StringDITA on a Shoe String
DITA on a Shoe String
 
Introduction to InfluxDB 2.0 & Your First Flux Query by Sonia Gupta, Develope...
Introduction to InfluxDB 2.0 & Your First Flux Query by Sonia Gupta, Develope...Introduction to InfluxDB 2.0 & Your First Flux Query by Sonia Gupta, Develope...
Introduction to InfluxDB 2.0 & Your First Flux Query by Sonia Gupta, Develope...
 
Nu Skin: Integrating the Day CMS with Translation.com
Nu Skin: Integrating the Day CMS with Translation.comNu Skin: Integrating the Day CMS with Translation.com
Nu Skin: Integrating the Day CMS with Translation.com
 
An XPager's Guide to Process Server-Side Jobs on Domino
An XPager's Guide to Process Server-Side Jobs on DominoAn XPager's Guide to Process Server-Side Jobs on Domino
An XPager's Guide to Process Server-Side Jobs on Domino
 
ICONUK 2013 - An XPager's Guide to Process Server-Side Jobs on IBM® Domino®
ICONUK 2013 - An XPager's Guide to Process Server-Side Jobs on IBM® Domino®ICONUK 2013 - An XPager's Guide to Process Server-Side Jobs on IBM® Domino®
ICONUK 2013 - An XPager's Guide to Process Server-Side Jobs on IBM® Domino®
 
Intro to InfluxDB 2.0 and Your First Flux Query by Sonia Gupta
Intro to InfluxDB 2.0 and Your First Flux Query by Sonia GuptaIntro to InfluxDB 2.0 and Your First Flux Query by Sonia Gupta
Intro to InfluxDB 2.0 and Your First Flux Query by Sonia Gupta
 
Html5
Html5Html5
Html5
 
SQL in the Hybrid World
SQL in the Hybrid WorldSQL in the Hybrid World
SQL in the Hybrid World
 
ReactJS vs AngularJS - Head to Head comparison
ReactJS vs AngularJS - Head to Head comparisonReactJS vs AngularJS - Head to Head comparison
ReactJS vs AngularJS - Head to Head comparison
 
Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...
Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...
Engage 2019: Your Data in the Major Leagues: A Practical and Updated Guide to...
 
Coding Like the Wind - Tips and Tricks for the Microsoft Visual Studio 2012 C...
Coding Like the Wind - Tips and Tricks for the Microsoft Visual Studio 2012 C...Coding Like the Wind - Tips and Tricks for the Microsoft Visual Studio 2012 C...
Coding Like the Wind - Tips and Tricks for the Microsoft Visual Studio 2012 C...
 
Running Cognos on Hadoop
Running Cognos on HadoopRunning Cognos on Hadoop
Running Cognos on Hadoop
 
Achieving Full Stack DevOps at Colonial Life
Achieving Full Stack DevOps at Colonial Life Achieving Full Stack DevOps at Colonial Life
Achieving Full Stack DevOps at Colonial Life
 
Kevin A Williams
Kevin A WilliamsKevin A Williams
Kevin A Williams
 
.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven Design
.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven Design.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven Design
.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven Design
 
Promise of DevOps
Promise of DevOpsPromise of DevOps
Promise of DevOps
 
Lotus Domino 8.5
Lotus Domino 8.5Lotus Domino 8.5
Lotus Domino 8.5
 
Large Scale Production DITA landscape @SAP
Large Scale Production DITA landscape @SAPLarge Scale Production DITA landscape @SAP
Large Scale Production DITA landscape @SAP
 
December OpenNTF Webinar: The Volt MX LotusScript Toolkit
December OpenNTF Webinar: The Volt MX LotusScript ToolkitDecember OpenNTF Webinar: The Volt MX LotusScript Toolkit
December OpenNTF Webinar: The Volt MX LotusScript Toolkit
 
Near real-time anomaly detection at Lyft
Near real-time anomaly detection at LyftNear real-time anomaly detection at Lyft
Near real-time anomaly detection at Lyft
 

Recently uploaded

Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 

Recently uploaded (20)

Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 

OpenNTF Webinar Series: DQL with John Curtis September 2020

  • 1. OPENNTF WEBINARS September Webinar - What's New with Domino Query Language with John Curtis from HCL
  • 2. AGENDA • Welcome – Howard Greenberg • John Curtis • Questions – Graham Acres
  • 3. ASKING QUESTIONS • First Question – Will this be recorded? • Yes, view on YouTube!!! • https://www.youtube.com/user/OpenNTF • Use the Questions Pane in GoToWebinar • We will get to your questions at the end of the webinar • The speakers will respond to your questions verbally • (not in the Questions pane) • Please keep all questions related to the topics that our speakers are discussing!!! • Unrelated Question => post at: • http://openntf.slack.com/
  • 4. THANKS TO THE OPENNTF SPONSORS • HCL made a significant contribution to help our organization • Funds these webinars! • Contests like Hackathons • Running the organization • Prominic donates all IT related services • Cloud Hosting for OpenNTF • Infrastructure management for HCL Domino and Atlassian Servers • System Administration for day-to-day operation
  • 5. THIS IS OUR COMMUNITY • Join us and get involved! • We are all volunteers • No effort is too small • If your idea is bigger than you can do on your own, we can connect you to a team to work on it • Test or help or modify an existing project • Write guides or documentation • Add reviews on projects / stars on Snippets
  • 6. NEXT WEBINAR • October 22, 2020 • Michael Smith – A Flexible View Control for XPages • Signup at https://openntf.org/webinars
  • 7. UPCOMING EVENTS • Let’s Connect Virtual Event – September 29-30 • https://letsconnect.world/agenda/ • Collabsphere – October 27-29 • https://collabsphere.org/ug/cs2020.nsf/index.html • DNUG – monthly online events • https://dnug.de/en/dnug47online-2/
  • 8. 8 | Copyright © 2019 HCL Technologies Limited | www.hcltech.com8 | Technology for the Next Decade, Today Copyright © 2019 HCL Technologies Limited | www.hcltechsw.com What's New with Domino Query Language (and Domino Appdev) John Curtis Software Architect, Project Lead, Domino Development HCL Digital Solutions @john_d_curtis_ http://www.jdcurtis.blog john_curtis@pnp-hcl.com
  • 9. Copyright © 2020 HCL Technologies Limited | www.hcltechsw.com DQL Evolution October 2018 December 2018 1H-2021 March 2020 • Consolidation of Domino search and results processing • Constant improvement in • Performance • Capability • Multiple venues and programming models December 2019 DQL V1 FT Support Inboard catalog FT Support completed Statistics Performance Results processing (sort, federation, joins) Formula Language inclusion
  • 10. v11.0.1 DQL Features Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • Complete full text index utilization – enable numeric and date terms to take advantage of FT indexes ▪ 5-200X improvement in speed ▪ DQL plan and costing executes FT terms first, then views, then NSF scans ▪ Seamless – existing DQL syntax will work automatically on terms and across Boolean operators ▪ Caveats/limitations: ➢ Single-occurrence fields only (Domino does NOT FT index multiple field values of numbers and dates) ➢ No TIMEs in the datetime values, only dates
  • 11. v11.0.1 DQL Features Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • DQL search strategy by term type Term type Full Text Search View Search NSF Scan field = ‘text’? No Yes Yes field contains (‘Text’) Yes No No field = 123122 Yes * Yes Yes field > ‘text’ No Yes Yes field < 123122 Yes * Yes Yes field = @dt(‘2020-09-17’) Yes * Yes Yes field > @dt(‘2020-09-17’) Yes * Yes Yes field = @dt(‘2020-09-17T11:00:00.00’) No Yes Yes * = single occurrence only (FT search does NOT handle ranges or lists)
  • 12. v11.0.1 DQL Features (continued) Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • DQL statistics ▪ Avg, max, min by term type and overall ▪ “show stat query*” • Enhanced Boolean optimization ▪ Deeper results injection ▪ Reduces view and especially NSF scan processing for much faster query times
  • 13. v12 Early Access September 2020 drop DQL Features Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • DQL client/server ▪ DominoQuery working against remote databases (not supported till now) ▪ Transaction appears in the “show trans” list from the Domino console ▪ Full support for substitution variables, entire DQL syntax
  • 14. v12 Early Access September 2020 drop DQL Features (continued) Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • Embedded Formula Language ▪ Syntax ▪ @FL or @formula (case insensitive) ▪ Embedded syntax enclosed in single quotes @fl(‘@length > 2320) @FORMULA(‘@left(fld1;3) = "abl" or @left(fld2;2) = "ab“’) ▪ Provides ▪ Intra-document terms (between different fields) ▪ Full expression support ▪ HUGE library of existing functionality
  • 15. v12 Early Access September 2020 drop DQL Features (continued) Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • Embedded Formula Language (continued) ▪ Support for substitution variables @fl(‘@length’) > ?lengthvar @formula(‘@left(fld1;3)’) = ?fld1var or @FL(‘@left(fld2;2)’) = ?fld2var ▪ Complete compatibility with the rest of DQL ▪ All formula language terms satisfied via NSF scanning ▪ All ANDed/ORed terms satisfied with a single pass ▪ Current implementation ▪ 256-byte maximum Formula Language syntax allowed ▪ No substitution variable support for an entire FL string
  • 16. Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com DEMO
  • 17. v12 Work in progress Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • Results processing ▪ Extensive handling of document collections ➢ NOT just DQL – ALL document collections ▪ Across multiple databases and database schemas ▪ Flexible computed values everywhere ▪ Sorting (including categorization) ▪ Combine rules (joins, lookups, etc.) ▪ Aggregate function support ▪ Impossible to avoid complexity
  • 18. v12 Work in progress Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • Results processing (continued) – the details ▪ (Notes)QueryResultProcessor ➢ New backend (Java/Lotusscript) class ➢ Supplied lists of data and other classes working together ➢ Builds on known classes never combined or used this way before ➢ Extensive capabilities, multiple output formats and objects ➢ Low code? Not so much, but let’s build one to see
  • 19. v12 Work in progress Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • (Notes)QueryResultProcessor (continued) – methods ▪ AddSortColumn(programmatic name, column title, sort order, hidden, categorized) ▪ Akin to creating a view column on the fly ▪ In fact, one of the output types IS a view ▪ May add additional attributes but those shown should be familiar from use in Designer ▪ REMEMBER the programmatic name – it will appear again in other calls ▪ If NOT overridden, will be used as a field name to fetch
  • 20. v12 Work in progress Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • (Notes)QueryResultProcessor (continued) – methods ▪ AddDocumentCollection((Notes)DocumentCollection doccol, collection name) … or … ▪ AddDominoQuery ((Notes)DominoQuery, collection name) ▪ (Notes)DocumentCollection can be created against any database using any means (db.search, ftsearch, getalldocumentsbykey or DQL) ▪ DominoQuery option will also execute DQL for you ▪ Remember collection name – will appear later
  • 21. v12 Work in progress Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • (Notes)QueryResultProcessor (continued) – methods ▪ AddFormula(document collection name, programmatic column name, formula) ➢ Used to override the programmatic name with a formula to compute and fetch values for processing by the results engine ➢ Can use one call to override the formula for multiple document collections using wildcards Addsortcolumn (“name”, “Name Column Title”, “ascending” … ) … AddDocumentCollection(doccol, “doccol1”) .. e.g. from db.search - database 1 AddDocumentCollection(doccol2, “doccol2) .. e.g. from ftsearch - database 2 AddFormula(“doccol*”, “name”, “@Propercase(NameField)”)
  • 22. v12 Work in progress Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • (Notes)QueryResultProcessor (continued) – methods ▪ AddCombineRule (left programmatic name, rule, right programmatic name) ➢ Prior to sort or view create, combine data using the sort columns (with applied formulas) using the specified rule (or method) ➢ “Join” is the most familiar rule type, also keyword lookup ++ ▪ SetOutputType (type, viewname, streamtype) ➢ View (with name) or stream (with streamtype) ▪ Execute (run the result processor)
  • 23. v12 Work in progress Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • (Notes)QueryResultProcessor how it works Sort doccol1 DQL1 ftdoccol Dbsearch doccol DQL2 Combine Fetch View Specified output Input (Notes)DocumentCollections Optional join/lookup Quick fetch including DQL executes (uses formula overrides Domino sort service (with streaming optimization) or
  • 24. v12 Work in progress Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • (Notes)QueryResultProcessor additional information ▪ NEW - Sort package is decoupled from view building ➢ In stream mode, we don’t need to wait for a completed view build ▪ Separate column formulas for each DocumentCollection ▪ Views created can be used and discarded or retained ➢ Given input DocumentCollections, views cannot be refreshed ➢ Document security problem (multi-db documents have multiple readers and authors lists) ▪ Join strategies – sort/merge and nested loop using views or FT indexes
  • 25. Early Access September 2020 drop non-DQL Feature Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • Domino Transaction Support in Lotusscript/Java ▪ (Notes)Database object has 3 new methods ➢ TransactionBegin – starts a unit of work ➢ TransactionCommit – completes a unit of work ➢ TransactionRollback – aborts everything since TransactionBegin ▪ Automatic rollback happens when ➢ Database object is closed or goes out of scope ➢ Agent is terminated ▪ Large, uncommitted transactions can cause log file full (crash) ▪ Transactions cannot nest (one db, one level, one at a time)
  • 26. v12 Work in progress – non-DQL Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • Field length limit relief ▪ Aha idea - https://domino-ideas.hcltechsw.com/ideas/DDXP-I-5 ▪ Traditional limits: ➢ 32k limitation on field size ➢ 62k limitation on document summaries • Other problems: ➢ Better error messages when limits are hit ➢ Support in views and folders for larger fields ➢ Designer support (code size) ➢ Other Domino limitations – like 32k Lotusscript arrays
  • 27. v12 Work in progress – non-DQL Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • Field length limit relief (continued) • (load) compact <db> -ls (or -largesummary) on ➢ First delivered ~ 9.01FP8 ➢ New max sizes: ✓ All fields (text lists or number or time ranges) – 64K ✓ Document summary size - 16MB (had been 62k) ➢ Requires compact to ODS 52 • Have you tried this?
  • 28. v12 Work in progress – non-DQL Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • Field length limit relief (continued) ▪ Multiple core API and persistent data structure changes ▪ Will require a new ODS and large summaries enabled ▪ Only the max summary size (16MB) will remain – ➢ That is, the SUM of the lengths of all summary fields ➢ No size limit within the 16MB for individual summary fields ▪ Nonsummary fields can be up to 4GB (not a typo) ▪ Retain a hard limit on view-indexable fields (64K)
  • 29. v12 Work in progress – non-DQL Copyright © 2020 HC L Technologies Limited | www.hcltechsw.com • Field length limit relief (continued) • “Field is too large (32K) or View's column & selection formulas are too large” ➢ Catch-all, multiple venues and error states throw the error ➢ Often is the SUM of field lengths generating the error – no one field is responsible • Effort for v12 – separate the states into 2 types and improve – ➢ Overall summary size – provide a document summary “map” to show sizes only ➢ Individual fields – include field name in the message