Skip to content

Commit 0d8b400

Browse files
lehoncak-intenswassim-k
authored andcommitted
UpdateIAmAlive for SingleMembership fixed to not create invalid subdocuments without required properties
1 parent cd9d50c commit 0d8b400

File tree

2 files changed

+6
-3
lines changed

2 files changed

+6
-3
lines changed

Orleans.Providers.MongoDB/Membership/Store/Single/SingleMembershipCollection.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -92,8 +92,11 @@ public async Task<MembershipTableData> ReadRow(string deploymentId, SiloAddress
9292

9393
public async Task UpdateIAmAlive(string deploymentId, SiloAddress address, DateTime iAmAliveTime)
9494
{
95-
await Collection.UpdateOneAsync(x => x.DeploymentId == deploymentId,
96-
Update
95+
var filter = Builders<DeploymentDocument>.Filter.And(
96+
Builders<DeploymentDocument>.Filter.Eq(x => x.DeploymentId, deploymentId),
97+
Builders<DeploymentDocument>.Filter.Exists($"Members.{BuildKey(address)}", true));
98+
99+
await Collection.UpdateOneAsync(filter, Update
97100
.Set($"Members.{BuildKey(address)}.IAmAliveTime", LogFormatter.PrintDate(iAmAliveTime)));
98101
}
99102

Orleans.Providers.MongoDB/Orleans.Providers.MongoDB.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
<PackageTags>Orleans OrleansProviders MongoDB</PackageTags>
1616
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
1717
<TargetFrameworks>net8.0</TargetFrameworks>
18-
<Version>8.0.2</Version>
18+
<Version>8.0.3</Version>
1919
</PropertyGroup>
2020

2121
<ItemGroup>

0 commit comments

Comments
 (0)