prestodb/presto · error · PageTransportErrorException
%s header is not set: %s
Error message
%s header is not set: %s
What it means
HttpRpcShuffleClient response validation: an expected HTTP header (e.g. the page-size/content header on shuffle exchange responses) is missing or unset, so the client cannot trust the response and raises PageTransportErrorException.
Source
Thrown at presto-main/src/main/java/com/facebook/presto/operator/HttpRpcShuffleClient.java:175
break;
}
body.append(line + "\n");
}
}
catch (RuntimeException | IOException e) {
// Ignored. Just return whatever message we were able to decode
}
throw new PageTransportErrorException(
HostAddress.fromUri(request.getUri()),
format("Expected response code to be 200, but was %s:%n%s",
response.getStatusCode(),
body.toString()));
}
// invalid content type can happen when an error page is returned, but is unlikely given the above 200
String contentType = response.getHeader(CONTENT_TYPE);
if (contentType == null) {
throw new PageTransportErrorException(
HostAddress.fromUri(request.getUri()),
format("%s header is not set: %s", CONTENT_TYPE, response));
}
if (!mediaTypeMatches(contentType, PRESTO_PAGES_TYPE)) {
throw new PageTransportErrorException(
HostAddress.fromUri(request.getUri()),
format("Expected %s response from server but got %s", PRESTO_PAGES_TYPE, contentType));
}
String taskInstanceId = getTaskInstanceId(request, response);
long token = getToken(request, response);
long nextToken = getNextToken(request, response);
boolean complete = getComplete(request, response);
try (SliceInput input = new InputStreamSliceInput(response.getInputStream())) {
List<SerializedPage> pages = ImmutableList.copyOf(readSerializedPages(input));
return createPagesResponse(taskInstanceId, token, nextToken, pages, complete);
}View on GitHub (pinned to 55bb57d202)
Solutions
- Check for version mismatch between coordinator and workers
- Inspect the worker logs for errors in the page buffer servlet
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at presto-main/src/main/java/com/facebook/presto/operator/HttpRpcShuffleClient.java:175 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of prestodb/presto@55bb57d202 (2026-09-04).
Data as JSON: /api/errors/290d750aef336848.
Report an issue: GitHub.