| Previous | Next |
| PEER_E_DBNAME_CHANGED | PEER_E_GRAPH_NOT_READY |
PEER_E_DUPLICATE_GRAPH
The state transition represented by the HRESULT
PEER_E_DUPLICATE_GRAPH — HRESULT 0x80630012 marks graph creation reused a graph ID that has already been used by another graph object in the same process. A previously successful call does not guarantee that the later handle, identity, record or network presence is still valid.
Reconstruct the sequence
- Identify the first call among PeerGraphCreate and application graph-ID allocation that returned the HRESULT.
- Preserve graph ID, creation stack, active HGRAPH inventory, database name, peer ID and whether a prior create succeeded without being closed.
- Correlate graph, group, PNRP and collaboration events with application cancellation, disconnect, shutdown and sign-out events.
- Run the narrow comparison: create two graphs in one process with the same graph ID, then repeat with a newly generated ID for the second graph.
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.
Interpretation matrix
| Observation | Interpretation |
|---|---|
| No create, open or enumerate call returned the object | The failure is upstream of the graph lifecycle described here. |
| A close, delete, disconnect, expiration or sign-out event came first | Investigate an object-lifetime race before malformed network data. |
| The controlled run advances to another HRESULT | The original node or connection state was corrected and the new code names the next unmet prerequisite. |
Closest alternative diagnosis
PEER_E_DATABASE_ALREADY_PRESENT differs because a database can already exist on disk even when no duplicate graph object exists in the current process. The two codes can occur in one workflow, but they do not justify the same remediation.
Correction and proof
Allocate a unique graph ID for a distinct graph and centralize graph-object registration so duplicate creation is detected before the API call. Verify the result by enumerating the expected records, members, connections, endpoints or presence state rather than merely observing that the call stopped failing.
Source material
- 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.
