| Previous | Next |
| MQ_INFORMATION_UNSUPPORTED_PROPERTY | MQ_INFORMATION_OPERATION_PENDING |
MQ_INFORMATION_DUPLICATE_PROPERTY
Operational meaning
When MQ_INFORMATION_DUPLICATE_PROPERTY appears, start with the queue operation and its property arrays rather than with a broad repair of the Message Queuing service. The result marks duplicate identifier in a parallel property array. The first occurrence wins and later entries are ignored, so logging only the final value can hide what MSMQ actually used.
A warning returned from a queue or message property call can describe only one element while the other elements and the primary operation succeeded. When diagnosing this result, preserve both the returned object state and the element-level status.
MSMQ property structures can include an optional status array parallel to the property identifiers and values. A nonfatal top-level result therefore does not replace inspection of individual entries.
Where the condition occurs
| Subsystem | the per-property status channel used by MSMQ APIs |
|---|---|
| Relevant condition | the call may complete while one array element is rejected, ignored, duplicated, or still pending |
| Code-specific focus | duplicate identifier in a parallel property array |
Unlike an error HRESULT, this informational value can accompany a completed operation. It must still be handled because ignored or duplicate properties can change the stored result. The code-specific boundary is duplicate identifier in a parallel property array.
Evidence to preserve
- Whether an output object or queue was nevertheless created.
- The function result and every entry of the optional astatus array.
- The matching apropid and mqpropvariant index.
Handling and recovery
Canonicalize the property list so every identifier appears once before retrying.
Nearby failures
Do not treat a nonzero informational HRESULT as proof that the primary operation failed. Verify the completed effect and the individual property status. Code-specific condition: duplicate identifier in a parallel property array.
Worked example
A com-based administration utility encounters it. It records both the successful primary effect and the property warning, then corrects only the affected field.
References
Looking for a different code? Search another status or error code.
