Skip to content

S3 queries return zero rows due to missing CA certificates in Presto worker image (clp-v0.10.0) #2107

@junhaoliao

Description

@junhaoliao

Bug

The Presto worker image referenced by this repository
(ghcr.io/y-scope/presto/prestissimo-worker:clp-v0.10.0) is missing
ca-certificates and tzdata. This was caused by an upstream merge in y-scope/presto#147 that accidentally overwrote the Dockerfile, dropping the packages originally added in y-scope/presto#55.

Impact: When CLP archives are stored on S3, Presto queries complete with no error but return zero rows. The Prestissimo worker silently fails TLS certificate verification against presigned S3 URLs because /etc/ssl/certs/ is empty in the runtime image. Additionally, the missing tzdata package can cause timezone-related failures (prestodb/presto#25531).

The Dockerfile fix has been merged in y-scope/presto#154 (fixes
y-scope/presto#153). The clp-v0.10.0 worker image is being rebuilt and re-published at the moment of this writing, and the image references in this repository should be updated accordingly.

Affected references in this repo:

  • tools/deployment/presto-clp/docker-compose.yaml (line 27):

    image: "ghcr.io/y-scope/presto/prestissimo-worker:${CLP_PRESTO_WORKER_IMAGE_TAG:-clp-v0.10.0}"
  • tools/deployment/package-helm/values.yaml (lines 16-18):

    prestoWorker:
      repository: "ghcr.io/y-scope/presto/prestissimo-worker"
      pullPolicy: "IfNotPresent"
      tag: "clp-v0.10.0"

CLP version

v0.10.0 (and the current main branch as of commit 8c5f6d87)

Environment

Any environment using S3-backed storage for CLP archives with the default Presto worker image (clp-v0.10.0). Reproducible on both the Docker Compose deployment (tools/deployment/presto-clp/) and the Helm chart deployment (tools/deployment/package-helm/).

Reproduction steps

  1. Deploy CLP with Presto using either the Docker Compose setup in
    tools/deployment/presto-clp/ or the Helm chart in
    tools/deployment/package-helm/, with S3-backed archive storage.
  2. Ingest log data to create CLP archives stored on S3.
  3. Run a search query through the Web UI (Presto SQL) or directly against the
    Presto coordinator.
  4. The query completes successfully with no errors, but returns zero rows.
  5. Verify the root cause by inspecting the worker image:
    docker run --rm --entrypoint sh \
      ghcr.io/y-scope/presto/prestissimo-worker:clp-v0.10.0 \
      -c "find / -maxdepth 4 -type f 2>/dev/null" | grep -E 'ssl|cert|pki|zoneinfo'
    This produces no output, confirming the missing certificates and timezone
    data.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions