ClickHouse / ClickHouse/clickhouse-java

[client-v2,jdbc-v2] Reading Array(Nullable(String)) with BinaryString enabled

Open
#2,953 0 comments 0 reactions 0 assignees View on GitHub
area:data-type client-api-v2 jdbc-v2
Dominant language
Java
Stars
1.6k
Forks
636
Avg merge
2d 23h
Merged PRs (30d)
29

Description

### Description
There is a claim:
```
Nullable array strings wrong
High Severity

It looks like readArray is using the top-level readValue for nullable array elements when binaryStringSupport is enabled. This means nested String/FixedString inside Array(Nullable(...)) are read as StringValue instead of plain String. This goes against our rule for container types and could lead to ArrayStoreException or unexpected type mismatches.
```

https://github.com/ClickHouse/clickhouse-java/pull/2952/changes/BASE..c74bd36aae7fd863f0691654f65c87cc9c982415#r3632548114

Contributor guide

Open the contributing guide

Research direction

Start by tracing readArray and its use of readValue when binaryStringSupport is enabled, focusing on Array(Nullable(String)) and nested String or FixedString values. Confirm the container returns plain String elements rather than StringValue, and verify that the resulting array avoids the reported type mismatch or ArrayStoreException.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
database
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
58/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.