Join us for an expert-led overview of the tools and concepts you'll need to pass exam PL-300. The first session starts on June 11th. See you there!
Get registeredJoin us at FabCon Vienna from September 15-18, 2025, for the ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM. Get registered
Hello everyone,
I am currently testing the mirroring functionality for our Azure SQL Database within Microsoft Fabric. Initially, everything worked fine. Mirroring tables succeeded for those with primary keys. However, some tables did not have primary keys, so I added them and attempted the mirroring process again. Unfortunately, I encountered the following error:
Code: SqlChangeFeedError Type: UserError Message: Cannot enable fabric link on the database because the metadata tables are corrupted. ArtifactId: 8a8dfc49-31e6-4509-8fa8-c00357b74069
I have searched online but haven't found a solution. I also ran a DBCC CHECKDB on the database, which did not report any errors.
Has anyone experienced this issue or have any suggestions on how to resolve it?
Thank you in advance for your help!
Solved! Go to Solution.
I heard back from MS Support about my similar issue. if you
GRANT SELECT, ALTER ANY EXTERNAL MIRROR, VIEW PERFORMANCE DEFINITION TO [User];
for the managed identity that is accessing your Azure SQL DB from Fabric, the metadata will not become corrupted using my reproduction steps. This does not, however, correct a DB where metadata has already become corrupted.
Note that the difference between the grant statement above and the official documents is that the official docs do not mention the need for VIEW PERFORMANCE DEFINITION permission.
I heard back from MS Support about my similar issue. if you
GRANT SELECT, ALTER ANY EXTERNAL MIRROR, VIEW PERFORMANCE DEFINITION TO [User];
for the managed identity that is accessing your Azure SQL DB from Fabric, the metadata will not become corrupted using my reproduction steps. This does not, however, correct a DB where metadata has already become corrupted.
Note that the difference between the grant statement above and the official documents is that the official docs do not mention the need for VIEW PERFORMANCE DEFINITION permission.
@TimoW - This may or may not be helpful for your scenario, but I was able to isolate my issue and avoid it, though the issue is still problematic because there seems to be no recovery from a metadata corruption except to restore your source DB from a backup: https://community.fabric.microsoft.com/t5/Data-Engineering/Azure-SQL-Mirrored-DB-says-quot-metadata-...
How this applies to your scenario: I get metadata corruption intermittently when I stop and then restart replication. To avoid this issue, I never stop the replication and instead "Configure replication", make no changes, and then, "Apply changes". That predictably resumes my replication correctly. I haven't tested whether that will work for added/removed columns from a source DB.
@TimW - I am having a similar problem, but not identical. I'm performing a routine action (starting and stopping replication) and it's causing my metadata to become corrupted even though there are no changes to my underlying schema. I'm in contact with Fabric support, but no resolution yet. I'll keep you updated.
Hi @TimoW
Errroe it self saying your meta data tables corrupted. So, you can try the following database level checks using Dynamic Management Views (DMVs) and stored procedures to validate configuration.
and also as said by you table doesn't have primary key cannot be mirrored. Pls see the below snapshot.
If you need additional info, pls go thorugh the below microsoft documentations. It moght helps you
https://learn.microsoft.com/en-us/fabric/database/mirrored-database/azure-sql-database-limitations
https://learn.microsoft.com/en-us/fabric/database/mirrored-database/azure-sql-database-troubleshoot
https://learn.microsoft.com/en-us/fabric/database/mirrored-database/azure-sql-database-mirroring-faq
Thank you!!!
Did I answer your question? Mark my post as a solution!
Proud to be a Super User!
Please note that as of April 2025, tables can be mirrored even if they do not have a primary key. The documentation is updated in Limitations and Behaviors for Fabric Mirrored Databases From Azure SQL Database - Microsoft Fabric |...
Hello @suparnababu8,
First of all, thank you for responding quickly to my post!
The stored procedures and tables that provide information about the change feed are returning empty results because the fabric link cannot be enabled due to metadata corruption. The issue is that I cannot find any metadata corruption in my database.
I have tried mirroring our development and test databases, and these work as intended as the tables succesfully get mirrored. I also followed all the relevant steps in the documentation you provided, but unfortunately, the error persists.
Any further assistance would be greatly appreciated.
Hi @TimoW ,
In this scenario i suggest you to raise a support ticket here. so, that they can assit you in addressing the issue you are facing. please follow below link on how to raise a support ticket:
How to create a Fabric and Power BI Support ticket - Power BI | Microsoft Learn
Thanks,
Prashanth
MS Fabric community support
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly and give Kudos if helped you resolve your query
User | Count |
---|---|
82 | |
42 | |
16 | |
11 | |
7 |
User | Count |
---|---|
92 | |
88 | |
27 | |
8 | |
8 |