Discourseのインストールをベータ版 2.7 beta 2 から 2.7 beta 3 へ正常に更新した直後、投稿数が270件程度しかない2つのアカウントを持つユーザーの「ユーザーマージ」を試みました。
45分経っても、ウェブサイトはグレーアウトしたまま「投稿の所有権を変更中」と表示されており、どこかで何らかのプロセスがフリーズしたのではないかと推測しています。
当フォーラムはそれ以外ではほとんどアクティビティがなく(ログイン中のユーザーもいませんでした)。
このフォーラム内で手がかりを探していたところ、Discourseが2.5.0 beta 3よりネイティブ機能としてマージ機能を含めるようになったことで、間もなく機能しなくなる可能性がある「Merge Users」プラグインについて言及した投稿を見つけました。
私はまだそのプラグイン(バージョン0.1)をインストールしたままですが、実際にはプラグインメニューからマージを開始したわけではなく、ユーザーのプロフィールページ(右下)にある「Merge」ボタンを使用しました。つまり、プラグインではなくネイティブのDiscourseツールを呼び出したということでしょうか?
プロセスが停止した原因がプラグインにあるのか、それともDiscourse自体にあるのかはわかりません。
別のブラウザセッションから管理者としてサイトにはアクセスでき、両方のプロフィールがまだ存在していることが確認できます。ただし、マージ対象の古い投稿のうち9件を除くすべての投稿が、新しい意図されたアカウントに関連付けられています。その数字の横には、この特定のマージ試行に関連するものかどうかは不明ですが、以下の警告が表示されています:「すべての投稿を削除できません。一部の投稿は60日以上前に投稿されています(delete_user_max_post_age設定のため)。」
実際、正常にマージされた投稿はすべて60日以上前のものだったため、この警告の意味がわかりません。
現在、このプロセス(まだ続いていると仮定して)をエレガントに終了させ、データベースの破損を防ぐにはどうすればよいでしょうか?