---
title: "sys.dm_operation_status"
description: The sys.dm_operation_status dynamic management view displays information about operations performed on databases in an Azure SQL Database logical server.
author: WilliamDAssafMSFT
ms.author: wiassaf
ms.reviewer: randolphwest
ms.date: 06/30/2025
ms.service: azure-sql-database
ms.topic: "reference"
f1_keywords:
- "dm_operation_status_TSQL"
- "dm_operation_status"
- "sys.dm_operation_status"
- "sys.dm_operation_status_TSQL"
helpviewer_keywords:
- "dm_operation_status dynamic management view"
- "sys.dm_operation_status dynamic management view"
dev_langs:
- "TSQL"
monikerRange: "=azuresqldb-current || =azure-sqldw-latest || =azuresqldb-mi-current"
---
# sys.dm_operation_status
[!INCLUDE [asdb-asdbmi-asa](../../includes/applies-to-version/asdb-asdbmi-asa.md)]
Returns information about operations.
| Column name | Data type | Description |
| --- | --- | --- |
| `session_activity_id` | **uniqueidentifier** | ID of the operation. Not null. |
| `resource_type` | **int** | Denotes the type of resource on which the operation is performed. Not null. In the current release, this view tracks operations performed on [!INCLUDE[ssSDS](../../includes/sssds-md.md)] only, and the corresponding integer value is `0`. |
| `resource_type_desc` | **nvarchar(2048)** | Description of the resource type on which the operation is performed. Currently view tracks operations performed on [!INCLUDE[ssSDS](../../includes/sssds-md.md)] only. |
| `major_resource_id` | **sql_variant** | Name of the [!INCLUDE[ssSDS](../../includes/sssds-md.md)] on which the operation is performed. Not null. |
| `minor_resource_id` | **sql_variant** | For internal use only. Not null. |
| `operation` | **nvarchar(60)** | Operation performed on a [!INCLUDE[ssSDS](../../includes/sssds-md.md)], such as `CREATE` or `ALTER`. |
| `state` | **tinyint** | The state of the operation.
0 = Pending
1 = In progress
2 = Completed
3 = Failed
4 = Cancel in progress
5 = Cancelled |
| `state_desc` | **nvarchar(120)** | `PENDING` = operation is waiting for resource or quota availability.
`IN_PROGRESS` = operation has started and is in progress.
`COMPLETED` = operation completed successfully.
`FAILED` = operation failed. See the `error_desc` column for details.
`CANCEL_IN_PROGRESS` = operation is in the process of being cancelled.
`CANCELLED` = operation stopped at the request of the user. |
| `percent_complete` | **int** | Percentage of operation that has completed. Valid values are listed below. Not null.
`0` = Operation not started
`50` = Operation in progress. For restore operations, this will be a value between `1` to `99`, indicating how far along the operation is in percent.
`100` = Operation complete |
| `error_code` | **int** | Code indicating the error that occurred during a failed operation. If the value is 0, it indicates that the operation completed successfully. |
| `error_desc` | **nvarchar(2048)** | Description of the error that occurred during a failed operation. |
| `error_severity` | **int** | Severity level of the error that occurred during a failed operation. For more information about error severities, see [Database Engine Error Severities](../errors-events/database-engine-error-severities.md). |
| `error_state` | **int** | Reserved for future use. Future compatibility is not guaranteed. |
| `start_time` | **datetime** | Timestamp when the operation started. |
| `last_modify_time` | **datetime** | Timestamp when the record was last modified for a long running operation. When the operation has completed successfully, this field displays the timestamp when the operation completed. |
| `phase_code` | **int** | Only applicable when the service tier is converting to Hyperscale, else `NULL`. Phases 5 and 6 are applicable only for `MANUAL_CUTOVER` option.`1` – LogTransitionInProgress`2` – Copying`3` – BuildingHyperscaleComponents`4` – Catchup`5` – WaitingForCutover`6` – CutoverInProgress|
| `phase_desc` | **nvarchar(60)** | Description of the phase that is in progress. Only applicable when the service tier is converting to Hyperscale, else `NULL`. Phases WaitingForCutover and CutoverInProgress are applicable only for `MANUAL_CUTOVER` option. For more information, see [conversion to Hyperscale](/azure/azure-sql/database/convert-to-hyperscale?view=azuresql-db&preserve-view=true). |
| `phase_info` | **nvarchar(2048)** | This column provides more information about the specific phase in progress, in JSON format. Might not be populated for all operations.When tier [conversion to Hyperscale](/azure/azure-sql/database/convert-to-hyperscale?view=azuresql-db&preserve-view=true) is performed on primary replica, information would be shown for both primary and secondary, one at a time. |
## Permissions
This view is only available in the `master` database to the server-level principal login.
## Remarks
To use this view, you must be connected to the `master` database. Use the `sys.dm_operation_status` view in the `master` database of the [!INCLUDE[ssSDS](../../includes/sssds-md.md)] server to track the status of the following operations performed on a [!INCLUDE[ssSDS](../../includes/sssds-md.md)]:
- Create database
- Copy database. Database Copy creates a record in this view on both the source and target servers.
- Alter database
- Change the performance level of a service tier
- Change the service tier of a database, such as changing from Basic to Standard.
- Setting up a Geo-Replication relationship
- Terminating a Geo-Replication relationship
- Restore database
- Delete database
The information in this view is retained for approximately 1 hour. You can use the [Azure Activity Log](/azure/azure-monitor/platform/activity-log) to view details of operations in the last 90 days. For retention more than 90 days, consider [sending Activity Log](/azure/azure-monitor/platform/activity-log#send-to-log-analytics-workspace) entries to a Log Analytics workspace.
## Examples
Show most recent operations associated with database `mydb`:
```sql
SELECT *
FROM sys.dm_operation_status
WHERE major_resource_id = 'mydb'
ORDER BY start_time DESC;
```
## Related content
- [Geo-Replication Dynamic Management Views and Functions (Azure SQL Database)](geo-replication-dynamic-management-views-and-functions-azure-sql-database.md)
- [sys.dm_geo_replication_link_status (Azure SQL Database)](sys-dm-geo-replication-link-status-azure-sql-database.md)
- [sys.geo_replication_links (Azure SQL Database)](sys-geo-replication-links-azure-sql-database.md)
- [ALTER DATABASE (Transact-SQL)](../../t-sql/statements/alter-database-transact-sql.md)