Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Invalid IPv6 value (CANNOT_PARSE_DOMAIN_VALUE_FROM_STRING) with subquery #35528

Closed
maxmouchet opened this issue Mar 23, 2022 · 1 comment · Fixed by #35534
Closed

Invalid IPv6 value (CANNOT_PARSE_DOMAIN_VALUE_FROM_STRING) with subquery #35528

maxmouchet opened this issue Mar 23, 2022 · 1 comment · Fixed by #35534
Assignees
Labels
bug Confirmed user-visible misbehaviour in official release major v22.3-affected

Comments

@maxmouchet
Copy link

Inclusion (IN/NOT IN) test does not work when the subquery returns IPv6 values.

Does it reproduce on recent release?

Yes, on version 22.3.2.

How to reproduce

On a stock Docker container (clickhouse/clickhouse-server:22):

CREATE TABLE IF NOT EXISTS test_ipv6 (a IPv6) ENGINE = MergeTree ORDER BY a;
INSERT INTO test_ipv6 VALUES ('::ffff:1.1.1.1'),('::ffff:2.2.2.2');
SELECT a FROM test_ipv6 FORMAT TabSeparated;
-- ::ffff:1.1.1.1
-- ::ffff:2.2.2.2
-- OK!

SELECT a FROM test_ipv6 WHERE a <= toIPv6('::ffff:1.1.1.1') FORMAT TabSeparated;
-- ::ffff:1.1.1.1
-- OK!

SELECT a
FROM test_ipv6
WHERE a IN (
    SELECT a
    FROM test_ipv6
    WHERE a <= toIPv6('::ffff:1.1.1.1')
);
-- Received exception from server (version 22.3.2):
-- Code: 441. DB::Exception: Received from localhost:9000. DB::Exception: Invalid IPv6 value: while executing 'FUNCTION in(a : 0, __set :: 1) -> in(a, _subquery9) UInt8 : 2'. (CANNOT_PARSE_DOMAIN_VALUE_FROM_STRING)

Expected behavior

The last query should work and return ::ffff:1.1.1.1.

Error message and/or stacktrace

Received exception from server (version 22.3.2):
Code: 441. DB::Exception: Received from localhost:9000. DB::Exception: Invalid IPv6 value: while executing 'FUNCTION in(a : 0, __set :: 1) -> in(a, _subquery9) UInt8 : 2'. (CANNOT_PARSE_DOMAIN_VALUE_FROM_STRING)

Additional context

  • Same issue with two different tables (e.g. test_ipv6_1 and test_ipv6_2).
  • Works on ClickHouse 21.
@maxmouchet maxmouchet added the potential bug To be reviewed by developers and confirmed/rejected. label Mar 23, 2022
maxmouchet added a commit to dioptra-io/iris that referenced this issue Mar 23, 2022
@den-crane den-crane added bug Confirmed user-visible misbehaviour in official release major and removed potential bug To be reviewed by developers and confirmed/rejected. labels Mar 23, 2022
@den-crane
Copy link
Contributor

SELECT 1 FROM test_ipv6 WHERE a IN (SELECT a FROM test_ipv6);
DB::Exception: Invalid IPv6 value: while executin

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Confirmed user-visible misbehaviour in official release major v22.3-affected
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants