Defect #39519
closed500 Error when trying to add certain fields with the Add Filter feature
0%
Description
I've noticed after upgrading to Redmine 5.0.5.stable, if you have both the Easy Gantt and Redmine Agile PRO plugins enabled at the same time, you receive a 500 Internal Server error when trying to add certain fields with the Add Filter feature. I've reached out to the developers of the respective plugins, but I wonder if this is an issue that has been noticed by your team as well. In production.log, I'm seeing the following:
I, [2023-11-06T12:29:58.547562 #30029] INFO -- : [d01219b0-1618-4911-9453-2d2c0014a87d] Started GET "/queries/filter?type=ProjectQuery&name=id" for 72.212.100.43 at 2023-11-06 12:29:58 -0700 I, [2023-11-06T12:29:58.548702 #30029] INFO -- : [d01219b0-1618-4911-9453-2d2c0014a87d] Processing by QueriesController#filter as JSON I, [2023-11-06T12:29:58.548806 #30029] INFO -- : [d01219b0-1618-4911-9453-2d2c0014a87d] Parameters: {"type"=>"ProjectQuery", "name"=>"id"} I, [2023-11-06T12:29:58.555854 #30029] INFO -- : [d01219b0-1618-4911-9453-2d2c0014a87d] Current user: cdbarnes (id=349) I, [2023-11-06T12:29:58.591092 #30029] INFO -- : [d01219b0-1618-4911-9453-2d2c0014a87d] Completed 500 Internal Server Error in 42ms (ActiveRecord: 2.1ms | Allocations: 42551) F, [2023-11-06T12:29:58.631478 #30029] FATAL -- : [d01219b0-1618-4911-9453-2d2c0014a87d] [d01219b0-1618-4911-9453-2d2c0014a87d] SystemStackError (stack level too deep): [d01219b0-1618-4911-9453-2d2c0014a87d] [d01219b0-1618-4911-9453-2d2c0014a87d] plugins/redmine_agile/lib/redmine_agile/patches/queries_controller_patch.rb:35:in `query_class_with_agile' [d01219b0-1618-4911-9453-2d2c0014a87d] plugins/easy_gantt/lib/easy_gantt/queries_controller_patch.rb:17:in `query_class' [d01219b0-1618-4911-9453-2d2c0014a87d] app/controllers/queries_controller.rb:92:in `filter' [d01219b0-1618-4911-9453-2d2c0014a87d] lib/redmine/sudo_mode.rb:61:in `sudo_mode'
Updated by Pavel Rosický over 1 year ago
unfortunately, using alias_method_chain is obsolete and it cannot be combined with prepend if any other plugin patches the same method. There is nothing Redmine could do to prevent that.
try this (untested :)) patch
./lib/redmine_agile/patches/queries_controller_patch.rb
module RedmineAgile module Patches module QueriesControllerPatch def self.included(base) base.prepend(InstanceMethods) end module InstanceMethods def query_class return AgileChartsQuery if params[:type] == 'AgileChartsQuery' super end end end end end unless QueriesController.included_modules.include?(RedmineAgile::Patches::QueriesControllerPatch) QueriesController.include RedmineAgile::Patches::QueriesControllerPatch end
Updated by Christopher Barnes over 1 year ago
I have testing in our development instance of Redmine and this does fix the issue we are having. Thank you for your quick assistance with this!
Updated by Marius BĂLTEANU over 1 year ago
- Status changed from New to Closed
- Resolution set to Invalid