| Previous | Next |
| MQ_ERROR_CERTIFICATE_NOT_PROVIDED | MQ_ERROR_CANNOT_CREATE_CERT_STORE |
MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED
Operational meaning
When MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED appears, start with the queue operation and its property arrays rather than with a broad repair of the Message Queuing service. Interpret it as MQLocateBegin cannot project DNS path name, not as a general transport outage. PROPID_Q_PATHNAME_DNS is not an AD DS query column even though DNS path forms exist elsewhere.
For MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED, public-queue discovery depends on both valid MSMQ query structures and AD DS behavior. When diagnosing MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED, A malformed MQSORTSET should be separated from LDAP bind, schema, replication, or permissions failures.
When diagnosing MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED, MQLocateBegin searches public queues registered in the directory; it does not enumerate arbitrary private queues. In the MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED path, its restriction, projection, and sort structures are translated into a directory-backed query.
Where to draw the boundary
| Subsystem | MQLocateBegin directory queries over public-queue metadata |
|---|---|
| Decisive boundary | query restrictions, selected columns, and sort keys must be valid for the AD DS-backed locator |
| Code-specific focus | MQLocateBegin cannot project DNS path name |
| Primary recovery rule | Retrieve supported identifiers and derive/resolve the DNS form separately. |
When diagnosing MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED, separate a malformed query structure from an AD DS availability error. In the MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED path, repeating the same invalid MQSORTSET or MQRESTRICTION against another domain controller will not repair it. For MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED, the code-specific boundary is MQLocateBegin cannot project DNS path name.
Evidence to preserve
- The exact property used for filtering, projection, or ordering; associate it explicitly with
MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED. - When diagnosing
MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED, mqrestriction, mqcolumns, and mqsortset as submitted; capture the value before cleanup or retry changes it. - In the
MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTEDpath, the ad ds mode and domain identity of the caller; compare it with a known-good call using the same account and queue type. - For this
MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTEDresult, record the queue path or format name, local/remote placement, transactional flag, caller SID, process build, and UTC correlation ID when they apply.
For MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED, log certificate thumbprints, provider names, SIDs, GUIDs, lengths, and hashes where useful, but do not log private keys, symmetric keys, credentials, or confidential message bodies.
Diagnostic sequence
- Record the unsigned HRESULT,
MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED, and the native API or COM method before a framework replaces it with a generic exception. - When diagnosing
MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED, capture the exact property used for filtering, projection, or ordering. - Reproduce with the smallest queue/message/property set that still returns
MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED; change one precondition at a time. - For this
MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTEDresult, verify the postcondition after the failed call: queue existence, message presence, directory object state, transaction outcome, or generated output may differ by result. - For
MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED, capture the AD DS mode and domain identity of the caller. - When diagnosing
MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED, apply the code-specific recovery rule: Retrieve supported identifiers and derive/resolve the DNS form separately.
Handling and recovery
Retrieve supported identifiers and derive/resolve the DNS form separately.
When diagnosing MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED, the retry decision must account for side effects that may already exist. In the MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED path, query queue, message, directory, or transaction state first whenever the result leaves completion uncertain.
Nearby failure boundaries
A directory query shape error is deterministic. For this MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED result, switching domain controllers cannot make an unsupported column, relation, or sort key valid. The specific focus for MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED remains MQLocateBegin cannot project DNS path name.
- In the
MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTEDpath, restarting MSMQ before collecting evidence can invalidate handles and erase the first useful event; it is a containment action, not a root-cause diagnosis. - For this
MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTEDresult, granting broad queue or certificate permissions may mask the symptom while creating a security defect. ForMQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED, test the exact identity and access needed by the operation.
Worked example
An administration console encounters MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED. For MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED, it captures the restriction/column/sort structures and validates the query before testing directory availability. When diagnosing MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED, the acceptance test then changes only the decisive precondition and confirms both the HRESULT and the actual queue/message state.
Automated coverage should preserve the original arrays/identities, confirm that cleanup is safe after MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTED, and test that a retry does not duplicate messages or directory objects.
References
- Microsoft: MQLocateBegin — source used for the
MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTEDanalysis. - Microsoft Open Specifications: MSMQ and directory services — source used for the
MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTEDanalysis. - IETF RFC 4511: LDAP protocol — source used for the
MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTEDanalysis. - Microsoft: Message Queuing error and information codes — source used for the
MQ_ERROR_Q_DNS_PROPERTY_NOT_SUPPORTEDanalysis.
Looking for a different code? Search another status or error code.