Query timeout when going through HTTP Proxy since 1.4.4

Open
#548 8 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
42/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Active
Tech stack
docker, java, kubernetes, sql

Research direction

Start by reproducing the duckdb-java JDBC setup described in the issue, comparing versions 1.4.2 and 1.4.4 against the S3-like server through an HTTP proxy. No source file or test is named; the issue is resolved when the representative read_parquet query no longer times out through the proxy, with the direct-access behavior preserved.

Written by the indexing model from the issue text.

Description

Hi 👋

We're having issues with our duckdb-java setup after bumping the patch version from 1.4.2 to 1.4.4 (so technically the issue could be post-1.4.3).

Our setup is as follows:

  • Java app in a docker container deployed on K8S
  • cluster is air-gapped so we package the plugins (namely httpfs) in the docker image and deactivate remote plugin download
  • queries are done against an S3-like server, through an HTTP proxy

Behaviour before 1.4.4 was fine, basic queries without filtering took a few seconds to run.

After 1.4.4 we observe the following:

  • it works seemingly as well as before when querying the S3 server directly (same data, outside K8S)
  • it times out when querying the S3 server through the HTTP proxy

The error is:

Caused by: java.sql.SQLException: IO Error: Connection timed out error for HTTP GET to '/my-bucket/?encoding-type=url&list-type=2&prefix=some-prefix

LINE 1: SELECT COUNT(1) FROM read_parquet("s3://my-bucket/some-prefix...

Has something changed on that front?

Perhaps it's a question more fit for https://github.com/duckdb/duckdb, but since it's a duckdb-java setup I figured it's better to start here.

Dominant language
C++
Stars
127
Forks
80
Avg merge
13h 41m
Merged PRs (30d)
44

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from duckdb/duckdb-java

All issues in duckdb/duckdb-java

Similar issues

More C++ issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.