The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
We are seeing a potential bug with the Power BI Enhanced Refresh API. https://learn.microsoft.com/en-us/power-bi/connect-data/asynchronous-refresh
On a particular semantic model, we specify an object list to refresh of length 1, such as a single Calendar table.
e.g.
{
"type": "full",
"commitMode": "transactional",
"objects": [
{
"table": "Calendar"
}
],
"applyRefreshPolicy": "false",
"timeout": "05:00:00"
}
Via Profiler trace and query monitoring, we can see the service refreshing many other tables, even when the processingmode option is 'DataOnly'.
Via XMLA Endpoint, refreshing the table works as expected, that is - it refreshes only that one table.
Very mystifying...
According to the doco, dependent objects should only be subject to recalculation, not a data refresh.
Can anyone shed some light on this behaviour?
Thanks.,
Josh
Solved! Go to Solution.
Hi @joshashgb ,
This behaviour is not explicitly detailed in the Refresh API documentation. However, it is a known characteristic how Power BI handles dependencies between model objects (example : calculated tables, relationships, and measures). In the below power bi document of calculated tables, this is mentioned. PFBS for reference.
If this post helps, then please consider Accepting as solution to help the other members find it more quickly, don't forget to give a "Kudos" – I’d truly appreciate it!
Thank you!!
Hi @joshashgb ,
I hope the information provided is helpful. Feel free to reach out if you have any further questions or would like to discuss this in more detail. If responses provided answers your question, please accept it as a solution so other community members with similar problems can find a solution faster.
Thank you!!
Hi @joshashgb ,
I wanted to check if you had the opportunity to review the information provided. Please feel free to contact us if you have any further questions. If the responses has addressed your query, please accept it as a solution and give a 'Kudos' so other members can easily find it.
Thank you!!
Hi @joshashgb ,
May I ask if you have resolved this issue? If so, please mark the helpful reply and accept it as the solution. This will be helpful for other community members who have similar problems to solve it faster.
Thank you.
Hi @joshashgb ,
Thank you for reaching out to Microsoft Fabric Community.
Even when using "DataOnly" with the Enhanced Refresh API, Power BI may still refresh additional tables beyond the one specified. This often happens when the selected table (e.g., Calendar) is referenced by other objects in the model such as calculated tables, relationships, or even measures. In these cases, the API tends to be cautious and triggers refreshes or recalculations on those dependent objects as well, even if they aren't explicitly listed.
As you said, using XMLA endpoint will be better fit for more granular control, as it typically respects object-level refreshes more strictly
If this post helps, then please consider Accepting as solution to help the other members find it more quickly, don't forget to give a "Kudos" – I’d truly appreciate it!
Thank you!!
Hi - thanks for your response, can you point us towards some documentation that supports what you have said, or at the least can you state that this is official information? How do you know this? The reason I ask is that none of this is stated anywhere in the API documentation, so we would like to know whether this is the 'official' behaviour of the Refresh API
Thanks!
Josh
Hi @joshashgb ,
This behaviour is not explicitly detailed in the Refresh API documentation. However, it is a known characteristic how Power BI handles dependencies between model objects (example : calculated tables, relationships, and measures). In the below power bi document of calculated tables, this is mentioned. PFBS for reference.
If this post helps, then please consider Accepting as solution to help the other members find it more quickly, don't forget to give a "Kudos" – I’d truly appreciate it!
Thank you!!