Forum Discussion
Power BI data refreshed issue
- 1 year ago
Hi RajeshKannanS ,
The error usually occurs because the Snowflake connection is forcibly closed due to session timeouts, network interruptions, or Power BI Service query execution limits. Even if your gateway timeout is high, Snowflake or network policies might close idle or long-running sessions.
Snowflake-side settings to check:
- Increase Snowflake CLIENT_SESSION_KEEP_ALIVE to prevent session timeouts during long queries.
- Review and adjust network policies or firewall rules that might terminate idle TCP connections.
- Check Snowflake’s query timeout and warehouse auto-suspend settings to ensure the warehouse stays active.
Power BI Service considerations:
- Power BI Service imposes a maximum refresh timeout of 2 hours; queries taking longer will fail.
- Large datasets (51 million rows) can lead to heavy resource consumption; consider incremental refresh to reduce load.
- Snowflake’s Arrow format is usually stable, but if errors persist, try switching to DirectQuery or using a different connector/driver version.
Recommendations:
- Enable incremental refresh in Power BI to reduce dataset size per refresh.
- Coordinate with your Snowflake admin to adjust session keep-alive and network settings.
- Monitor and optimize your Snowflake warehouse size and query performance.
- If possible, test refreshes with smaller data subsets to isolate issues.
The error you're encountering—where Power BI Service fails to refresh a large table from Snowflake while Power BI Desktop succeeds—typically points to a combination of network constraints, service timeouts, and possibly Snowflake-side configurations. While your Snowflake gateway timeout is set sufficiently high, Power BI Service enforces its own timeout and resource limits which can differ from Power BI Desktop. In this case, the error message suggests that the connection was forcibly closed during the transmission of a large result set, possibly due to an interruption in the Arrow IPC stream used for data exchange. This could be caused by factors such as Power BI Service’s timeout limits (which generally cap at 2 hours for Premium and shorter for shared capacity), the sheer size of the dataset being returned, or Snowflake’s internal settings like `STATEMENT_TIMEOUT_IN_SECONDS`, network policies, or idle session termination configurations. Furthermore, Power BI Service may have limitations with large result sets, especially when using Snowflake’s Arrow format, which is optimized but can be sensitive to connection instability over long durations. As next steps, you should consider optimizing your Snowflake query to reduce the dataset size—either through incremental loading, query folding, or filtering in Power Query. Additionally, review Snowflake’s network policies and session timeout parameters that might override the gateway settings. If you're using Power BI Premium, consider adjusting workload settings and evaluating whether the query is exceeding capacity limits. Also, check if switching the connection method from Arrow to ODBC or native connector affects stability. Addressing the issue will likely require coordination between Snowflake configuration tuning and Power BI Service optimization to support large-scale data loads reliably.