This PR adds a new state store component for ClickHouse, a column-oriented database management system. The ClickHouse state store component provides the following features:
Basic CRUD operations for state management
Support for TTL (Time-To-Live)
ETag support for optimistic concurrency
Bulk operations support
Username/password authentication
Uses ReplacingMergeTree engine for efficient updates
Description
This PR adds a new state store component for ClickHouse, a column-oriented database management system. The ClickHouse state store component provides the following features:
Key implementation details:
Implementation Details
The component includes:
State store implementation (
clickhouse.go
)Tests (
clickhouse_test.go
)Configuration options:
Checklist
Testing Done
Tests were run against ClickHouse v23.8 using the official Go driver.
Additional Notes