prestodb/presto · error · PageTransportErrorException
Expected %s header
Error message
Expected %s header
What it means
A protocol header required to decode the shuffle response (task instance id, token, next token, or complete flag) is absent from the response, so the pages payload cannot be framed. The header name is included.
Source
Thrown at presto-main/src/main/java/com/facebook/presto/operator/HttpRpcShuffleClient.java:210
return createPagesResponse(taskInstanceId, token, nextToken, pages, complete);
}
catch (IOException e) {
throw new RuntimeException(e);
}
}
catch (PageTransportErrorException e) {
throw new PageTransportErrorException(
e.getRemoteHost(),
"Error fetching " + request.getUri().toASCIIString(),
e);
}
}
private static String getTaskInstanceId(Request request, Response response)
{
String taskInstanceId = response.getHeader(PRESTO_TASK_INSTANCE_ID);
if (taskInstanceId == null) {
throw new PageTransportErrorException(HostAddress.fromUri(request.getUri()), format("Expected %s header", PRESTO_TASK_INSTANCE_ID));
}
return taskInstanceId;
}
private static long getToken(Request request, Response response)
{
String tokenHeader = response.getHeader(PRESTO_PAGE_TOKEN);
if (tokenHeader == null) {
throw new PageTransportErrorException(HostAddress.fromUri(request.getUri()), format("Expected %s header", PRESTO_PAGE_TOKEN));
}
return Long.parseLong(tokenHeader);
}
private static long getNextToken(Request request, Response response)
{
String nextTokenHeader = response.getHeader(PRESTO_PAGE_NEXT_TOKEN);
if (nextTokenHeader == null) {
throw new PageTransportErrorException(HostAddress.fromUri(request.getUri()), format("Expected %s header", PRESTO_PAGE_NEXT_TOKEN));View on GitHub (pinned to 55bb57d202)
Solutions
- Check coordinator/worker version mismatch
- Inspect worker logs for failures in the async page transport servlet
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at presto-main/src/main/java/com/facebook/presto/operator/HttpRpcShuffleClient.java:210 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/4bc5133ac7760ae9.
Report an issue: GitHub.