Skip to content

Instantly share code, notes, and snippets.

@AndreMiras
Created August 9, 2013 09:19
Show Gist options
  • Save AndreMiras/6192340 to your computer and use it in GitHub Desktop.
Save AndreMiras/6192340 to your computer and use it in GitHub Desktop.
netaustin/redmine_task_board issue with PostgreSQL
Started GET "/my/taskboard" for 192.168.1.27 at Fri Aug 09 10:59:22 +0200 2013
Processing by MyTaskboardController#my_index as HTML
Current user: andre.miras (id=3)
Completed 500 Internal Server Error in 14ms
ActiveRecord::StatementInvalid (PGError: ERROR: operator does not exist: boolean = integer
LINE 11: ... (assigned_to_id = 3 AND issue_statuses.is_closed = 0 AND pr...
^
HINT: No operator matches the given name and argument type(s). You might need to add explicit type casts.
: SELECT issues.id,
issues.subject,
issues.status_id,
projects.name as project_name,
trackers.name as tracker_name,
issue_priority.name as priority_name,
issue_priority.id as priority_id,
projects.id as project_id,
tba.weight,
issue_statuses.name as status_name,
tba.issue_id FROM "issues" LEFT OUTER JOIN task_board_assignees AS tba ON tba.issue_id = issues.id AND tba.assignee_id = issues.assigned_to_id INNER JOIN issue_statuses ON issues.status_id = issue_statuses.id INNER JOIN trackers ON trackers.id = issues.tracker_id INNER JOIN projects ON projects.id = issues.project_id INNER JOIN enumerations issue_priority ON issues.priority_id = issue_priority.id WHERE (assigned_to_id = 3 AND issue_statuses.is_closed = 0 AND projects.status = 1) ORDER BY weight ASC, issue_priority.position DESC):
/usr/lib/ruby/vendor_ruby/active_record/connection_adapters/postgresql_adapter.rb:1160:in `async_exec'
/usr/lib/ruby/vendor_ruby/active_record/connection_adapters/postgresql_adapter.rb:1160:in `exec_no_cache'
/usr/lib/ruby/vendor_ruby/active_record/connection_adapters/postgresql_adapter.rb:659:in `exec_query'
/usr/lib/ruby/vendor_ruby/active_record/connection_adapters/abstract_adapter.rb:280:in `log'
/usr/lib/ruby/vendor_ruby/active_support/notifications/instrumenter.rb:20:in `instrument'
/usr/lib/ruby/vendor_ruby/active_record/connection_adapters/abstract_adapter.rb:275:in `log'
/usr/lib/ruby/vendor_ruby/active_record/connection_adapters/postgresql_adapter.rb:658:in `exec_query'
/usr/lib/ruby/vendor_ruby/active_record/connection_adapters/postgresql_adapter.rb:1255:in `select'
/usr/lib/ruby/vendor_ruby/active_record/connection_adapters/abstract/database_statements.rb:18:in `select_all'
/usr/lib/ruby/vendor_ruby/active_record/connection_adapters/abstract/query_cache.rb:61:in `select_all'
/usr/lib/ruby/vendor_ruby/active_record/connection_adapters/abstract/query_cache.rb:75:in `cache_sql'
/usr/lib/ruby/vendor_ruby/active_record/connection_adapters/abstract/query_cache.rb:61:in `select_all'
/usr/lib/ruby/vendor_ruby/active_record/querying.rb:38:in `find_by_sql'
/usr/lib/ruby/vendor_ruby/active_record/explain.rb:41:in `logging_query_plan'
/usr/lib/ruby/vendor_ruby/active_record/querying.rb:37:in `find_by_sql'
/usr/lib/ruby/vendor_ruby/active_record/relation.rb:174:in `exec_queries'
/usr/lib/ruby/vendor_ruby/active_record/identity_map.rb:72:in `without'
/usr/lib/ruby/vendor_ruby/active_record/relation.rb:173:in `exec_queries'
/usr/lib/ruby/vendor_ruby/active_record/relation.rb:160:in `to_a'
/usr/lib/ruby/vendor_ruby/active_record/explain.rb:41:in `logging_query_plan'
/usr/lib/ruby/vendor_ruby/active_record/relation.rb:159:in `to_a'
/usr/lib/ruby/vendor_ruby/active_record/relation/delegation.rb:6:in `each'
plugins/redmine_task_board/app/controllers/my_taskboard_controller.rb:35:in `index'
plugins/redmine_task_board/app/controllers/my_taskboard_controller.rb:7:in `my_index'
/usr/lib/ruby/vendor_ruby/action_controller/metal/implicit_render.rb:4:in `send_action'
/usr/lib/ruby/vendor_ruby/action_controller/metal/implicit_render.rb:4:in `send_action'
/usr/lib/ruby/vendor_ruby/abstract_controller/base.rb:167:in `process_action'
/usr/lib/ruby/vendor_ruby/action_controller/metal/rendering.rb:10:in `process_action'
/usr/lib/ruby/vendor_ruby/abstract_controller/callbacks.rb:18:in `process_action'
/usr/lib/ruby/vendor_ruby/active_support/callbacks.rb:469:in `_run__1878556347__process_action__985730798__callbacks'
/usr/lib/ruby/vendor_ruby/active_support/callbacks.rb:405:in `send'
/usr/lib/ruby/vendor_ruby/active_support/callbacks.rb:405:in `__run_callback'
/usr/lib/ruby/vendor_ruby/active_support/callbacks.rb:385:in `_run_process_action_callbacks'
/usr/lib/ruby/vendor_ruby/active_support/callbacks.rb:81:in `send'
/usr/lib/ruby/vendor_ruby/active_support/callbacks.rb:81:in `run_callbacks'
/usr/lib/ruby/vendor_ruby/abstract_controller/callbacks.rb:17:in `process_action'
/usr/lib/ruby/vendor_ruby/action_controller/metal/rescue.rb:29:in `process_action'
/usr/lib/ruby/vendor_ruby/action_controller/metal/instrumentation.rb:30:in `process_action'
/usr/lib/ruby/vendor_ruby/active_support/notifications.rb:123:in `instrument'
/usr/lib/ruby/vendor_ruby/active_support/notifications/instrumenter.rb:20:in `instrument'
/usr/lib/ruby/vendor_ruby/active_support/notifications.rb:123:in `instrument'
/usr/lib/ruby/vendor_ruby/action_controller/metal/instrumentation.rb:29:in `process_action'
/usr/lib/ruby/vendor_ruby/action_controller/metal/params_wrapper.rb:207:in `process_action'
/usr/lib/ruby/vendor_ruby/active_record/railties/controller_runtime.rb:18:in `process_action'
/usr/lib/ruby/vendor_ruby/abstract_controller/base.rb:121:in `process'
/usr/lib/ruby/vendor_ruby/abstract_controller/rendering.rb:45:in `process'
/usr/lib/ruby/vendor_ruby/action_controller/metal.rb:203:in `dispatch'
/usr/lib/ruby/vendor_ruby/action_controller/metal/rack_delegation.rb:14:in `dispatch'
/usr/lib/ruby/vendor_ruby/action_controller/metal.rb:246:in `action'
/usr/lib/ruby/vendor_ruby/action_dispatch/routing/route_set.rb:73:in `call'
/usr/lib/ruby/vendor_ruby/action_dispatch/routing/route_set.rb:73:in `dispatch'
/usr/lib/ruby/vendor_ruby/action_dispatch/routing/route_set.rb:36:in `call'
/usr/lib/ruby/vendor_ruby/journey/router.rb:68:in `call'
/usr/lib/ruby/vendor_ruby/journey/router.rb:56:in `each'
/usr/lib/ruby/vendor_ruby/journey/router.rb:56:in `call'
/usr/lib/ruby/vendor_ruby/action_dispatch/routing/route_set.rb:612:in `call'
/usr/lib/ruby/vendor_ruby/rack/openid.rb:98:in `call'
/usr/lib/ruby/vendor_ruby/action_dispatch/middleware/best_standards_support.rb:17:in `call'
/usr/lib/ruby/vendor_ruby/rack/etag.rb:23:in `call'
/usr/lib/ruby/vendor_ruby/rack/conditionalget.rb:25:in `call'
/usr/lib/ruby/vendor_ruby/action_dispatch/middleware/head.rb:14:in `call'
/usr/lib/ruby/vendor_ruby/action_dispatch/middleware/params_parser.rb:21:in `call'
/usr/lib/ruby/vendor_ruby/action_dispatch/middleware/flash.rb:242:in `call'
/usr/lib/ruby/vendor_ruby/rack/session/abstract/id.rb:205:in `context'
/usr/lib/ruby/vendor_ruby/rack/session/abstract/id.rb:200:in `call'
/usr/lib/ruby/vendor_ruby/action_dispatch/middleware/cookies.rb:341:in `call'
/usr/lib/ruby/vendor_ruby/active_record/query_cache.rb:64:in `call'
/usr/lib/ruby/vendor_ruby/active_record/connection_adapters/abstract/connection_pool.rb:479:in `call'
/usr/lib/ruby/vendor_ruby/action_dispatch/middleware/callbacks.rb:28:in `call'
/usr/lib/ruby/vendor_ruby/active_support/callbacks.rb:405:in `_run__316408940__call__4__callbacks'
/usr/lib/ruby/vendor_ruby/active_support/callbacks.rb:405:in `send'
/usr/lib/ruby/vendor_ruby/active_support/callbacks.rb:405:in `__run_callback'
/usr/lib/ruby/vendor_ruby/active_support/callbacks.rb:385:in `_run_call_callbacks'
/usr/lib/ruby/vendor_ruby/active_support/callbacks.rb:81:in `send'
/usr/lib/ruby/vendor_ruby/active_support/callbacks.rb:81:in `run_callbacks'
/usr/lib/ruby/vendor_ruby/action_dispatch/middleware/callbacks.rb:27:in `call'
/usr/lib/ruby/vendor_ruby/action_dispatch/middleware/remote_ip.rb:31:in `call'
/usr/lib/ruby/vendor_ruby/action_dispatch/middleware/debug_exceptions.rb:16:in `call'
/usr/lib/ruby/vendor_ruby/action_dispatch/middleware/show_exceptions.rb:56:in `call'
/usr/lib/ruby/vendor_ruby/rails/rack/logger.rb:32:in `call_app'
/usr/lib/ruby/vendor_ruby/rails/rack/logger.rb:16:in `call'
/usr/lib/ruby/vendor_ruby/active_support/tagged_logging.rb:22:in `tagged'
/usr/lib/ruby/vendor_ruby/rails/rack/logger.rb:16:in `call'
/usr/lib/ruby/vendor_ruby/action_dispatch/middleware/request_id.rb:22:in `call'
/usr/lib/ruby/vendor_ruby/rack/methodoverride.rb:21:in `call'
/usr/lib/ruby/vendor_ruby/rack/runtime.rb:17:in `call'
/usr/lib/ruby/vendor_ruby/active_support/cache/strategy/local_cache.rb:72:in `call'
/usr/lib/ruby/vendor_ruby/rack/lock.rb:15:in `call'
/usr/lib/ruby/vendor_ruby/action_dispatch/middleware/static.rb:63:in `call'
/usr/lib/ruby/vendor_ruby/rack/cache/context.rb:136:in `forward'
/usr/lib/ruby/vendor_ruby/rack/cache/context.rb:245:in `fetch'
/usr/lib/ruby/vendor_ruby/rack/cache/context.rb:185:in `lookup'
/usr/lib/ruby/vendor_ruby/rack/cache/context.rb:66:in `call!'
/usr/lib/ruby/vendor_ruby/rack/cache/context.rb:51:in `call'
/usr/lib/ruby/vendor_ruby/rails/engine.rb:479:in `call'
/usr/lib/ruby/vendor_ruby/rails/application.rb:223:in `call'
/usr/lib/ruby/vendor_ruby/rack/content_length.rb:14:in `call'
/usr/lib/ruby/vendor_ruby/rails/rack/log_tailer.rb:17:in `call'
/usr/lib/ruby/vendor_ruby/rack/handler/webrick.rb:59:in `service'
/usr/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'
/usr/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
/usr/lib/ruby/1.8/webrick/server.rb:173:in `start_thread'
/usr/lib/ruby/1.8/webrick/server.rb:162:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:162:in `start_thread'
/usr/lib/ruby/1.8/webrick/server.rb:95:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:92:in `each'
/usr/lib/ruby/1.8/webrick/server.rb:92:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:23:in `start'
/usr/lib/ruby/1.8/webrick/server.rb:82:in `start'
/usr/lib/ruby/vendor_ruby/rack/handler/webrick.rb:13:in `run'
/usr/lib/ruby/vendor_ruby/rack/server.rb:265:in `start'
/usr/lib/ruby/vendor_ruby/rails/commands/server.rb:70:in `start'
/usr/lib/ruby/vendor_ruby/rails/commands.rb:55
/usr/lib/ruby/vendor_ruby/rails/commands.rb:50:in `tap'
/usr/lib/ruby/vendor_ruby/rails/commands.rb:50
script/rails:6:in `require'
script/rails:6
@aVolpe
Copy link

aVolpe commented Apr 29, 2014

This make it works for postgres and break the MySql compatibility

diff --git a/app/controllers/my_taskboard_controller.rb b/app/controllers/my_taskboard_controller.rb
index 255bf75..35f1fc6 100644
--- a/app/controllers/my_taskboard_controller.rb
+++ b/app/controllers/my_taskboard_controller.rb
@@ -27,7 +27,7 @@ class MyTaskboardController < ApplicationController
         .joins('INNER JOIN trackers ON trackers.id = issues.tracker_id') \
         .joins('INNER JOIN projects ON projects.id = issues.project_id') \
         .joins('INNER JOIN enumerations issue_priority ON issues.priority_id = issue_priority.id') \
-        .where("assigned_to_id = ? AND issue_statuses.is_closed = 0 AND projects.status = 1", @user.id) \
+        .where("assigned_to_id = ? AND not issue_statuses.is_closed AND projects.status = 1", @user.id) \
         .order("weight ASC, issue_priority.position DESC")
     @not_prioritized = Array.new
     @prioritized = Array.new
@@ -80,4 +80,4 @@ class MyTaskboardController < ApplicationController
     render_404
   end

-end
\ No newline at end of file
+end

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment