Summary
Unable to move large page trees without facing errors.
Description
Create a page tree with 500+ pages, 1000+ pages, or even more.
Create a new empty space.
Try to move the large page tree from current to new empty space.
The move in UI usually stops in error after 1mn.
After error in UI, the move continues in background, until a later unpredictable timeout.
While the move continues in background, doing another operation on the affected pages cause other bigger and possibly unrecoverable errors.
Environment
Confluence on Atlassian Cloud.
Expected behavior
The move dialog shouldn't exit in error until the move operation continues in background.
A more explicit button should invite us to cancel the move operation if we're trying to move too many pages at once.
Several situations
Case 1: Unable to move this many pages at once (I tried with 3000 pages)
Open the parent page, select move, then in move dialog, click search, start typing the target space and select it, select no parent page.
Here, usually after clicking search tab, if you get this extra message in the move dialog:
Moving too many pages at once may slow the process or cause an error.
This is a warning not to proceed with the move operation. If you press move anyway:
In the worse case, you get this error in the move dialog after ~1mn:
We couldn't move this many pages at once. Try again by selecting a page with fewer children.
This bad situation usually introduces other bigger and possibly unrecoverable errors.
Ex: Delete entire space may take 3+ days, although UI showed 100% deleted after few hrs.
Case 2: Issues to move too many pages at once (I tried with 700 pages)
Same steps than in case 1, with little fewer pages, with same extra message in move dialog:
Moving too many pages at once may slow the process or cause an error.
If you press move anyway, in a better case, you get this error in the move dialog after ~1mn:
We're having issues moving this content. Refresh and try moving again. If that doesn't solve the issue, try again later.
This is the in-between situation where either it will work (see next case) or it will fail in an even worse situation (see previous case).
Case 3: Issues to move several pages at once (I tried with 300 pages)
Open the parent page, select move, then in move dialog, click search, start typing the target space and select it, select no parent page.
Here, even after clicking search tab, you don't get the extra message in the move dialog like described in case 1 anymore:
Press move. You may get this error in the move dialog after ~1mn:
We're having issues moving this content. Refresh and try moving again. If that doesn't solve the issue, try again later.
Here, there are big chances that it will succeed after a while anyway.
Refresh the page you moved again and again, and check whether:
- The page URL shows the new space key,
- The page is visible in the new space (space settings > manage pages),
- The page is not listed in the old space anymore (space settings > manage pages).
Case 4: Move page using drag and drop does not inform when move operation is completed
When breaking a large page tree into smaller page trees, we may move a subpage tree using drag and drop out of the large page tree within same space, either via space settings > manage pages, or via the page tree rendered in the left panel when browsing a page.
After drop, the page tree is shown like we expected, and we may think the subpage tree has moved completely. At this time, if we move the old parent page too, it will still include the subpage tree as well, it may hit the too many pages warning, and cause unexpected errors.
To avoid this problem, we should verify that the subpage tree has moved completely, by refreshing the page and see where it is located, and refresh again and again until the page is now located at correct destination.
Case 5: The move succeeded but didn't happen
In this case, the move dialog exits like if the move succeeded, however:
- The page URL still shows the old space key, even after refresh page,
- The page is not listed in the new space (space settings > manage pages),
- The page is still visible in the old space (space settings > manage pages).
We should run the move operation again and again until the page has moved eventually.
Case 6: The page tree rendered in the left panel does not show the moved page
The page tree we moved is listed in space settings > manage pages, but is not visible at correct location in the page tree rendered in the left panel when browsing a page.
Here, we should refresh the page again and again until it appears at correct destination.
Case 7: The page tree in the left panel fail to render with error
Here, we can create a new page, say named FIX, then delete it, to fix the rendering error.
Workaround
This following way, moving all pages should work:
- Abort operation when this message appears in the move dialog:
Moving too many pages at once may slow the process or cause an error.
- If move ends in error, refresh the page to see if the move has happened anyway :
- Check space key of page in URL,
- Check page is visible in target space,
- Page is removed from source space.
- Otherwise move again.
- If move happened, open the moved page, check the page tree in the left side bar
-
- If error, create a new page FIX under current page, then delete it, to fix error.
- Refresh the page again until it appears at correct destination in the left side bar.
- If too many pages, reorder the pages into smaller trees, then try again above workarounds with every smaller page tree, but before:
-
- Wait until all page reorders have happened*, before to move parent page again.
- {}Refresh{*} the pages until we verified that all page reorders have been processed.
- Start new move only when previous move has fully completed.
- Once all pages are moved, reorder the pages as originally.
Hi all, we've implemented a change in messaging in order to better communicate this limitation to customers.
In the meantime, we're continue working on the underlying cause in order to support moving pages with a large number of descendants. That work is tracked in a separate ticket here: https://jira.atlassian.com/browse/CONFCLOUD-76077