| Previous | Next |
| PEER_E_CONNECT_SELF | PEER_E_NODE_NOT_FOUND |
PEER_E_ALREADY_LISTENING
Diagnostic boundary for PEER_E_ALREADY_LISTENING
HRESULT 0x80630107 marks the graph has already entered listening state and a second listen request was issued without stopping or closing the first listener. Investigate the first API that reports it rather than a later user-interface wrapper.
Questions that separate the failure
- Was the object returned by PeerGraphListen, graph status and listener shutdown, or reconstructed from cached text or another process?
- Preserve listen-call stack, selected port and scope, graph status, previous listen result and ownership of the listener lifecycle.
- Did shutdown, deletion, sign-out, expiration or replication occur between object selection and use?
- Does the operation succeed under the controlled comparison described below?
Peer Graphing maintains a connected set of nodes, replicates records and exposes separate graph, node, connection and event lifetimes. A graph database being open is not the same as the node being connected.
Controlled comparison
Call listen once, query status, then deliberately call it again with the same graph handle before closing the listener. Keep identity, graph or group ID, cloud and user context fixed unless one of them is the tested variable.
Decision table
| Observed result | Next action for this HRESULT |
|---|---|
| The HRESULT repeats with identical captured state | Inspect the caller contract and node or connection state; repeated network retries add no evidence. |
The call advances to PEER_E_UNABLE_TO_LISTEN | PEER_E_UNABLE_TO_LISTEN differs because already-listening means an existing listener is active; unable-to-listen means the requested listener could not be established. |
| The controlled run succeeds but production does not | Compare user token, database path, cloud, endpoint, certificate chain and effective firewall policy. |
Safe remediation and verification
Make listening idempotent at the application layer and keep one owner for the graph listener. Back up exportable identity and group configuration, and hash database or invitation artifacts before modifying them.
The repair is complete only when the intended operation succeeds and its resulting connection, record, membership, endpoint or collaboration scope can be independently enumerated.
References
- Microsoft: About the Peer Graphing API — it uses this source for the documented peer boundary.
- Microsoft Open Specifications: Peer-to-Peer Graphing Protocol
- Microsoft: Security Service Providers for Peer Graphing
- Microsoft: Common Peer Infrastructure return codes
Looking for a different code? Search another status or error code.