Merge Users borked?

AI-generated summary

A merge users process in Discourse 2.7 beta 3 appears to be malfunctioning. Paul_King initiated a merge, but the process hung for 45 minutes, showing “Changing post ownership.” This occurred despite the forum having low activity.

Paul_King suspects the issue might be due to having the Merge Users plugin (version 0.1) installed, although the native merge tool was used. A warning message about not being able to delete posts older than 60 days was also displayed, but it’s unclear if this is related to the issue.

After retrying the merge with adjusted settings and eventually using the plugin, the process succeeded. ondrej notes that the native merge function works fine for them, suggesting the issue might be related to the plugin installation.

Paul_King plans to uninstall the plugin and investigate further if the issue persists. The age or source of the posts being merged (imported from a Yahoo Groups forum) might be a contributing factor.

After successfully updating my discourse installation from beta 2.7 beta 2 to 2.7 beta 3 just now, I tried a ‘merge users’, for a user who has only made 270 odd posts between his two accounts.
45 minutes later, website is still greyed out and showing ‘Changing post ownership’ - I assume some process has hung somewhere?.

My forum had otherwise very little activity going on (no other logged in users)

On searching this forum for clues, I stumbled across a post referring to the Merge Users plugin that ‘may be broken soon’ now that Discourse has included the functionality natively (as of Discourse 2.5.0 beta 3).

I still have that plugin (version 0.1) installed, though I did not as it happens initiate a merge from the plugins menu, but used a ‘Merge’ button found directly on the user’s profile page (bottom right). I am guessing this means I invoked the native Discourse tool rather than the plugin?

I am unsure whether the plugin or Discourse itself is to blame for the process stalling.

I can access the site as administrator using another browser session, and can see both profiles are still present, although all but 9 of the old posts being merged are now associated with the newer intended account. Beside that figure, I see a warning that may or may not be associated with this specific attempted merge process 'Can't delete all posts. Some posts are older than 60 days old. (The delete_user_max_post_age setting.)'

As it happens ALL of the posts successfully merged were older than 60 days, so unsure what to make of this.

What do I do now to elegantly terminate the process (assuming it is still ongoing) and prevent database corruption?

OK, I gave up and refreshed browser window that was greyed out, and the site resumed as if nothing had happened - showing the same old version user account with the 9 unmerged posts remaining.

I tried again, after setting delete_user_max_post_age to 99999 - same result. I then tried merging the other way - same result.

In the end I tried again using the plugin, and this worked perfectly first time, and took only a minute or two.

So, on the evidence at hand, the 2.7 beta 3 Discourse merge function is broken in some way, but the plugin still works.

I works fine when I try it. Maybe there was something going on because you had the plugin installed? On here it is categorised as a #plugin:broken-plugin. Glad you fixed it eventually.

Thanks. I will uninstall the plugin, on the basis that if the situation is not improved next time for native merge process, I can always presumably reinstall it.

I wonder if the age or source of the posts being merged was a factor? These posts were all imported from a now defunct Yahoo Groups forum, and the import process created ‘zombie’ users where there was no corresponding active user for the given email address already. I think this old user account was an example of this.