由于Babble插件,员工无法关闭通知

您好!我们最近将自托管部署升级到了最新的 Discourse 版本(2.9.0.beta1, 5a93ce421d),但我们注意到与升级前(2.8 版本)相比,工作人员通知的数量急剧增加,并且我们一直无法弄清楚如何_清除我们工作人员通知中的任何一个_。

在过去几个小时的活动中,我有几十条通知,但点击通知下拉菜单或个人资料中专门的通知页面上的“忽略”按钮似乎没有任何作用——所有未读通知仍然是未读状态:

我不确定为什么有些通知被标记为已读而有些则没有——我已经单独打开了每一个来调查,但它们的已读/未读状态似乎没有改变。据我所知,这似乎只影响工作人员通知,但这尚未得到证实。

有人能指引我解决这个问题吗?我注意到点击“忽略”时,网络选项卡显示了一些 Service Worker 的交互——我的 Service Worker 是否已过时?或者可能是旧的管理员设置有了新的行为?

非常感谢!

1 个赞

算了——我们所有的用户账户似乎都有大量与他们无关的通知,包括员工通知,而且我也无法清除这些通知。我也在几个不同的浏览器中进行了检查。

编辑:这几乎看起来像是所有用户都有一个共享的通知集——收到的报告似乎都表明每个人通知面板中显示的都是同一组通知。

1 个赞

打开 yoursite.com/sidekiq/retries 查看是否有卡住的项。
如果必须,请删除 sidekiq/queues 中的项目。

2 个赞

感谢 @IAmGav - 重试页面显示“未找到重试项”,这听起来一切正常。

删除实际的队列?我需要手动重新创建它们吗?

1 个赞

应该看起来是这样的

如果你删除了它,它会重新创建它。
这是为了阻止垃圾邮件通知。

2 个赞

太好了,我已经删除了队列,它们现在似乎已重新初始化,这很棒。

1 个赞

我无法完全确定您的问题是否已解决。

可能是 Redis 暂时宕机了,而您现在才收到所有通知。

另一种可能性是,您安装的某个插件导致您收到过多通知。我记得过去曾见过类似的情况,但想不起是哪个插件了。

3 个赞

索引已损坏,需要修复。

3 个赞

我认为是 babble:

2 个赞

大家好,感谢跟进 - @IAmGav 正在私信帮助我。

是的,索引是个问题 - 我们因此无法从最近的备份中恢复。我们从备份中(手动)删除了重复记录,并成功进行了恢复(使用了内置的 discourse restore 命令行工具)。

“共享全局通知”仍然存在 - 我们现在正在移除 Babble 插件,有更多信息时会回复。愚蠢的是,我们并没有使用 Babble 插件,它只是被安装了但未启用。

感谢大家的帮助!

4 个赞

各位,移除 babble 插件似乎为我们解决了“共享全局通知”问题——感谢大家的帮助和建议。

6 个赞