Skip to content

NPE when calling getArray for arrays with UUID, IPv4/6, and Map #2711

Closed

Description

@Destrolaric

Description

Error after calling getArray for arrays with UUID, IPv4/6, and Map

Steps to reproduce

  1. call getArray on arrays with UUID, IPv4/6, and Map

Error Log or Exception StackTrace

java.sql.SQLException: Method: getObject("a30", interface java.sql.Array) encountered an exception.
	at com.clickhouse.jdbc.internal.ExceptionUtils.toSqlState(ExceptionUtils.java:74)
	at com.clickhouse.jdbc.ResultSetImpl.getObjectImpl(ResultSetImpl.java:1510)
	at com.clickhouse.jdbc.ResultSetImpl.getObject(ResultSetImpl.java:1468)
	at com.clickhouse.jdbc.ResultSetImpl.getObject(ResultSetImpl.java:1462)
	at com.clickhouse.jdbc.ResultSetImpl.getArray(ResultSetImpl.java:974)
Caused by: java.lang.NullPointerException
	at java.base/java.lang.reflect.Array.multiNewArray(Native Method)
	at java.base/java.lang.reflect.Array.newInstance(Array.java:114)
	at com.clickhouse.jdbc.internal.JdbcUtils.convertList(JdbcUtils.java:372)
	at com.clickhouse.jdbc.internal.JdbcUtils.convert(JdbcUtils.java:270)
	at com.clickhouse.jdbc.ResultSetImpl.getObjectImpl(ResultSetImpl.java:1504)
	... 14 more

Expected Behaviour

Data is being read correctly

Environment

  • Cloud
  • Client version: 0.9.5
  • Language version: Java 21
  • OS: Windows 11

ClickHouse Server

  • ClickHouse Server version: ClickHouse 24.11.1.2557
  • CREATE TABLE statements for tables involved:
 CREATE TABLE default.array_type_test_2
(
  `a14` Array(UUID),
  `a21` Array(IPv4),
  `a22` Array(IPv6),
  `a30` Array(Map(String, Int32))
)
ENGINE = MergeTree
order by `a14`
SETTINGS index_granularity = 8192;

INSERT INTO default.array_type_test_2 (a14, a21, a22, a30)
VALUES
(
    [
        '550e8400-e29b-41d4-a716-446655440000',
        '550e8400-e29b-41d4-a716-446655440001'
    ],
    [
        '192.168.1.1',
        '10.0.0.1'
    ],
    [
        '2001:db8::1',
        'fe80::1'
    ],
    [
        map('a', 1, 'b', 2),
        map('x', 10)
    ]
),
(
    [
        '123e4567-e89b-12d3-a456-426614174000'
    ],
    [
        '8.8.8.8'
    ],
    [
        '2001:4860:4860::8888'
    ],
    [
        map('foo', 42)
    ]
);

Activity

  1. changed the title [-]NPE when calling[/-] [+]NPE when calling getArray for arrays with UUID, IPv4/6, and Map[/+] on Jan 15, 2026
  2. chernser commented on Jan 15, 2026

    @chernser
    Contributor

    @Destrolaric

    thank you for reporting!

  3. added this to the 0.9.7 milestone on Jan 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions