ORLEANS0021: Duplicate grain interface declaration
| Property | Value |
|---|---|
| Category | Versioning |
| Severity | Warning |
| Code fix | Not available |
OrleansContracts.txt repeats an effective interface identity. The effective identity is GrainInterfaceType when present and the identity derived from the recorded CLR name using Orleans conventions for a legacy declaration.
Impact
Section titled “Impact”The manifest is ambiguous. The parser retains the first declaration, so compatibility review can use the wrong version or method set.
How to fix
Section titled “How to fix”Merge declarations which have the same effective identity into one canonical entry. Active and retired declarations can share a CLR name when they record different explicit GrainInterfaceType values across an identity migration.
Suppress the diagnostic
Section titled “Suppress the diagnostic”Repair the malformed manifest instead of suppressing this diagnostic.
[*.cs]dotnet_diagnostic.ORLEANS0021.severity = none