Skip to content

Commit e3aa8aa

Browse files
author
MPCoreDeveloper
committed
release(v2): bump to 2.0.0.1 - ship the WAL FileStream.Position race fix
- All packages + Directory.Packages.props + build props bumped 2.0.0.0 -> 2.0.0.1 (4-part patch versioning). - CHANGELOG [2.0.0.1] section documents the single-file corruption fix. - Core NuGet.README updated to 2.0.0.1.
1 parent 3160716 commit e3aa8aa

47 files changed

Lines changed: 73 additions & 60 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎Directory.Packages.props‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<PropertyGroup>
33
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
44
<CentralPackageTransitivePinningEnabled>true</CentralPackageTransitivePinningEnabled>
5-
<SharpCoreDBVersion>2.0.0.0</SharpCoreDBVersion>
5+
<SharpCoreDBVersion>2.0.0.1</SharpCoreDBVersion>
66
</PropertyGroup>
77
<ItemGroup>
88
<PackageVersion Include="SharpCoreDB" Version="$(SharpCoreDBVersion)" />

‎Examples/CQRS/OrderManagement.CqrsDemo/OrderManagement.CqrsDemo.csproj‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<LangVersion>14.0</LangVersion>
77
<ImplicitUsings>enable</ImplicitUsings>
88
<Nullable>enable</Nullable>
9-
<Version>2.0.0.0</Version>
9+
<Version>2.0.0.1</Version>
1010
<IsPackable>false</IsPackable>
1111
<UseLocalSharpCoreDbSources Condition="'$(UseLocalSharpCoreDbSources)' == '' and Exists('..\..\..\src\SharpCoreDB.CQRS\SharpCoreDB.CQRS.csproj')">true</UseLocalSharpCoreDbSources>
1212
<UseLocalSharpCoreDbSources Condition="'$(UseLocalSharpCoreDbSources)' == ''">false</UseLocalSharpCoreDbSources>

‎Examples/EventSourcing/OrderManagement.PersistentDemo/OrderManagement.PersistentDemo.csproj‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<LangVersion>14.0</LangVersion>
77
<ImplicitUsings>enable</ImplicitUsings>
88
<Nullable>enable</Nullable>
9-
<Version>2.0.0.0</Version>
9+
<Version>2.0.0.1</Version>
1010
<IsPackable>false</IsPackable>
1111
<UseLocalSharpCoreDbSources Condition="'$(UseLocalSharpCoreDbSources)' == '' and Exists('..\..\..\src\SharpCoreDB\SharpCoreDB.csproj')">true</UseLocalSharpCoreDbSources>
1212
<UseLocalSharpCoreDbSources Condition="'$(UseLocalSharpCoreDbSources)' == ''">false</UseLocalSharpCoreDbSources>

‎Examples/EventSourcing/OrderManagement/OrderManagement.csproj‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<LangVersion>14.0</LangVersion>
77
<ImplicitUsings>enable</ImplicitUsings>
88
<Nullable>enable</Nullable>
9-
<Version>2.0.0.0</Version>
9+
<Version>2.0.0.1</Version>
1010
<IsPackable>false</IsPackable>
1111
<UseLocalSharpCoreDbSources Condition="'$(UseLocalSharpCoreDbSources)' == '' and Exists('..\..\..\src\SharpCoreDB.EventSourcing\SharpCoreDB.EventSourcing.csproj')">true</UseLocalSharpCoreDbSources>
1212
<UseLocalSharpCoreDbSources Condition="'$(UseLocalSharpCoreDbSources)' == ''">false</UseLocalSharpCoreDbSources>

‎Examples/FluentMigrator/SharpCoreDB.FluentMigratorDemo/SharpCoreDB.FluentMigratorDemo.csproj‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<LangVersion>14.0</LangVersion>
77
<ImplicitUsings>enable</ImplicitUsings>
88
<Nullable>enable</Nullable>
9-
<Version>2.0.0.0</Version>
9+
<Version>2.0.0.1</Version>
1010
<IsPackable>false</IsPackable>
1111
<!-- Set to true to use local source projects instead of NuGet packages -->
1212
<UseLocalSharpCoreDbSources Condition="'$(UseLocalSharpCoreDbSources)' == '' and Exists('..\..\..\src\SharpCoreDB\SharpCoreDB.csproj')">true</UseLocalSharpCoreDbSources>

‎docs/CHANGELOG.md‎

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [2.0.0.1] - 2026-09-01
11+
12+
### Fixed
13+
14+
- **Single-file data corruption under concurrent writes (critical)** — the WAL manager wrote to
15+
the shared file stream with a bare `Position` + `WriteAsync`, while the background write-behind
16+
worker wrote data pages under a lock. A concurrent `Position` mutation could land WAL bytes on a
17+
data page, so a table's data block could read back as WAL/registry bytes instead of JSON after a
18+
reopen (sporadic `JsonException '0x02'` / "Expected 100 rows, got 0"). All `FileStream.Position`
19+
use is now serialized through `SingleFileStorageProvider.WriteAt` (header, WAL, delta writes,
20+
reads, defrag). Regression covered by `VacuumStressTests` (failed ~50% before, stable after).
21+
- **4-part patch versioning** — this patch ships as `2.0.0.1` (NuGet shows `2.0.0.1`).
22+
1023
## [2.0.0.0] - 2026-09-01
1124

1225
### Release highlights

‎src/SharpCoreDB.Analytics/SharpCoreDB.Analytics.csproj‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<TargetFramework>net10.0</TargetFramework>
55
<ImplicitUsings>enable</ImplicitUsings>
66
<Nullable>enable</Nullable>
7-
<Version>2.0.0.0</Version>
7+
<Version>2.0.0.1</Version>
88

99
<!-- NuGet Package Properties -->
1010
<PackageId>SharpCoreDB.Analytics</PackageId>

‎src/SharpCoreDB.CQRS/SharpCoreDB.CQRS.csproj‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
<NoWarn>$(NoWarn);1591;SA1101;SA1633;SA1309</NoWarn>
1212

1313
<PackageId>SharpCoreDB.CQRS</PackageId>
14-
<Version>2.0.0.0</Version>
14+
<Version>2.0.0.1</Version>
1515
<Authors>MPCoreDeveloper</Authors>
1616
<Company>SharpCoreDB</Company>
1717
<Product>SharpCoreDB.CQRS</Product>

‎src/SharpCoreDB.Client.Protocol/SharpCoreDB.Client.Protocol.csproj‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010
<!-- Assembly info -->
1111
<AssemblyName>SharpCoreDB.Client.Protocol</AssemblyName>
12-
<Version>2.0.0.0</Version>
12+
<Version>2.0.0.1</Version>
1313
<Description>Client-side protocol implementation for SharpCoreDB (gRPC, binary)</Description>
1414

1515
<!-- NuGet Package Properties -->

‎src/SharpCoreDB.Client/SharpCoreDB.Client.csproj‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010
<!-- Assembly info -->
1111
<AssemblyName>SharpCoreDB.Client</AssemblyName>
12-
<Version>2.0.0.0</Version>
12+
<Version>2.0.0.1</Version>
1313
<Description>.NET client library for SharpCoreDB network server (ADO.NET-like API)</Description>
1414

1515
<!-- NuGet packaging -->

0 commit comments

Comments
 (0)