Henry Kuijpers created JCR-4770:
-----------------------------------

             Summary: Query read limit should be overridable through query 
option 
                 Key: JCR-4770
                 URL: https://issues.apache.org/jira/browse/JCR-4770
             Project: Jackrabbit Content Repository
          Issue Type: Improvement
          Components: query, sql
            Reporter: Henry Kuijpers


When executing a query, it could happen that a query yields so many results 
(for example in the case of migration scripts), that it's causing a failure. 
Not while executing the query, but while iterating through the results of the 
query.

We have a few migration scripts in our codebase that need to migrate content 
(such as CMS components, pages, ...). We also have, especially on production, 
quite a lot of content. Such scripts can easily find 100.000+ nodes and thus 
produce a resultset that is bigger than the "query read limit".

This limit can currently be configured on system-level, either through a system 
property, or through OSGi configuration. QueryEngineSettingsService takes care 
of that. 

Raising this limit means raising the limit for the entire system. For every 
query that is executed. It would be ideal if we could configure this limit on 
the query level, for example through an option (like the options for traversal 
and for index tag selection). I would propose to add an option:

"select * from ... option (readlimit 999999)" 

which would take precedence over the limit that is active in 
QueryEngineSettingsService. Then, it would be the responsibility of the 
developer who creates the query to specify the correct overridden limit (or not 
specify a limit at all, of course).



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to