Why This Error Happens
Error 6955 occurs in SQL Server Analysis Services (SSAS) when the metadata for a dimension attribute is malformed, typically because the KeyColumns, NameColumn, or ValueColumn bindings reference a data source column that no longer exists, has an incompatible data type, or has been duplicated across attributes. This often happens after a schema change in the underlying relational database that was not propagated to the SSAS project, or after a corrupted deployment/XMLA script introduced invalid attribute XML. It can also surface when a dimension is restored or migrated from an older SQL Server version into SQL Server 2025 and the attribute definitions are incompatible with the newer engine’s validation rules.
Step-by-Step Resolution Guide
Step 1: Identify the Faulty Attribute and Dimension
- Open the SSAS error log or SQL Server Profiler trace to capture the full error text, which includes the specific attribute name (
%s) and the dimension it belongs to. - In SQL Server Management Studio (SSMS), connect to the Analysis Services instance and locate the affected dimension under Databases > [YourDB] > Dimensions.
- Cross-reference the attribute name against the source table schema in SQL Server 2025 to confirm the column still exists and matches the expected data type.
Step 2: Repair the Attribute Binding in SQL Server Data Tools (SSDT)
- Open the Analysis Services project in SSDT (Visual Studio) that corresponds to the deployed database.
- Navigate to the Dimension Designer, select the problematic attribute, and inspect the KeyColumns, NameColumn, and ValueColumn properties in the Properties pane.
- Remove any reference to a non-existent or renamed column, then remap it to the correct source column using the Data Source View (DSV).
- Rebuild the DSV (
Refreshoption) to sync table/column metadata if the underlying SQL Server table structure changed.
Step 3: Clear Corrupted Metadata and Redeploy
- Delete the corrupted dimension object from the SSAS database via SSMS (right-click dimension > Delete) to remove any residual invalid XML definitions stored in the OLAP store.
- From SSDT, redeploy the corrected project using Build > Deploy, pointing to the correct target server (
localhostor the named SSAS instance on Windows Server 2025). - If deployment fails, validate the project XML manually by opening the
.dimfile in a text editor and checking the<Attributes>node for duplicateAttributeIDentries or malformed<KeyColumns>tags.
Step 4: Reprocess the Dimension and Cube
- In SSMS, right-click the redeployed dimension and select Process using the Process Full option to rebuild all attribute hierarchies from scratch.
- Once the dimension processes successfully, reprocess any dependent cubes (Process Full at the cube level) to ensure measure groups relink to the corrected dimension attributes.
Alternative or Verification Steps
- Run a test query against the dimension using MDX (
SELECT {[Attribute].MEMBERS} ON 0 FROM [Cube]) in SSMS to confirm the attribute now returns valid members without errors. - If the issue persists after redeployment, restore the SSAS database from a known-good backup taken before the schema change, then manually reapply only the valid schema updates through SSDT rather than a direct XMLA alter script.