Undefined Table Error for relation "locations_topic"

Environment

Discourse Version: 3.3.0.beta3-dev

Plugin Commit: 6.6.14

Steps to Reproduce

Hi Folk,

This is a new local dev installation of discourse (so new that unfortunately its a beta release so that might be the problem) and I’ve kept the default settings

I configured a category to show the map button I get a server error

when I click on the details it seems like maybe a migration wasn’t run

I don’t have a domain set up it’s just using localhost

Any thoughts or suggestions would be appreciated, even if it’s just “try without running a beta version of discourse” (I don’t know how that happened)

Example

http://localhost:9090/c/lords/6/l/map.json?filter=map

I’ve just set up a dev instance to see if Discourse can do what I’d like to do (which includes mapping so your plugin is pretty key - the first thing I’ve tried outside of the main installation)

Logs

The full trace
rack-mini-profiler (3.3.1) lib/patches/db/pg.rb:72:in exec_params' rack-mini-profiler (3.3.1) lib/patches/db/pg.rb:72:in exec_params’
activerecord (7.0.8.4) lib/active_record/connection_adapters/postgresql_adapter.rb:768:in block (2 levels) in exec_no_cache' activesupport (7.0.8.4) lib/active_support/concurrency/share_lock.rb:187:in yield_shares’
activesupport (7.0.8.4) lib/active_support/dependencies/interlock.rb:41:in permit_concurrent_loads' activerecord (7.0.8.4) lib/active_record/connection_adapters/postgresql_adapter.rb:767:in block in exec_no_cache’
activesupport (7.0.8.4) lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in handle_interrupt' activesupport (7.0.8.4) lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in block in synchronize’
activesupport (7.0.8.4) lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in handle_interrupt' activesupport (7.0.8.4) lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in synchronize’
activerecord (7.0.8.4) lib/active_record/connection_adapters/abstract_adapter.rb:752:in block in log' activesupport (7.0.8.4) lib/active_support/notifications/instrumenter.rb:24:in instrument’
activerecord (7.0.8.4) lib/active_record/connection_adapters/abstract_adapter.rb:743:in log' activerecord (7.0.8.4) lib/active_record/connection_adapters/postgresql_adapter.rb:766:in exec_no_cache’
activerecord (7.0.8.4) lib/active_record/connection_adapters/postgresql_adapter.rb:745:in execute_and_clear' activerecord (7.0.8.4) lib/active_record/connection_adapters/postgresql/database_statements.rb:54:in exec_query’
activerecord (7.0.8.4) lib/active_record/connection_adapters/abstract/database_statements.rb:560:in select' activerecord (7.0.8.4) lib/active_record/connection_adapters/abstract/database_statements.rb:66:in select_all’
activerecord (7.0.8.4) lib/active_record/connection_adapters/abstract/query_cache.rb:107:in block in select_all' activerecord (7.0.8.4) lib/active_record/connection_adapters/abstract/query_cache.rb:137:in block in cache_sql’
activesupport (7.0.8.4) lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in handle_interrupt' activesupport (7.0.8.4) lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in block in synchronize’
activesupport (7.0.8.4) lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in handle_interrupt' activesupport (7.0.8.4) lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in synchronize’
activerecord (7.0.8.4) lib/active_record/connection_adapters/abstract/query_cache.rb:128:in cache_sql' activerecord (7.0.8.4) lib/active_record/connection_adapters/abstract/query_cache.rb:107:in select_all’
activerecord (7.0.8.4) lib/active_record/relation.rb:938:in block (2 levels) in exec_main_query' activerecord (7.0.8.4) lib/active_record/relation/finder_methods.rb:432:in apply_join_dependency’
activerecord (7.0.8.4) lib/active_record/relation.rb:932:in block in exec_main_query' activerecord (7.0.8.4) lib/active_record/relation.rb:962:in skip_query_cache_if_necessary’
activerecord (7.0.8.4) lib/active_record/relation.rb:928:in exec_main_query' activerecord (7.0.8.4) lib/active_record/relation.rb:914:in block in exec_queries’
activerecord (7.0.8.4) lib/active_record/relation.rb:962:in skip_query_cache_if_necessary' activerecord (7.0.8.4) lib/active_record/relation.rb:908:in exec_queries’
activerecord (7.0.8.4) lib/active_record/relation.rb:695:in load' activerecord (7.0.8.4) lib/active_record/relation.rb:250:in records’
activerecord (7.0.8.4) lib/active_record/relation/delegation.rb:88:in +' lib/topic_query.rb:493:in prioritize_pinned_topics’
lib/topic_query.rb:514:in create_list' plugins/discourse-locations/plugin.rb:251:in list_map’
app/controllers/list_controller.rb:63:in public_send' app/controllers/list_controller.rb:63:in block (2 levels) in class:ListController
app/controllers/list_controller.rb:116:in public_send' app/controllers/list_controller.rb:116:in block (2 levels) in class:ListController
actionpack (7.0.8.4) lib/action_controller/metal/basic_implicit_render.rb:6:in send_action' actionpack (7.0.8.4) lib/abstract_controller/base.rb:215:in process_action’
actionpack (7.0.8.4) lib/action_controller/metal/rendering.rb:165:in process_action' actionpack (7.0.8.4) lib/abstract_controller/callbacks.rb:234:in block in process_action’
activesupport (7.0.8.4) lib/active_support/callbacks.rb:118:in block in run_callbacks' app/controllers/application_controller.rb:422:in block in with_resolved_locale’
i18n (1.14.5) lib/i18n.rb:351:in with_locale' app/controllers/application_controller.rb:422:in with_resolved_locale’
activesupport (7.0.8.4) lib/active_support/callbacks.rb:127:in block in run_callbacks' activesupport (7.0.8.4) lib/active_support/callbacks.rb:138:in run_callbacks’
actionpack (7.0.8.4) lib/abstract_controller/callbacks.rb:233:in process_action' actionpack (7.0.8.4) lib/action_controller/metal/rescue.rb:23:in process_action’
actionpack (7.0.8.4) lib/action_controller/metal/instrumentation.rb:67:in block in process_action' activesupport (7.0.8.4) lib/active_support/notifications.rb:206:in block in instrument’
activesupport (7.0.8.4) lib/active_support/notifications/instrumenter.rb:24:in instrument' activesupport (7.0.8.4) lib/active_support/notifications.rb:206:in instrument’
actionpack (7.0.8.4) lib/action_controller/metal/instrumentation.rb:66:in process_action' actionpack (7.0.8.4) lib/action_controller/metal/params_wrapper.rb:259:in process_action’
activerecord (7.0.8.4) lib/active_record/railties/controller_runtime.rb:27:in process_action' actionpack (7.0.8.4) lib/abstract_controller/base.rb:151:in process’
actionview (7.0.8.4) lib/action_view/rendering.rb:39:in process' rack-mini-profiler (3.3.1) lib/mini_profiler/profiling_methods.rb:115:in block in profile_method’
actionpack (7.0.8.4) lib/action_controller/metal.rb:188:in dispatch' actionpack (7.0.8.4) lib/action_controller/metal.rb:251:in dispatch’
actionpack (7.0.8.4) lib/action_dispatch/routing/route_set.rb:49:in dispatch' actionpack (7.0.8.4) lib/action_dispatch/routing/route_set.rb:32:in serve’
actionpack (7.0.8.4) lib/action_dispatch/journey/router.rb:50:in block in serve' actionpack (7.0.8.4) lib/action_dispatch/journey/router.rb:32:in each’
actionpack (7.0.8.4) lib/action_dispatch/journey/router.rb:32:in serve' actionpack (7.0.8.4) lib/action_dispatch/routing/route_set.rb:852:in call’
lib/middleware/omniauth_bypass_middleware.rb:64:in call' rack (2.2.9) lib/rack/tempfile_reaper.rb:15:in call’
rack (2.2.9) lib/rack/conditional_get.rb:27:in call' rack (2.2.9) lib/rack/head.rb:12:in call’
actionpack (7.0.8.4) lib/action_dispatch/http/permissions_policy.rb:38:in call' lib/content_security_policy/middleware.rb:12:in call’
lib/middleware/csp_script_nonce_injector.rb:12:in call' config/initializers/008-rack-cors.rb:14:in call’
rack (2.2.9) lib/rack/session/abstract/id.rb:266:in context' rack (2.2.9) lib/rack/session/abstract/id.rb:260:in call’
actionpack (7.0.8.4) lib/action_dispatch/middleware/cookies.rb:704:in call' activerecord (7.0.8.4) lib/active_record/migration.rb:638:in call’
actionpack (7.0.8.4) lib/action_dispatch/middleware/callbacks.rb:27:in block in call' activesupport (7.0.8.4) lib/active_support/callbacks.rb:99:in run_callbacks’
actionpack (7.0.8.4) lib/action_dispatch/middleware/callbacks.rb:26:in call' actionpack (7.0.8.4) lib/action_dispatch/middleware/executor.rb:14:in call’
actionpack (7.0.8.4) lib/action_dispatch/middleware/actionable_exceptions.rb:17:in call' actionpack (7.0.8.4) lib/action_dispatch/middleware/debug_exceptions.rb:28:in call’
actionpack (7.0.8.4) lib/action_dispatch/middleware/show_exceptions.rb:29:in call' logster (2.19.1) lib/logster/middleware/reporter.rb:40:in call’
railties (7.0.8.4) lib/rails/rack/logger.rb:40:in call_app' railties (7.0.8.4) lib/rails/rack/logger.rb:27:in call’
config/initializers/100-quiet_logger.rb:20:in call' config/initializers/100-silence_logger.rb:29:in call’
actionpack (7.0.8.4) lib/action_dispatch/middleware/remote_ip.rb:93:in call' actionpack (7.0.8.4) lib/action_dispatch/middleware/request_id.rb:26:in call’
rack (2.2.9) lib/rack/method_override.rb:24:in call' actionpack (7.0.8.4) lib/action_dispatch/middleware/executor.rb:14:in call’
actionpack (7.0.8.4) lib/action_dispatch/middleware/static.rb:23:in call' rack (2.2.9) lib/rack/sendfile.rb:110:in call’
actionpack (7.0.8.4) lib/action_dispatch/middleware/host_authorization.rb:138:in call' lib/middleware/missing_avatars.rb:22:in call’
lib/middleware/turbo_dev.rb:31:in call' rack-mini-profiler (3.3.1) lib/mini_profiler.rb:334:in call’
message_bus (4.3.8) lib/message_bus/rack/middleware.rb:60:in call' railties (7.0.8.4) lib/rails/engine.rb:530:in call’
railties (7.0.8.4) lib/rails/railtie.rb:226:in public_send' railties (7.0.8.4) lib/rails/railtie.rb:226:in method_missing’
rack (2.2.9) lib/rack/urlmap.rb:74:in block in call' rack (2.2.9) lib/rack/urlmap.rb:58:in each’
rack (2.2.9) 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)>’
bin/unicorn:93:in load' bin/unicorn:93:in block in ’
bin/unicorn:92:in fork' bin/unicorn:92:in

I think you may have answered your own issue :thinking:

Have you run migrations?

1 Like

Doh! That makes sense. I didn’t realize that you need to explicitly do that.

Thanks so much!

1 Like

Ran the migration and it works. Thanks again!

1 Like

Yep, it’s part of the build process in Production, but not in dev.