Skip to content

Query parameters can not be parsed in DESCRIBE TABLE query with client-v2 #2400

Description

@jnd77

Description

Bug with Client#query(sql, params) for a DESCRIBE TABLE query.

Steps to reproduce

See the unit test below.
The parameter name is not substituted.

Error Log or Exception StackTrace

com.clickhouse.client.api.ServerException: Code: 62. DB::Exception: Syntax error: failed at position 33 (}): }. Expected substitution type (identifier). (SYNTAX_ERROR)

Expected Behaviour

Code Example

  @Test
  void testWeirdBugWithParams() throws Exception {
    final Client client = new Client.Builder()
        .addEndpoint(Protocol.HTTP, "localhost", 8123, false)
        .setUsername("default")
        .setPassword("")
        .build();
    final Map<String, Object> params = Map.of("table_name", "`system`.`tables`");
    // This query should not throw an exception
    client.query("DESCRIBE TABLE {table_name:String}", params).get();
  }

Configuration

Client Configuration

See above.

Environment

  • Cloud
  • Client version: 0.8.6
  • Language version: Java 17
  • OS: Linux

ClickHouse Server

  • ClickHouse Server version: 25.3.3.42 (official build)

Activity

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

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions