2 Likes
(post deleted by author)
1 Like
I can repro with words starting with a colon like :test and with for example with:images
There is an error 500 in the browser console and an entry in /logs
Message
ActiveRecord::PreparedStatementInvalid (missing value for :test in: "(REGEXP_REPLACE(TO_TSQUERY('english', ''':test'':*')::text, '<->|<\\d+>', '&', 'g')::tsquery @@ post_search_data.search_data OR bookmarks.name ILIKE :q)")
app/services/registered_bookmarkable.rb:44:in `block in perform_search_query'
app/services/post_bookmarkable.rb:36:in `search_query'
app/services/registered_bookmarkable.rb:43:in `perform_search_query'
lib/bookmark_query.rb:55:in `block in list_all'
lib/bookmark_query.rb:45:in `map'
lib/bookmark_query.rb:45:in `list_all'
app/models/user_bookmark_list.rb:35:in `load'
app/controllers/users_controller.rb:1916:in `block (2 levels) in bookmarks'
app/controllers/users_controller.rb:1905:in `bookmarks'
app/controllers/application_controller.rb:439:in `block in with_resolved_locale'
app/controllers/application_controller.rb:439:in `with_resolved_locale'
app/controllers/application_controller.rb:1072:in `ensure_dont_cache_page'
lib/middleware/omniauth_bypass_middleware.rb:35:in `call'
lib/middleware/crawler_hooks.rb:11:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:415:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:26:in `call'
lib/middleware/default_headers.rb:13:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
lib/middleware/processing_request.rb:12:in `call'
lib/middleware/request_tracker.rb:376:in `call'
Backtrace
activerecord (8.0.4) lib/active_record/relation/query_methods.rb:1698:in `rescue in build_named_bound_sql_literal'
activerecord (8.0.4) lib/active_record/relation/query_methods.rb:1695:in `build_named_bound_sql_literal'
activerecord (8.0.4) lib/active_record/relation/query_methods.rb:1625:in `build_where_clause'
activerecord (8.0.4) lib/active_record/relation/query_methods.rb:1044:in `where!'
activerecord (8.0.4) lib/active_record/relation/query_methods.rb:1039:in `where'
app/services/registered_bookmarkable.rb:44:in `block in perform_search_query'
app/services/post_bookmarkable.rb:36:in `search_query'
app/services/registered_bookmarkable.rb:43:in `perform_search_query'
lib/bookmark_query.rb:55:in `block in list_all'
/usr/local/lib/ruby/3.3.0/set.rb:501:in `each_key'
/usr/local/lib/ruby/3.3.0/set.rb:501:in `each'
lib/bookmark_query.rb:45:in `map'
lib/bookmark_query.rb:45:in `list_all'
app/models/user_bookmark_list.rb:35:in `load'
app/controllers/users_controller.rb:1916:in `block (2 levels) in bookmarks'
actionpack (8.0.4) lib/action_controller/metal/mime_responds.rb:224:in `respond_to'
app/controllers/users_controller.rb:1905:in `bookmarks'
actionpack (8.0.4) lib/action_controller/metal/basic_implicit_render.rb:8:in `send_action'
actionpack (8.0.4) lib/abstract_controller/base.rb:215:in `process_action'
actionpack (8.0.4) lib/action_controller/metal/rendering.rb:193:in `process_action'
actionpack (8.0.4) lib/abstract_controller/callbacks.rb:261:in `block in process_action'
activesupport (8.0.4) lib/active_support/callbacks.rb:120:in `block in run_callbacks'
app/controllers/application_controller.rb:439:in `block in with_resolved_locale'
i18n (1.14.7) lib/i18n.rb:353:in `with_locale'
app/controllers/application_controller.rb:439:in `with_resolved_locale'
activesupport (8.0.4) lib/active_support/callbacks.rb:129:in `block in run_callbacks'
app/controllers/application_controller.rb:1072:in `ensure_dont_cache_page'
activesupport (8.0.4) lib/active_support/callbacks.rb:129:in `block in run_callbacks'
activesupport (8.0.4) lib/active_support/callbacks.rb:140:in `run_callbacks'
actionpack (8.0.4) lib/abstract_controller/callbacks.rb:260:in `process_action'
actionpack (8.0.4) lib/action_controller/metal/rescue.rb:27:in `process_action'
actionpack (8.0.4) lib/action_controller/metal/instrumentation.rb:76:in `block in process_action'
activesupport (8.0.4) lib/active_support/notifications.rb:210:in `block in instrument'
activesupport (8.0.4) lib/active_support/notifications/instrumenter.rb:58:in `instrument'
activesupport (8.0.4) lib/active_support/notifications.rb:210:in `instrument'
actionpack (8.0.4) lib/action_controller/metal/instrumentation.rb:75:in `process_action'
actionpack (8.0.4) lib/action_controller/metal/params_wrapper.rb:259:in `process_action'
activerecord (8.0.4) lib/active_record/railties/controller_runtime.rb:39:in `process_action'
actionpack (8.0.4) lib/abstract_controller/base.rb:152:in `process'
actionview (8.0.4) lib/action_view/rendering.rb:40:in `process'
rack-mini-profiler (4.0.1) lib/mini_profiler/profiling_methods.rb:90:in `block in profile_method'
actionpack (8.0.4) lib/action_controller/metal.rb:252:in `dispatch'
actionpack (8.0.4) lib/action_controller/metal.rb:335:in `dispatch'
actionpack (8.0.4) lib/action_dispatch/routing/route_set.rb:67:in `dispatch'
actionpack (8.0.4) lib/action_dispatch/routing/route_set.rb:50:in `serve'
actionpack (8.0.4) lib/action_dispatch/journey/router.rb:53:in `block in serve'
actionpack (8.0.4) lib/action_dispatch/journey/router.rb:133:in `block in find_routes'
actionpack (8.0.4) lib/action_dispatch/journey/router.rb:126:in `each'
actionpack (8.0.4) lib/action_dispatch/journey/router.rb:126:in `find_routes'
actionpack (8.0.4) lib/action_dispatch/journey/router.rb:34:in `serve'
actionpack (8.0.4) lib/action_dispatch/routing/route_set.rb:908:in `call'
lib/middleware/omniauth_bypass_middleware.rb:35:in `call'
lib/middleware/crawler_hooks.rb:11:in `call'
rack (2.2.21) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.21) lib/rack/conditional_get.rb:27:in `call'
rack (2.2.21) lib/rack/head.rb:12:in `call'
actionpack (8.0.4) lib/action_dispatch/http/permissions_policy.rb:38:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:415:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:26:in `call'
rack (2.2.21) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.21) lib/rack/session/abstract/id.rb:260:in `call'
actionpack (8.0.4) lib/action_dispatch/middleware/cookies.rb:706:in `call'
actionpack (8.0.4) lib/action_dispatch/middleware/callbacks.rb:31:in `block in call'
activesupport (8.0.4) lib/active_support/callbacks.rb:100:in `run_callbacks'
actionpack (8.0.4) lib/action_dispatch/middleware/callbacks.rb:30:in `call'
actionpack (8.0.4) lib/action_dispatch/middleware/debug_exceptions.rb:31:in `call'
actionpack (8.0.4) lib/action_dispatch/middleware/show_exceptions.rb:32:in `call'
logster (2.20.1) lib/logster/middleware/reporter.rb:40:in `call'
lib/middleware/default_headers.rb:13:in `call'
lograge (0.14.0) lib/lograge/rails_ext/rack/logger.rb:18:in `call_app'
railties (8.0.4) lib/rails/rack/logger.rb:29:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
actionpack (8.0.4) lib/action_dispatch/middleware/request_id.rb:34:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
rack (2.2.21) lib/rack/method_override.rb:24:in `call'
rack (2.2.21) lib/rack/sendfile.rb:127:in `call'
plugins/discourse-prometheus/lib/middleware/metrics.rb:14:in `call'
rack-mini-profiler (4.0.1) lib/mini_profiler.rb:191:in `call'
lib/middleware/processing_request.rb:12:in `call'
message_bus (4.4.1) lib/message_bus/rack/middleware.rb:60:in `call'
lib/middleware/request_tracker.rb:376:in `call'
actionpack (8.0.4) lib/action_dispatch/middleware/remote_ip.rb:96:in `call'
rails_failover (2.3.0) lib/rails_failover/active_record/middleware.rb:67:in `block in call'
activerecord (8.0.4) lib/active_record/connection_handling.rb:401:in `with_role_and_shard'
activerecord (8.0.4) lib/active_record/connection_handling.rb:149:in `connected_to'
rails_failover (2.3.0) lib/rails_failover/active_record/middleware.rb:64:in `call'
rails_multisite (7.0.0) lib/rails_multisite/middleware.rb:26:in `call'
railties (8.0.4) lib/rails/engine.rb:535:in `call'
railties (8.0.4) lib/rails/railtie.rb:226:in `public_send'
railties (8.0.4) lib/rails/railtie.rb:226:in `method_missing'
rack (2.2.21) lib/rack/urlmap.rb:74:in `block in call'
rack (2.2.21) lib/rack/urlmap.rb:58:in `each'
rack (2.2.21) lib/rack/urlmap.rb:58:in `call'
unicorn (6.1.0) lib/unicorn/http_server.rb:634:in `process_client'
unicorn (6.1.0) lib/unicorn/http_server.rb:739:in `worker_loop'
unicorn (6.1.0) lib/unicorn/http_server.rb:547:in `spawn_missing_workers'
unicorn (6.1.0) lib/unicorn/http_server.rb:143:in `start'
unicorn (6.1.0) bin/unicorn:128:in `<top (required)>'
vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `load'
vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `<main>'
1 Like
We will get this sorted, thanks for reporting.
1 Like
fixed per:
But I feel like a complementary feature request is to actually support the operators, that is going to be much harder.
I don’t think I need that. I can use the normal search with in:bookmarks and any other operator.
