Defect #30009
closedEmpty sort criteria for issue query gives error
0%
Description
When saving an Issue query,provide the sort criteria like below, i.e leaving the middle one empty.
Save the query.
With the new query loaded,click on apply.
It gives error.
Bug occured on redmine: 3.4.6
Files
Related issues
Updated by Go MAEDA almost 6 years ago
- Category set to Issues
- Status changed from New to Needs feedback
I could not reproduce the problem. Can you see any error regarding this problem in log/production.log ?
Updated by Kumar Abhinav almost 6 years ago
It is reproducible on a clean install of Redmine 3.4.6.
After you save the query,make sure the same query is loaded & click apply.
Since the middle criteria for sort is left empty,the to_param method in Redmine::SortCriteria throws "undefined method `+' for nil:NilClass" error.
Updated by Bernhard Rohloff almost 6 years ago
I can confirm the defect. It also occurs on the latest trunk.
Switching the query works as expected. As Kumar wrote it only occurs after applying the query a second time.
Updated by Go MAEDA almost 6 years ago
- Status changed from Needs feedback to Confirmed
Kumar Abhinav wrote:
After you save the query,make sure the same query is loaded & click apply.
Yes, I didn't click "Apply" after creating the query. Now I can reproduce the problem.
Updated by Marius BĂLTEANU almost 6 years ago
- File 0001-Remove-blank-keys-from-sort-criterias.patch 0001-Remove-blank-keys-from-sort-criterias.patch added
- Target version set to Candidate for next minor release
Attached a patch that fixes this problem by removing the blank keys from sort criteria.
Another fix is the below one, but I prefer the first solution.
diff --git a/lib/redmine/sort_criteria.rb b/lib/redmine/sort_criteria.rb
index c89ef03c1..acfcbdb0f 100644
--- a/lib/redmine/sort_criteria.rb
+++ b/lib/redmine/sort_criteria.rb
@@ -32,7 +32,7 @@ module Redmine
end
def to_param
- self.collect {|k,o| k + (o == 'desc' ? ':desc' : '')}.join(',')
+ self.collect {|k,o| k + (o == 'desc' ? ':desc' : '') unless k.nil? }.join(',')
end
def to_a
Also, maybe it is a good idea to fix this issue also in the UI by not allowing to select a third sort criteria without selecting the second.
Updated by Marius BĂLTEANU almost 6 years ago
- Subject changed from empty sort criteria for issue query gives error to Empty sort criteria for issue query gives error
Updated by Go MAEDA almost 6 years ago
- Target version changed from Candidate for next minor release to 3.4.7
Updated by Go MAEDA almost 6 years ago
- Status changed from Confirmed to Resolved
- Assignee set to Go MAEDA
- Resolution set to Fixed
Updated by Go MAEDA almost 6 years ago
- Status changed from Resolved to Closed
Committed the patch. Thank you for the patch.
Updated by Go MAEDA almost 5 years ago
- Related to Defect #32737: Duplicate sort keys for issue query cause SQL error with SQL Server added