Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more
A client I am working with is having trouble getting a PBI semantic model to refresh from a Lakehouse SQL Analytics endpoint.
We are ingesting data daily to our Lakehouse tables. We then have a number of views built on top of these tables in the SQL Analytics endpoint, which we are then querying in PBI via an Import mode semantic model. I can see that the data in the tables in being updated, and that the views reflect the updates as expected.
We have a daily scheduled refresh set up, which executes successfully, however the data reflected in the report and in the semantic model is not updated. I have tested this with a Direct Connection query against the sematic model as well, so I'm quite confident that the model is not being refreshed.
We have also tried refreshing the model using the Semantic Model Refresh activity in a Fabric Data Factory pipeline. This also appears to succeed, but does not actually refresh the data.
The only thing that does refresh the data is doing a manual refresh in the PBI service, but this is obviously not a solution.
It's perhaps worth mentioning that the report and semantic model are currently in a Pro workspace rather than the Fabric capacity containing the Lakehouse, if that has any impact?
Solved! Go to Solution.
Yeah, after a second test, this appears to be working...
So, all I've done is add a Script activity which runs a simple SELECT TOP 1 * FROM ... against one of the views in my Lakehouse SQL Endpoint, then a Wait activity that waits for 60 seconds, before the Semantic Model Refresh activity. I'm not sure if the Wait is actually necessary, but I figure it can't do any harm...
Hi @AntoineW
One other point I would like to make is that data on the SQL analytics endpoint can take some time to reflect. This is due to the underlying changes not always being immediately available. What you could do is force a refresh of this as part of your daily data orchestration of getting data into your lake house, which will then allow the data to be correctly refreshed once. This analytics endpoint has been refreshed.
Here is how to do it: fabric-toolbox/samples/notebook-refresh-tables-in-sql-endpoint at main · microsoft/fabric-toolbox and a video Refresh Sql Endpoint REST API - YouTube
Thanks @AntoineW and @tayloramy, some useful suggestions there. My report developer has published a copy into the Fabric workspace where the Lakehouse resides, so we'll see if that makes any difference. If not then I'll look at refreshing the endpoint metadata.
Unfortunately the data we're ingesting is only refreshed daily, so our testing cycle is necessarily a bit slow, but at least I've got something to work with. Thanks!
Just a quick update on this... I think I've got it working just by hitting the endpoint with a simple SQL query, waiting for a bit, and then refreshing the semantic model.
I couldn't get the metadata refresh API call working, but I think all we need to do it wake it up...
I need to do a bit more testing to be certain though.
Yeah, after a second test, this appears to be working...
So, all I've done is add a Script activity which runs a simple SELECT TOP 1 * FROM ... against one of the views in my Lakehouse SQL Endpoint, then a Wait activity that waits for 60 seconds, before the Semantic Model Refresh activity. I'm not sure if the Wait is actually necessary, but I figure it can't do any harm...
Further testing reveals that the Wait activity is necessary - I had two copies of the model in different workspaces, so I set my pipeline up to refresh on immediately after the script query, and the other after waiting 60 seconds, and only the second one showed fresh data this morning.
Hi @DuncanKing,
Here’s how I’d tackle this. Based on what you’ve described, the most common cause is the Lakehouse SQL Analytics endpoint being “cold” at the time your scheduled or pipeline-triggered refresh runs. When the endpoint is inactive, its background sync is paused, so a refresh can query a stale snapshot even though it reports Success. A later manual refresh works only because the endpoint has had time to wake up and sync.
If you try the orchestration above and it still reports Success with stale data, and the solution posted by @AntoineW doesn't work either, I’d escalate. This can be tenant-specific. Open a Microsoft support ticket and include: workspace IDs, model ID, pipeline run IDs, refresh history timestamps, and the exact time you triggered the SQL Endpoint metadata refresh.
If you found this helpful, consider giving some Kudos. If I answered your question or solved your problem, mark this post as the solution.
Hello @DuncanKing,
It sounds like the issue might be related to the data source credentials or the workspace configuration.
Here’s what I would suggest checking:
Verify Data Source Credentials
Go to the Dataset settings in the Power BI Service for your semantic model.
Check that the Lakehouse SQL Analytics endpoint credentials are correctly configured (authentication method and permissions).
If credentials are missing or invalid, scheduled refresh can appear as “successful” but won’t actually pull new data.
Scheduled Refresh Settings
Ensure that a scheduled refresh is properly configured in the semantic model settings (not just the pipeline activity).
Confirm that the refresh history shows actual row changes after each run.
3. Workspace Capacity
If your semantic model is in a Pro workspace but the Lakehouse is in a Fabric capacity, consider moving the semantic model into the same Fabric workspace or capacity.
This ensures optimal connectivity and avoids possible cache or credential mismatches.
4. Manual Refresh Works
Since a manual refresh works, this almost always points to either credential misconfiguration or refresh settings not being applied correctly.
Hope it can help you !
Best regards,
Antoine
The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!
| User | Count |
|---|---|
| 56 | |
| 56 | |
| 35 | |
| 18 | |
| 14 |