使用 discourse_encrypt 创建账户不起作用

您好,

自从我昨天更新后 第一次第二次,注册就无法正常工作了。

当我点击创建账户模态框中的“创建您的账户”按钮时,模态框顶部会出现一个错误提示:

出了些问题,用户名或邮箱可能已被注册。请尝试使用“忘记密码”链接。

但这并非事实,因为我尝试使用了新的邮箱和用户名……并且字段验证也已通过。

我还有两个必需的 confirmation 用户字段,如果这有什么意义的话。


我尝试了安全模式和重建等方法……都没有奏效。
控制台或 /logs 中没有错误。


我昨天做的另一件事是添加了以下内容来清理旧的资源文件 :arrow_down_small:
(我使用的是 Digital Ocean Spaces)

但这在我重建或更新时运行成功。


这是网站。 您可以在这里查看。

任何帮助或想法都将不胜感激!谢谢 :slightly_smiling_face:

1 个赞

我刚试着注册,也遇到了一个错误(虽然通过翻译我得到了“出了点问题!注册目前正在维护中!请稍后再回来试试。”[1]

它在这里的 Meta 上可以正常工作,所以这可能有助于缩小范围。我会尝试看看是否能用一些自定义字段等来破坏我的测试站点 :+1:


  1. Valami hiba történt! A regisztráció jelenleg karbantartás alatt van! Kérlek, látogass vissza kicsit később és próbáld újra。 ↩︎

1 个赞

谢谢你的检查 :slightly_smiling_face: 是的,我只是重写了默认的错误消息,以警告用户问题出在我们这边。抱歉我忘了提一下。:confused:

但是这条消息是:login.something_already_taken

1 个赞

I tried to register with invite and it dropped me finally an Internal Server Error :slightly_smiling_face:

With the following error in /logs

Info
ActiveRecord::NotNullViolation (PG::NotNullViolation: ERROR:  null value in column "encrypt_pms_default" of relation "user_options" violates not-null constraint
DETAIL:  Failing row contains (5333, f, t, t, t, f, t, 10080, 300000, 2880, null, 2, f, 1, 1, f, 2, 0, t, null, {}, f, 0, 0, 1, 0, 0, f, null, f, null, f, null, 0, null, t, null, null, null, null, 3, null, 1, f, null, 0, null).
)
app/models/user.rb:1734:in `create_user_option'
app/models/invite_redeemer.rb:142:in `create_user_from_invite'
app/models/invite_redeemer.rb:208:in `invited_user'
app/models/invite_redeemer.rb:260:in `add_user_to_groups'
app/models/invite_redeemer.rb:226:in `process_invitation'
app/models/invite_redeemer.rb:55:in `block in redeem'
app/models/invite_redeemer.rb:53:in `redeem'
app/models/invite.rb:227:in `redeem'
app/controllers/invites_controller.rb:227:in `perform_accept_invitation'
app/controllers/application_controller.rb:413:in `block in with_resolved_locale'
app/controllers/application_controller.rb:413:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:71:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:368:in `call'
config/initializers/008-rack-cors.rb:25:in `call'
config/initializers/100-quiet_logger.rb:23:in `call'
config/initializers/100-silence_logger.rb:31:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
lib/middleware/request_tracker.rb:202:in `call'
Backtrace
rack-mini-profiler (3.0.0) lib/patches/db/pg.rb:69:in `exec_params'

rack-mini-profiler (3.0.0) lib/patches/db/pg.rb:69:in `exec_params'

activerecord (7.0.3.1) lib/active_record/connection_adapters/postgresql_adapter.rb:768:in `block (2 levels) in exec_no_cache'

activesupport (7.0.3.1) lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'

activesupport (7.0.3.1) lib/active_support/dependencies/interlock.rb:41:in `permit_concurrent_loads'

activerecord (7.0.3.1) lib/active_record/connection_adapters/postgresql_adapter.rb:767:in `block in exec_no_cache'

activesupport (7.0.3.1) lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'

activesupport (7.0.3.1) lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'

activesupport (7.0.3.1) lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'

activesupport (7.0.3.1) lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'

activerecord (7.0.3.1) lib/active_record/connection_adapters/abstract_adapter.rb:765:in `block in log'

activesupport (7.0.3.1) lib/active_support/notifications/instrumenter.rb:24:in `instrument'

activerecord (7.0.3.1) lib/active_record/connection_adapters/abstract_adapter.rb:756:in `log'

activerecord (7.0.3.1) lib/active_record/connection_adapters/postgresql_adapter.rb:766:in `exec_no_cache'

activerecord (7.0.3.1) lib/active_record/connection_adapters/postgresql_adapter.rb:745:in `execute_and_clear'

activerecord (7.0.3.1) lib/active_record/connection_adapters/postgresql/database_statements.rb:54:in `exec_query'

activerecord (7.0.3.1) lib/active_record/connection_adapters/abstract/database_statements.rb:132:in `exec_insert'

activerecord (7.0.3.1) lib/active_record/connection_adapters/postgresql/database_statements.rb:92:in `exec_insert'

activerecord (7.0.3.1) lib/active_record/connection_adapters/abstract/database_statements.rb:167:in `insert'

activerecord (7.0.3.1) lib/active_record/connection_adapters/abstract/query_cache.rb:22:in `insert'

activerecord (7.0.3.1) lib/active_record/persistence.rb:496:in `_insert_record'

activerecord (7.0.3.1) lib/active_record/persistence.rb:1096:in `_create_record'

activerecord (7.0.3.1) lib/active_record/counter_cache.rb:166:in `_create_record'

activerecord (7.0.3.1) lib/active_record/locking/optimistic.rb:79:in `_create_record'

activerecord (7.0.3.1) lib/active_record/attribute_methods/dirty.rb:222:in `_create_record'

activerecord (7.0.3.1) lib/active_record/callbacks.rb:461:in `block in _create_record'

activesupport (7.0.3.1) lib/active_support/callbacks.rb:107:in `run_callbacks'

activesupport (7.0.3.1) lib/active_support/callbacks.rb:929:in `_run_create_callbacks'

activerecord (7.0.3.1) lib/active_record/callbacks.rb:461:in `_create_record'

activerecord (7.0.3.1) lib/active_record/timestamp.rb:108:in `_create_record'

activerecord (7.0.3.1) lib/active_record/persistence.rb:1067:in `create_or_update'

activerecord (7.0.3.1) lib/active_record/callbacks.rb:457:in `block in create_or_update'

activesupport (7.0.3.1) lib/active_support/callbacks.rb:107:in `run_callbacks'

activesupport (7.0.3.1) lib/active_support/callbacks.rb:929:in `_run_save_callbacks'

activerecord (7.0.3.1) lib/active_record/callbacks.rb:457:in `create_or_update'

activerecord (7.0.3.1) lib/active_record/timestamp.rb:126:in `create_or_update'

activerecord (7.0.3.1) lib/active_record/persistence.rb:648:in `save!'

activerecord (7.0.3.1) lib/active_record/validations.rb:53:in `save!'

activerecord (7.0.3.1) lib/active_record/transactions.rb:302:in `block in save!'

activerecord (7.0.3.1) lib/active_record/transactions.rb:354:in `block in with_transaction_returning_status'

activerecord (7.0.3.1) lib/active_record/connection_adapters/abstract/database_statements.rb:314:in `transaction'

activerecord (7.0.3.1) lib/active_record/transactions.rb:350:in `with_transaction_returning_status'

activerecord (7.0.3.1) lib/active_record/transactions.rb:302:in `save!'

activerecord (7.0.3.1) lib/active_record/suppressor.rb:54:in `save!'

activerecord (7.0.3.1) lib/active_record/persistence.rb:55:in `create!'

app/models/user.rb:1734:in `create_user_option'

activesupport (7.0.3.1) lib/active_support/callbacks.rb:400:in `block in make_lambda'

activesupport (7.0.3.1) lib/active_support/callbacks.rb:236:in `block in halting_and_conditional'

activesupport (7.0.3.1) lib/active_support/callbacks.rb:599:in `block in invoke_after'

activesupport (7.0.3.1) lib/active_support/callbacks.rb:599:in `each'

activesupport (7.0.3.1) lib/active_support/callbacks.rb:599:in `invoke_after'

activesupport (7.0.3.1) lib/active_support/callbacks.rb:108:in `run_callbacks'

activesupport (7.0.3.1) lib/active_support/callbacks.rb:929:in `_run_create_callbacks'

activerecord (7.0.3.1) lib/active_record/callbacks.rb:461:in `_create_record'

activerecord (7.0.3.1) lib/active_record/timestamp.rb:108:in `_create_record'

activerecord (7.0.3.1) lib/active_record/persistence.rb:1067:in `create_or_update'

activerecord (7.0.3.1) lib/active_record/callbacks.rb:457:in `block in create_or_update'

activesupport (7.0.3.1) lib/active_support/callbacks.rb:118:in `block in run_callbacks'

activerecord (7.0.3.1) lib/active_record/autosave_association.rb:370:in `around_save_collection_association'

activesupport (7.0.3.1) lib/active_support/callbacks.rb:127:in `block in run_callbacks'

activesupport (7.0.3.1) lib/active_support/callbacks.rb:138:in `run_callbacks'

activesupport (7.0.3.1) lib/active_support/callbacks.rb:929:in `_run_save_callbacks'

activerecord (7.0.3.1) lib/active_record/callbacks.rb:457:in `create_or_update'

activerecord (7.0.3.1) lib/active_record/timestamp.rb:126:in `create_or_update'

activerecord (7.0.3.1) lib/active_record/persistence.rb:648:in `save!'

activerecord (7.0.3.1) lib/active_record/validations.rb:53:in `save!'

activerecord (7.0.3.1) lib/active_record/transactions.rb:302:in `block in save!'

activerecord (7.0.3.1) lib/active_record/transactions.rb:354:in `block in with_transaction_returning_status'

activerecord (7.0.3.1) lib/active_record/connection_adapters/abstract/database_statements.rb:314:in `transaction'

activerecord (7.0.3.1) lib/active_record/transactions.rb:350:in `with_transaction_returning_status'

activerecord (7.0.3.1) lib/active_record/transactions.rb:302:in `save!'

activerecord (7.0.3.1) lib/active_record/suppressor.rb:54:in `save!'

app/models/invite_redeemer.rb:142:in `create_user_from_invite'

app/models/invite_redeemer.rb:208:in `invited_user'

app/models/invite_redeemer.rb:260:in `add_user_to_groups'

app/models/invite_redeemer.rb:226:in `process_invitation'

app/models/invite_redeemer.rb:55:in `block in redeem'

activerecord (7.0.3.1) lib/active_record/connection_adapters/abstract/transaction.rb:319:in `block in within_new_transaction'

activesupport (7.0.3.1) lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'

activesupport (7.0.3.1) lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'

activesupport (7.0.3.1) lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'

activesupport (7.0.3.1) lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'

activerecord (7.0.3.1) lib/active_record/connection_adapters/abstract/transaction.rb:317:in `within_new_transaction'

activerecord (7.0.3.1) lib/active_record/connection_adapters/abstract/database_statements.rb:316:in `transaction'

activerecord (7.0.3.1) lib/active_record/transactions.rb:209:in `transaction'

app/models/invite_redeemer.rb:53:in `redeem'

app/models/invite.rb:227:in `redeem'

app/controllers/invites_controller.rb:227:in `perform_accept_invitation'

actionpack (7.0.3.1) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'

actionpack (7.0.3.1) lib/abstract_controller/base.rb:215:in `process_action'

actionpack (7.0.3.1) lib/action_controller/metal/rendering.rb:53:in `process_action'

actionpack (7.0.3.1) lib/abstract_controller/callbacks.rb:234:in `block in process_action'

activesupport (7.0.3.1) lib/active_support/callbacks.rb:118:in `block in run_callbacks'

app/controllers/application_control

Which is probably related with Discourse Encrypt (for Private Messages) plugin it was an update 12 days ago so when I first updated the site yesterday this is also updated.
This plugin is installed on my site but is disabled. I try to comment out in app.yml and see how it works. :slightly_smiling_face:

2 个赞

我现在可以复制了。 :+1:
我的测试站点上也有加密功能,但它之前是启用的。如果我禁用它,我的测试用户注册就会出错。

2 个赞

这是个好消息 :slightly_smiling_face: 我刚重建完,现在我已经平静下来了 :smiley: 谢谢 Jammy :slightly_smiling_face: 你能把它移到 Bug 频道吗?

1 个赞

对我来说,即使在不带插件重建后,它仍然不起作用。也许这还不够……:person_shrugging:

当我将其关闭时,它会中断,但当我将其重新打开时,它又可以正常工作了。您认为您可能需要重新安装它,并在修复程序进行时将其打开吗?

1 个赞

我想知道将插件修改核心表列而不是使用 plugin_store_rows 表或专用的 discourse_pluginname_function 表背后的想法是什么。\n\n在我看来,这总是会带来麻烦(或者用 Sam 的话说:“有点噩梦”)和复杂的问题

5 个赞

这似乎奏效了 :+1: 谢谢! :slightly_smiling_face:

1 个赞

哇。或者一个 user_custom_field。这确实令人惊讶。

感谢您提供的报告@Don,我们正在处理此问题的修复程序,并将尽快解决。\n\n更新:修复程序正在开发中 https://github.com/discourse/discourse-encrypt/pull/231,它应该很快会被合并。

5 个赞

我今天更新了,现在禁用插件后运行得很棒。我还没试过移除并重新构建,但我相信那也会奏效。非常感谢修复!:slightly_smiling_face:

2 个赞