Share via

Resource Group stuck in “MovingResources” state after failed move between Resource Groups

Eduardo Noel 20 Reputation points
2026-04-12T15:33:07.4166667+00:00

Hi,

I have a Resource Group that became stuck in the MovingResources state after a failed operation where I attempted to move all resources from this RG into another RG within the same subscription. Since the failure, the Resource Group is completely locked:

• The RG remains permanently in MovingResources

• I cannot delete it

• I cannot modify it

• I cannot move it again

• I cannot perform any action from the Portal or CLI

The errors shown are:

• ResourceMoveTimeout

• NotificationAfterMoveFailed

I have already tried:

• Azure Portal

• Azure CLI

• Retrying the move

• Force delete

• Checking locks, policies, dependencies

• Confirming that no resources remain inside the RG

Nothing works. It appears to be a backend state issue that requires manual cleanup by the Azure engineering/support team.

Could someone from the Azure team please help unlock or remove this Resource Group? It seems to be stuck in an inconsistent internal state after the failed move.

Thanks in advance.

"statusMessage": "{\"error\":{\"code\":\"ResourceMoveTimedOut\",\"message\":\"Moving resources did not finish within allowed time '04:00:00'. Provisioning state of the resource groups will be rolled back.\",\"details\":[{\"code\":\"NotificationAfterMoveFailed\",\"target\":\"Microsoft.DBforMySQL/\",\"message\":\"ResourceProviderLinkedNotificationJob for resourceid 'Microsoft.Network/privateEndpoints/pep-st-camani-blob-prod' to endpoint 'https://merumysql.malaysiawest1-a.control.database.windows.net:8363/modules/ArmMySQL/' did not finish successfully within given period.\"}]}}"
Azure Migrate
Azure Migrate

A central hub of Azure cloud migration services and tools to discover, assess, and migrate workloads to the cloud.


Answer accepted by question author

  1. M A Nakib 181 Reputation points
    2026-04-13T04:56:52.9666667+00:00

    Sorry you're dealing with this — it's a frustrating one because there's genuinely nothing you can do from the Portal or CLI once it gets into this state. But let me explain what actually happened and what your options are.

    • What went wrong (the real reason) Looking at your error output, the timeout wasn't just a general slowness issue. The move hit its 4-hour limit specifically because the NotificationAfterMoveFailed step couldn't complete. That second phase is where Azure Resource Manager notifies dependent resource providers that the move happened — in your case, the MySQL control plane endpoint (merumysql.malaysiawest1-a.control.database.windows.net) never acknowledged the move of your Private Endpoint (pep-st-camani-blob-prod). This matters because according to the Azure networking move limitations docs, a private endpoint must be in a Succeeded state before a move is attempted — if the MySQL-linked private endpoint was in any non-Succeeded state going in, the notification phase would fail exactly like this. The result is that the rollback also didn't complete cleanly, which is why you're stuck: the RG never unlocked. Try this first — cancel the pending move via REST There's an ARM action specifically for this. Run this from Azure CLI:
        az rest --method POST \
        --uri "/subscriptions/<your-subscription-id>/resourceGroups/<stuck-rg-name>/cancelMoveResources?api-version=2021-04-01"
      
      This tells Resource Manager to abort the pending move operation and release the lock. It doesn't always work on an already-timed-out operation, but it's worth trying before escalating. If that doesn't work — open a support ticket, this requires backend cleanup If cancelMoveResources comes back with an error or the RG is still locked, this is 100% a backend state issue. The internal operation state on the ARM side didn't clean up, and no user-facing tool can fix that. Open a support ticket here: https://portal.azure.com/#create/Microsoft.Support When filling it out, use:
      • Issue type: Technical
      • Service: Resource Group
      • Problem type: Managing Resource Groups
      • Summary: "Resource group stuck in MovingResources state after ResourceMoveTimedOut — requires backend state cleanup"
      Include in the ticket description:
      • Your Subscription ID
      • The Resource Group name that's stuck
      • The approximate timestamp of the original move attempt
      • The Correlation ID / Request ID from the failed Activity Log entry (this is the most important thing — it lets them find the stuck operation in internal logs)
      • The error code: ResourceMoveTimedOut / NotificationAfterMoveFailed targeting Microsoft.DBforMySQL/
      For next time — what to check before moving resources with Private Endpoints Per Microsoft's docs on networking move limitations: Microsoft.DBforMySQL/flexibleServers private endpoints do support moves, but the private endpoint must be in Succeeded provisioning state before you initiate the move. If the linked MySQL Flexible Server or the private endpoint itself is in any transitional state, the notification phase will fail. Also worth knowing for the future: move operations lock both source and destination RGs for up to 4 hours. If you're moving a large batch of resources that includes networking + PaaS services with private endpoints, it's safer to break it into smaller batches — the docs recommend this too, since even sub-800-resource batches can time out if they involve complex provider dependencies. Hope the cancelMoveResources call clears it — but realistically given that the rollback also failed, you'll probably need the support ticket. Make sure you grab that Correlation ID before you contact them, it'll speed things up a lot. References:
    1 person found this answer helpful.
    0 comments No comments

2 additional answers

Sort by: Most helpful
  1. Bharath Y P 8,495 Reputation points Microsoft External Staff Moderator
    2026-04-13T01:57:48.8066667+00:00

    Hello Eduardo, sorry you’re hitting this snag—Resource Manager locks a RG for up to four hours during a move, but it should automatically roll back and unlock after a timeout. In your case it looks like the rollback never completed and the RG is stuck in MovingResources. Here’s what you can try before we escalate to backend cleanup:

    1. Check for any lingering “move” operations • In the Azure Portal, go to your subscription’s Activity Log and filter on “Move resources”. • Confirm there are no active or stuck move operations.
    2. Attempt to cancel the pending move via REST/CLI There’s an ARM action to abort a move operation. Substitute your values and run:
      
         az rest --method POST \
      
           --uri "/subscriptions/<your-subscription-id>/resourceGroups/<your-resource-group>/cancelMoveResources?api-version=2021-04-01"
      
      
      That tells Resource Manager to tear down the pending move and should clear the lock.
    3. Run a move‐validation check Even if there are no resources inside, validate the RG so you see any hidden blockers:
      
         az resource invoke-action \
      
           --action validateMoveResources \
      
           --ids /subscriptions/<your-subscription-id>/resourceGroups/<your-resource-group> \
      
           --api-version 2021-04-01
      
      
      Review any errors or warnings it emits.
    4. Double‐check locks and policies You mentioned you’ve checked them already, but confirm there are absolutely zero management locks or policy assignments on the source RG or on the subscription that could interfere.

    If those steps still leave the RG locked, it’s almost certainly a backend state issue that only the Azure engineering team can clear. In that case I recommend opening an Azure Support ticket and providing:

    • Subscription ID

    • Resource Group name

    • Approximate timestamp of the original move attempt

    • Correlation/Request ID from your Activity Log entry (if available)

    That info lets the service team dive into the internal operation logs and force‐clean the stuck state.

    Hope one of these helps you unlock the RG. Let me know if you need anything else!

    Reference docs

    Move resources between RGs & subs

    Troubleshoot ResourcesBeingMoved

    Validate move scenario

    1 person found this answer helpful.

  2. Eduardo Noel 20 Reputation points
    2026-04-14T13:51:18.5+00:00

    Thanks for the help. The RG finally unlocked and the issue is resolved.

    0 comments No comments

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.