Skip to content

build(deps): bump github.com/ClickHouse/clickhouse-go/v2 from 2.36.0 to 2.37.2 in /core #536

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jun 24, 2025

Bumps github.com/ClickHouse/clickhouse-go/v2 from 2.36.0 to 2.37.2.

Release notes

Sourced from github.com/ClickHouse/clickhouse-go/v2's releases.

v2.37.2

What's Changed

Other Changes 🛠

Full Changelog: ClickHouse/clickhouse-go@v2.37.1...v2.37.2

v2.37.1

What's Changed

Bug fixes 🐛

  • Fix Native API HTTP bugs by @​SpencerTorres in ClickHouse/clickhouse-go#1578
  • Fixed critical bug with the new HTTP Native API where connections were not being released.
  • Also fixed random HTTP 400 errors with large batches over HTTP

Full Changelog: ClickHouse/clickhouse-go@v2.37.0...v2.37.1

v2.37.0

What's Changed

Enhancements 🎉

Bug fixes 🐛

HTTP in ClickHouse API

This release includes a bug fix / enhancement for the "ClickHouse API" interface. Previously the only way to use HTTP was through the database/sql interface, but now you can use Protocol: clickhouse.HTTP in your clickhouse.Open options. HTTP still has some limitations to be aware of for things like batch flushing and session context, so be cautious when switching over code to this protocol. Please report any issues you may have with this change. Native protocol shouldn't be affected, but you can downgrade to v2.36.x if you notice any issues.

New Contributors

... (truncated)

Changelog

Sourced from github.com/ClickHouse/clickhouse-go/v2's changelog.

v2.37.2, 2025-06-23

What's Changed

Other Changes 🛠

Full Changelog: ClickHouse/clickhouse-go@v2.37.1...v2.37.2

v2.37.1, 2025-06-17

What's Changed

Bug fixes 🐛

  • Fix Native API HTTP bugs by @​SpencerTorres in ClickHouse/clickhouse-go#1578
  • Fixed critical bug with the new HTTP Native API where connections were not being released.
  • Also fixed random HTTP 400 errors with large batches over HTTP

Full Changelog: ClickHouse/clickhouse-go@v2.37.0...v2.37.1

v2.37.0, 2025-06-16

What's Changed

Enhancements 🎉

Bug fixes 🐛

HTTP in ClickHouse API

This release includes a bug fix / enhancement for the "ClickHouse API" interface. Previously the only way to use HTTP was through the database/sql interface, but now you can use Protocol: clickhouse.HTTP in your clickhouse.Open options. HTTP still has some limitations to be aware of for things like batch flushing and session context, so be cautious when switching over code to this protocol. Please report any issues you may have with this change. Native protocol shouldn't be affected, but you can downgrade to v2.36.x if you notice any issues.

New Contributors

Full Changelog: ClickHouse/clickhouse-go@v2.36.0...v2.37.0

Commits
  • f10d0ba Update release notes
  • c19b7fd Merge pull request #1580 from ClickHouse/ch_go_patch_remove_v1
  • 665c8f0 remove dependency on v1, update ch-go
  • a27396f Update release notes
  • f5cc0a8 Merge pull request #1578 from ClickHouse/fix_http_400
  • bf82c41 Update HTTP datetime tests, err messages
  • 50fc79a http query debug
  • 746c65a stress test http batch
  • 477c7b6 remove empty block from being encoded in batch
  • 277a485 revert proto revision header
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [github.com/ClickHouse/clickhouse-go/v2](https://github.com/ClickHouse/clickhouse-go) from 2.36.0 to 2.37.2.
- [Release notes](https://github.com/ClickHouse/clickhouse-go/releases)
- [Changelog](https://github.com/ClickHouse/clickhouse-go/blob/main/CHANGELOG.md)
- [Commits](ClickHouse/clickhouse-go@v2.36.0...v2.37.2)

---
updated-dependencies:
- dependency-name: github.com/ClickHouse/clickhouse-go/v2
  dependency-version: 2.37.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file go Pull requests that update Go code labels Jun 24, 2025
Copy link

jazzberry-ai bot commented Jun 24, 2025

Bug Report

Name Severity Example test case Description
Potential data corruption due to ch-go update Medium Insert row with specific data type using the old driver, read with the updated driver, and verify correct deserialization. Update to github.com/ClickHouse/ch-go (v0.66.1) may introduce subtle changes affecting data serialization/deserialization, potentially leading to data corruption or errors if the application relies on previous buggy behavior.

Comments? Email us.

@modelorona
Copy link
Collaborator

@claude will there be any issue updating from the current clickhouse driver to the new one? check the changes and see if there's any breaking changes then cross-reference with how we handle data to see for potential conflicts.

Copy link
Contributor

claude bot commented Jul 12, 2025

Claude finished @modelorona's task —— View job


Analysis Summary

Key Changes in ClickHouse Driver v2.36.0 → v2.37.2:

  1. v2.37.2: Removed dependency on v1, updated ch-go dependency
  2. v2.37.1: Fixed critical HTTP Native API bug where connections weren't released
  3. v2.37.0:
    • Added DateTime/DateTime64 → int64 scanning support
    • Added sql.Scanner support for Array, IPv4, IPv6, Map types
    • HTTP support in Native Go interface

Current WhoDB ClickHouse Usage:

Based on my analysis of the codebase:

  1. Connection Setup (core/src/plugins/clickhouse/db.go:53-54):

    • Uses HTTP protocol when enabled: options.Protocol = clickhouse.HTTP
    • Uses gorm-clickhouse wrapper
    • Connection pooling configured
  2. Data Type Handling (core/src/plugins/gorm/utils.go:266-285):

    • DateTime handling: Already supports parsing various formats
    • No explicit use of DateTime64, IPv4, IPv6, or Map types
    • Array type support exists but basic
  3. No Direct ch-go Usage:

    • The application uses the driver through gorm wrapper
    • No direct interaction with low-level ch-go APIs

Potential Issues:

  1. HTTP Connection Leak (Fixed in v2.37.1):

    • If HTTP protocol is enabled, v2.36.0 had a critical bug
    • Connections weren't being released properly
    • Impact: Memory/connection exhaustion over time
    • Resolution: Fixed in v2.37.1
  2. ch-go Dependency Update:

    • The underlying ch-go library was updated
    • Could affect binary protocol serialization
    • Risk: Low - WhoDB uses high-level APIs through gorm
  3. New Data Type Support:

    • New scanning capabilities unlikely to cause issues
    • WhoDB doesn't explicitly use these new types
    • Backward compatible changes

Recommendations:

Safe to Update: The update appears safe for WhoDB's usage patterns

Benefits:

  • Critical HTTP connection leak fix
  • Improved data type support
  • Removal of v1 dependency (cleaner)

Testing Focus:

  • Test HTTP protocol connections if enabled
  • Verify existing data operations work correctly
  • Monitor connection pool behavior

The jazzberry-ai concern about data corruption seems overstated for this codebase - WhoDB uses high-level APIs and doesn't directly interact with the serialization layer that was updated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file go Pull requests that update Go code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant