[ 
https://issues.apache.org/jira/browse/NIFI-5855?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pierre Villard updated NIFI-5855:
---------------------------------
    Description: 
Related to NIFI-5727, which for the query that GenerateTableFetch uses to get 
column/table information removes an unnecessary {{COUNT(*)}} clause when 
Partition Size = 0, the ORDER BY clause can also be removed. This is because 
there will be a single generated query that will fetch all rows that match the 
filters. The ORDER BY is necessary during pagination (when Partition Size > 0) 
so it can fetch from Row X to Row Y based on the row number, which is only 
constant if the column is ordered.

This Jira proposes to remove the ORDER BY clause from the generated query if 
Partition Size is set to 0. Note that this can cause the output of the executed 
query to not guaranteed to be ordered; it is a possible change in behavior, but 
we don't document any guarantees about row ordering anyway. If the user needs 
the rows ordered, they can do it with QueryRecord, or they can add the ORDER BY 
clause manually via ReplaceText.

  was:
Related to NIFI-5727, which for the query that GenerateTableFetch uses to get 
column/table information removes an unnecessary COUNT(*) clause when Partition 
Size = 0, the ORDER BY clause can also be removed. This is because there will 
be a single generated query that will fetch all rows that match the filters. 
The ORDER BY is necessary during pagination (when Partition Size > 0) so it can 
fetch from Row X to Row Y based on the row number, which is only constant if 
the column is ordered.

This Jira proposes to remove the ORDER BY clause from the generated query if 
Partition Size is set to 0. Note that this can cause the output of the executed 
query to not guaranteed to be ordered; it is a possible change in behavior, but 
we don't document any guarantees about row ordering anyway. If the user needs 
the rows ordered, they can do it with QueryRecord, or they can add the ORDER BY 
clause manually via ReplaceText.


> Optimize GenerateTableFetch to remove unnecessary ORDER BY clause
> -----------------------------------------------------------------
>
>                 Key: NIFI-5855
>                 URL: https://issues.apache.org/jira/browse/NIFI-5855
>             Project: Apache NiFi
>          Issue Type: Improvement
>          Components: Extensions
>            Reporter: Matt Burgess
>            Assignee: Matt Burgess
>            Priority: Major
>             Fix For: 1.9.0
>
>
> Related to NIFI-5727, which for the query that GenerateTableFetch uses to get 
> column/table information removes an unnecessary {{COUNT(*)}} clause when 
> Partition Size = 0, the ORDER BY clause can also be removed. This is because 
> there will be a single generated query that will fetch all rows that match 
> the filters. The ORDER BY is necessary during pagination (when Partition Size 
> > 0) so it can fetch from Row X to Row Y based on the row number, which is 
> only constant if the column is ordered.
> This Jira proposes to remove the ORDER BY clause from the generated query if 
> Partition Size is set to 0. Note that this can cause the output of the 
> executed query to not guaranteed to be ordered; it is a possible change in 
> behavior, but we don't document any guarantees about row ordering anyway. If 
> the user needs the rows ordered, they can do it with QueryRecord, or they can 
> add the ORDER BY clause manually via ReplaceText.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to