pinpoint-apm/pinpoint · error · RuntimeException
Unexpected error
Error message
Unexpected error
What it means
RuntimeException in DefaultServerInfoAppender.bind: completing/joining the ServerGroupList futures for the application map failed unexpectedly (the earlier catch already appended timeout context), so server-info appending for the map is aborted.
Solutions
- Inspect the cause chain — usually a failed Hbase query for agent info
- Increase timeoutMillis if the cause indicates a build timeout
- Degrade gracefully by rendering the map without server info when append fails
Defensive patterns
Strategy: fallback
When it happens
Trigger: Thrown at web/src/main/java/com/navercorp/pinpoint/web/applicationmap/appender/server/DefaultServerInfoAppender.java:144 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of pinpoint-apm/pinpoint@744c3d3075 (2026-09-07).
Data as JSON: /api/errors/189e6ed54b2fd7fe.
Report an issue: GitHub.
Appendix: source
Thrown at web/src/main/java/com/navercorp/pinpoint/web/applicationmap/appender/server/DefaultServerInfoAppender.java:144
all.cancel(false);
String cause = "an error occurred while adding server info";
if (e instanceof TimeoutException) {
cause += " build timed out. timeout=" + timeoutMillis + "ms";
}
throw new RuntimeException(cause, e);
}
}
private void bind(List<ServerGroupRequest> serverGroupRequest) {
for (ServerGroupRequest pair : serverGroupRequest) {
CompletableFuture<ServerGroupList> future = pair.future();
try {
ServerGroupList serverGroupList = future.getNow(ServerGroupList.empty());
Node node = pair.node();
node.setServerGroupList(serverGroupList);
} catch (Throwable th) {
logger.warn("Failed to get server info for node {}", pair.node());
throw new RuntimeException("Unexpected error", th);
}
}
}
}
View on GitHub (pinned to 744c3d3075)