ClickHouse / ClickHouse/clickhouse-java

`socket_keepalive` doesn't work with shaded clickhouse-jdbc

Offen
#3,092 4 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
bug
Vorherrschende Sprache
Java
Sterne
1.6k
Forks
636
Ø Merge
2 T. 23 Std.
Gemergte PRs (30 T.)
29

Beschreibung

## `socket_keepalive` doesnt' applied

### Steps to reproduce
Note: I would expect that instruction from official site[1] should end up with the same result.

1. Specify following option for apache/cloudberry-pxf:
```

jdbc.connection.property.socket_keepalive
true

```
or in JDBC URL `&socket_keepalive=true`
2. expect that `SO_KEEPALIVE=true`. However it is not.
Actual:
```
# ss -Otnpio state established | grep -F '8123'
0 0 [::ffff:10.1.0.9]:44198 [::ffff:10.1.0.20]:8123 users:(("java",pid=2731285,fd=34)) ts sack illinois wscale:10,4 rto:201 rtt:0.343/0.188
```
Expected (spot the `timer` section!):
```
0 0 [::ffff:10.1.0.29]:15938 [::ffff:10.1.0.20]:8123 users:(("java",pid=514753,fd=36)) timer:(keepalive,10sec,0) ts sack illinois wscale:10,4 rto:201 rtt:0.249/0.123
```

#### Environment
* Cloud
* Client version: 0.9.8 and 0.10.0
* OS: Ubuntu 22.04

#### ClickHouse Server
* ClickHouse Server version: 26.7.5.10
* `CREATE TABLE` statements for tables involved:
```
SELECT toInt32(sleep(600)) AS slept
SETTINGS
function_sleep_max_microseconds_per_block = 600000000,
max_execution_time = 0
```

[1] https://clickhouse.com/docs/integrations/language-clients/java/jdbc#linux

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Start by reproducing the JDBC property and URL forms on Ubuntu 22.04 with ClickHouse Server 26.7.5.10, then compare socket behavior for the shaded clickhouse-jdbc client. Done means enabling socket_keepalive produces the expected keepalive timer in ss output for the affected client versions.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java, linux
Bereich
databases
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Aktiv
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
52/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.