Repository navigation
Conversation
…formatting issues
laeg
left a comment
There was a problem hiding this comment.
few changes and suggestions please Sergey
| ## Integration path at a glance | ||
|
|
||
| Work through these steps in order. The "Common Pitfalls" notes tell you what breaks if you skip one. | ||
| Integration can be done in several step. Please read through all of them to get full information about library capabilities and specific behavior. |
There was a problem hiding this comment.
Typo: s/step/steps/
I feel like the original phrasing was better for patterns: "Work through these steps in order" - more direct and sets expectations.
Suggestion:
Work through these steps in order. Each one covers a different aspect of the integration, and the "Common Pitfalls" notes flag what breaks if you skip one.
|
|
||
| Prefer `Properties` over embedding credentials in the URL. URL/Properties parsing is handled by [`JdbcConfiguration`](../jdbc-v2/src/main/java/com/clickhouse/jdbc/internal/JdbcConfiguration.java); programmatic setup is available via [`DataSourceImpl`](../jdbc-v2/src/main/java/com/clickhouse/jdbc/DataSourceImpl.java). | ||
|
|
||
| #### User configuration |
There was a problem hiding this comment.
This is a really good addition!
One thing that could make it stronger and more concrete is an example of why decoupling matters. I think we should encourage folks to explicitly set values (even if they are the default) in the configuration as it will mean that if they have a dependency on these, it wont break on upgrades/changes
There was a problem hiding this comment.
Thanks!
Overriding default is good when code is maintained - I'm afraid most will be set and forgotten.
Anyway will try to do more examples.
There was a problem hiding this comment.
I've added example, please review if more is needed.
|
|
||
| See below for how to detect and handle schema mismatch errors specifically. | ||
|
|
||
| #### Schema mismatch |
There was a problem hiding this comment.
Good section!
Because most frameworks (Spring, Hibernate, etc.) typically wrap exceptions in their own exception type, have we verified whether the exception chain is bubbled up to the user? This might save partners some debugging time / help us if they've not exposed the full chain, so let's encourage them to recursively walk the full chain.
There was a problem hiding this comment.
I've updated - please review - may be need more corrections
Summary
Followup PR for comments.
https://github.com/ClickHouse/clickhouse-java/pull/2914/changes#r3594185661
Docker setup and cloud environment - added as "Development environment" section.
References to example test suites will be in another document. Currently we have many examples inline.
functional correctness - covered in Failure handling in Select and Insert operations
potential failure paths
- idempotent inserts - covered in "Idempotency — deduplication token"
- what is retryable - covered in failure handling section for each operation
- long operations failures
client_name - covered in "Workload identification" section
Checklist
Delete items not relevant to your PR:
Note
Low Risk
Documentation-only changes with no runtime or API modifications.
Overview
Adds a Development Environment section to
integration-index.mdwith Java version guidance, a one-line Docker command for local ClickHouse, and a strong recommendation to validate integrations on ClickHouse Cloud, plus links to cloud vs OSS docs.Reframes and expands
integration-jdbc.md: new preface structure, user-facing config adaptation layer (mapping service settings to driver properties with guardrails), and clearer server vs client settings (includingclickhouse_setting_/DriverProperties.serverSetting).Operational depth for integrators: read-path notes (
FINAL,select_sequential_consistency, slow-consumer timeouts); write-path RowBinary + async insert examples andwait_async_insert=1semantics; failure handling (client network retries vs app-level retries, ClickHouse error code 33 schema mismatch with cause-chain example); Cloud idle wake-up viaConnection.isValid; minor TLS/format/observability example tweaks.Reviewed by Cursor Bugbot for commit 3da06e0. Bugbot is set up for automated code reviews on this repo. Configure here.