Skip to content

Commit 0c22dc4

Browse files
fix race condition!
1 parent 387a975 commit 0c22dc4

File tree

3 files changed

+3
-7
lines changed

3 files changed

+3
-7
lines changed

src/Ydb.Sdk/src/IDriver.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,7 @@ protected async ValueTask<CallOptions> GetCallOptions(GrpcRequestSettings settin
217217

218218
public async ValueTask DisposeAsync()
219219
{
220-
if (--_ownerCount <= 0 && Interlocked.CompareExchange(ref Disposed, 1, 0) == 0)
220+
if (Interlocked.Decrement(ref _ownerCount) <= 0 && Interlocked.CompareExchange(ref Disposed, 1, 0) == 0)
221221
{
222222
await ChannelPool.DisposeAsync();
223223

src/Ydb.Sdk/test/Ydb.Sdk.Ado.Tests/PoolManagerTests.cs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,8 @@
33

44
namespace Ydb.Sdk.Ado.Tests;
55

6-
[CollectionDefinition("PoolManagerTests", DisableParallelization = true)]
7-
public sealed class PoolManagerCollection;
8-
96
[Collection("PoolManagerTests")]
7+
[CollectionDefinition("PoolManagerTests", DisableParallelization = true)]
108
public class PoolManagerTests
119
{
1210
[Theory]

src/Ydb.Sdk/test/Ydb.Sdk.Ado.Tests/YdbSchemaTests.cs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,8 @@
33

44
namespace Ydb.Sdk.Ado.Tests;
55

6-
[CollectionDefinition("YdbSchemaTests isolation test", DisableParallelization = true)]
7-
public sealed class YdbSchemaManagerCollection;
8-
96
[Collection("YdbSchemaTests isolation test")]
7+
[CollectionDefinition("YdbSchemaTests isolation test", DisableParallelization = true)]
108
public class YdbSchemaTests : TestBase
119
{
1210
private readonly string _table1;

0 commit comments

Comments
 (0)