Medium severitydata flow
Power BI Refresh Error:
DF-Executor-BlockCountExceedsLimitError
What does this error mean?
The data flow sink exceeded Azure Blob Storage's 50,000-block limit per blob. When Spark writes too many small partitions to a single blob, each partition becomes a block — and Azure Blob Storage enforces a hard maximum of 50,000 blocks per blob.
Common causes
- 1The data flow sink is writing to Azure Blob Storage with too many output partitions — each partition becomes a block, and the 50,000-block limit is exceeded
- 2The 'Current partitioning' setting on the sink is using Spark's default partition count, which can produce hundreds or thousands of tiny partitions for large datasets
- 3The sink is configured to write to a single blob but the data volume produces more than 50,000 blocks when split by the Spark partition scheme
- 4A high-cardinality partition key in 'Hash' or 'Round robin' partitioning generates more partitions than the blob can accommodate
How to fix it
- 1Reduce the number of output partitions in the sink transformation — too many small partitions causes the Azure Blob or ADLS block count to exceed the 50,000-block limit.
- 2In the sink Optimize tab, increase the partition size to produce fewer, larger files instead of thousands of tiny ones.
- 3Switch the sink partition type from 'Current partitioning' to 'Single partition' or a fixed partition count to control block usage.
- 4If writing to Azure Blob Storage, consider switching to ADLS Gen2 which has higher block count tolerances.
- 5Enable data flow debug mode to preview the partition count before writing to the sink.
Frequently asked questions
Official documentation: https://learn.microsoft.com/en-us/azure/data-factory/data-flow-troubleshoot-guide