Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ v0.3.1 (Unreleased)
* `Sum`/`SumAsync` over a `double` or `float` column no longer throws `InvalidCastException`. EF Core wraps a top-level aggregate so the empty case returns `0`, supplying that fallback as a boxed `Int32` carrying the `Float64`/`Float32` mapping; the literal generators now convert rather than unbox. The `Float32` read path also converts, since ClickHouse widens `sum(Float32)` to `Float64` (which the driver's `GetFloat()` refuses to downcast). ([#46](https://github.com/ClickHouse/ClickHouse.EntityFrameworkCore/issues/46))
* **SummingMergeTree with multiple sum columns**: `HasSummingMergeTreeEngine("A", "B")` now generates valid DDL (`SummingMergeTree((A, B))`). Previously it emitted a comma-separated argument list (`SummingMergeTree(A, B)`), which ClickHouse rejects with `NUMBER_OF_ARGUMENTS_DOESNT_MATCH`. Single-column and no-column usage are unaffected.

### Dependencies
* **`ClickHouse.Driver` 1.3.0 → [1.4.0](https://github.com/ClickHouse/clickhouse-cs/releases/tag/1.4.0)** across the provider and both test projects (the pins must move together or restore fails with `NU1605`). No provider code changes were required. Two driver behaviour changes are worth knowing: query responses are now compressed with **zstd** instead of gzip by default (decoded transparently, no action needed), and reading a column from `ClickHouseDataReader` with no current row now throws `InvalidOperationException` instead of returning a value. The provider's own materialization always positions the reader first, so the latter only affects code that uses the underlying `ClickHouseConnection` directly.

v0.3.0
---
### Advanced queries
Expand Down
3 changes: 3 additions & 0 deletions RELEASENOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ v0.3.1 (Unreleased)
* Summing a `double` or `float` column (`.SumAsync(x => x.Value)`) no longer throws `InvalidCastException`. Two ClickHouse-specific mismatches were biting: EF Core hands the float literal generator a boxed `Int32` `0` as the empty-result fallback, and ClickHouse widens `sum(Float32)` to `Float64` so the driver couldn't read it back as a `float`. Both the literal generation and the `Float32` read path now convert instead of hard-casting. ([#46](https://github.com/ClickHouse/ClickHouse.EntityFrameworkCore/issues/46)) (Thanks to @HotTotem!)
* **SummingMergeTree with multiple sum columns** now produces valid DDL. Configuring more than one sum column (`HasSummingMergeTreeEngine("A", "B")`) previously emitted `SummingMergeTree(A, B)`, which ClickHouse rejects with `NUMBER_OF_ARGUMENTS_DOESNT_MATCH` — the engine takes a single optional parameter that must be a tuple of columns. Multiple columns are now wrapped in a tuple (`SummingMergeTree((A, B))`); single-column and no-column usage are unchanged.

### Dependencies
* The provider now builds against **`ClickHouse.Driver` [1.4.0](https://github.com/ClickHouse/clickhouse-cs/releases/tag/1.4.0)**, up from 1.3.0, and picks up that release's substantial read-path allocation and GC reductions for free. Upgrading needs no changes to your code or configuration. Two driver-level behaviour changes are worth being aware of: query responses now come back **zstd**-compressed rather than gzip by default — the driver decodes this for you, so it is invisible unless you were inspecting raw responses — and reading a column value from a `ClickHouseDataReader` that has no current row (before the first `Read()`, or after `Read()` has returned `false`) now throws `InvalidOperationException` rather than returning something arbitrary. EF Core always positions the reader before materializing, so that only matters if you drop down to the raw `ClickHouseConnection` yourself.

v0.3.0
---
### Advanced queries
Expand Down
2 changes: 1 addition & 1 deletion src/EFCore.ClickHouse/EFCore.ClickHouse.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
<ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="10.0.2" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="10.0.2" PrivateAssets="all" IncludeAssets="runtime; build; native; contentfiles; analyzers; buildtransitive" />
<PackageReference Include="ClickHouse.Driver" Version="1.3.0" />
<PackageReference Include="ClickHouse.Driver" Version="1.4.0" />
</ItemGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.*" />
<PackageReference Include="xunit.runner.visualstudio" Version="3.*" />
<PackageReference Include="Testcontainers.ClickHouse" Version="4.*" />
<PackageReference Include="ClickHouse.Driver" Version="1.3.0" />
<PackageReference Include="ClickHouse.Driver" Version="1.4.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Relational.Specification.Tests" Version="10.0.2" />
<PackageReference Include="GitHubActionsTestLogger" Version="3.0.1">
<PrivateAssets>all</PrivateAssets>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.*" />
<PackageReference Include="xunit.runner.visualstudio" Version="3.*" />
<PackageReference Include="Testcontainers.ClickHouse" Version="4.*" />
<PackageReference Include="ClickHouse.Driver" Version="1.3.0" />
<PackageReference Include="ClickHouse.Driver" Version="1.4.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="10.0.2" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Relational.Specification.Tests" Version="10.0.2" />
<PackageReference Include="GitHubActionsTestLogger" Version="3.0.1">
Expand Down
Loading