read-only=true unsupported when connecting to ClickHouse after upgrade 23.2.5 → 25.1.4 #960

Open
opened 2026-03-04 11:26:00 -05:00 by deekerman · 0 comments
Owner

Originally created by @Dr1m91 on GitHub (Aug 12, 2025).

Description

After upgrading CloudBeaver from 23.2.5 to 25.1.4, connecting to ClickHouse fails when the connection configuration contains "read-only": true. The connection error is:

Error connecting to database  
read-only=true unsupported

This worked in 23.2.5. Setting "read-only": false allows a successful connection, but I need to be able to set read-only to true (for a read-only client mode). The behavior suggests CloudBeaver (or the JDBC driver integration) is passing a read-only flag that ClickHouse/driver rejects.

I can provide full connection logs or a stack trace if helpful — tell me where to attach them.

Steps to reproduce

  1. Run CloudBeaver 25.1.4
  2. Add or import a ClickHouse connection using provider clickhouse and driver com_clickhouse.
  3. In the connection configuration set "read-only": true.
  4. Attempt to connect.

Example sanitized connection config for reproduction

{
  "folders": {},
  "connections": {
    "clickhouse-0": {
      "name": "clickhouse",
      "provider": "clickhouse",
      "driver": "com_clickhouse",
      "save-password": false,
      "show-system-objects": false,
      "read-only": true,
      "configuration": {
        "user": "<USER>",
        "host": "<HOST>",
        "port": "8123",
        "database": "default",
        "url": "jdbc:clickhouse://<HOST>:8123/default",
        "type": "dev",
        "provider-properties": {
          "@dbeaver-show-non-default-db@": "true"
        },
        "auth-model": "native"
      }
    },
    "clickhouse-1": {
      "name": "clickhouse feature rw",
      "provider": "clickhouse",
      "driver": "com_clickhouse",
      "save-password": false,
      "show-system-objects": false,
      "read-only": false,
      "configuration": {
        "user": "",
        "host": "<HOST>",
        "port": "8123",
        "database": "default",
        "url": "jdbc:clickhouse://<HOST>:8123/default",
        "type": "dev",
        "provider-properties": {
          "@dbeaver-show-non-default-db@": "true"
        },
        "auth-model": "native"
      }
    }
  },
  "connection-types": {
    "dev": {
      "name": "Development",
      "color": "0,0,255",
      "description": "Regular development connection",
      "auto-commit": true,
      "confirm-execute": false,
      "confirm-data-change": false,
      "auto-close-transactions": false
    }
  }
}

Expected/Desired Behavior

  • Setting "read-only": true should not cause the connection to fail.
  • CloudBeaver should either avoid sending an unsupported read-only flag to the ClickHouse driver or handle it gracefully (e.g., use client-side read-only mode without calling Connection.setReadOnly(true) for ClickHouse).
  • Alternatively document that read-only config is unsupported for ClickHouse and provide a proper warning in the UI.

Suggested fix ideas

  • Do not call Connection.setReadOnly(true) for the ClickHouse provider.
  • Do not include read-only=true in connection properties passed to the ClickHouse JDBC driver.
  • Add provider-specific handling or documentation.

CloudBeaver Version

Problem observed in 25.1.4, previously working in 23.2.5

Additional context

  • Cloudbeaver deployed in k8s
  • Driver com_clickhouse
  • HTTP port 8123, example JDBC URL jdbc:clickhouse://:8123/default
  • Workaround: leave "read-only" unset or false and use a DB user with only SELECT privileges
Originally created by @Dr1m91 on GitHub (Aug 12, 2025). ### Description After upgrading CloudBeaver from 23.2.5 to 25.1.4, connecting to ClickHouse fails when the connection configuration contains "read-only": true. The connection error is: ``` Error connecting to database read-only=true unsupported ``` This worked in 23.2.5. Setting "read-only": false allows a successful connection, but I need to be able to set read-only to true (for a read-only client mode). The behavior suggests CloudBeaver (or the JDBC driver integration) is passing a read-only flag that ClickHouse/driver rejects. I can provide full connection logs or a stack trace if helpful — tell me where to attach them. ### Steps to reproduce 1. Run CloudBeaver 25.1.4 2. Add or import a ClickHouse connection using provider clickhouse and driver com_clickhouse. 3. In the connection configuration set "read-only": true. 4. Attempt to connect. Example sanitized connection config for reproduction ```json { "folders": {}, "connections": { "clickhouse-0": { "name": "clickhouse", "provider": "clickhouse", "driver": "com_clickhouse", "save-password": false, "show-system-objects": false, "read-only": true, "configuration": { "user": "<USER>", "host": "<HOST>", "port": "8123", "database": "default", "url": "jdbc:clickhouse://<HOST>:8123/default", "type": "dev", "provider-properties": { "@dbeaver-show-non-default-db@": "true" }, "auth-model": "native" } }, "clickhouse-1": { "name": "clickhouse feature rw", "provider": "clickhouse", "driver": "com_clickhouse", "save-password": false, "show-system-objects": false, "read-only": false, "configuration": { "user": "", "host": "<HOST>", "port": "8123", "database": "default", "url": "jdbc:clickhouse://<HOST>:8123/default", "type": "dev", "provider-properties": { "@dbeaver-show-non-default-db@": "true" }, "auth-model": "native" } } }, "connection-types": { "dev": { "name": "Development", "color": "0,0,255", "description": "Regular development connection", "auto-commit": true, "confirm-execute": false, "confirm-data-change": false, "auto-close-transactions": false } } } ``` ### Expected/Desired Behavior - Setting "read-only": true should not cause the connection to fail. - CloudBeaver should either avoid sending an unsupported read-only flag to the ClickHouse driver or handle it gracefully (e.g., use client-side read-only mode without calling Connection.setReadOnly(true) for ClickHouse). - Alternatively document that read-only config is unsupported for ClickHouse and provide a proper warning in the UI. Suggested fix ideas - Do not call Connection.setReadOnly(true) for the ClickHouse provider. - Do not include read-only=true in connection properties passed to the ClickHouse JDBC driver. - Add provider-specific handling or documentation. ### CloudBeaver Version Problem observed in 25.1.4, previously working in 23.2.5 ### Additional context - Cloudbeaver deployed in k8s - Driver com_clickhouse - HTTP port 8123, example JDBC URL jdbc:clickhouse://<HOST>:8123/default - Workaround: leave "read-only" unset or false and use a DB user with only SELECT privileges -
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/cloudbeaver#960
No description provided.