Applies to Product - Dynamics 365 for Finance and Operations (on-premises)
What’s happening?
Customers are experiencing errors related to the Spark compute pool in Azure Synapse workspace, specifically receiving messages indicating that the compute pool is insufficient or unavailable, leading to failures in updating tables.
Reason:
The underlying causes for this may include: - Insufficient compute capacity in the Spark pool to handle the workload. - The Spark compute pool being paused or deleted, which prevents table updates. - Configuration issues within the Synapse workspace that restrict scaling or access.
Resolution:
To resolve this related to the Spark compute pool, follow these steps: 1. Verify Spark Pool Availability: - Ensure that the Spark pool with the specified name exists. If it has been deleted, recreate the Spark pool with the same name.
- Request Capacity Increase:
- Go to the Azure portal and create a new support ticket.
- Select the issue type as "Service and subscription limits (quotas)" and the quota type as "Azure Synapse Analytics".
- In the Details tab, choose the quota type as "Apache Spark (vCore) per workspace", select your workspace, and request the desired quota increase.
- Adjust Auto-Scaling Settings:
- In Synapse Studio, navigate to the "Manage" hub.
- Under "Apache Spark pools", select the Spark pool you want to configure.
- Adjust the auto-scaling settings by specifying the minimum and maximum number of nodes to allow the pool to scale based on workload demand.
- Monitor Resource Utilization:
- Continuously monitor metrics such as Total Pending CPU, Total Pending Memory, Total Free CPU, and Total Free Memory to ensure that autoscaling is functioning as expected.
- Adjust the minimum and maximum number of nodes or dynamic allocation settings based on observed workload and performance.
- Check Network Configuration:
- Review the IP whitelist and DEP settings in the network configuration to ensure there are no restrictions that could affect the Spark pool's operation.
- Run Test Jobs:
- Attempt to run other Spark pool jobs to confirm that the Spark pool is operational and can handle tasks as expected.
