Skip to content

Commit 1619f34

Browse files
author
jmd
committedMay 23, 2024·
locking correction.
1 parent 777051c commit 1619f34

File tree

2 files changed

+5
-5
lines changed

2 files changed

+5
-5
lines changed
 

‎src/DotJEM.Json.Index2/IO/JsonIndexWriterManager.cs

-2
Original file line numberDiff line numberDiff line change
@@ -100,8 +100,6 @@ public void Close()
100100
TimeLimitedIndexWriterLease[] leasesCopy = leases.ToArray();
101101

102102
Debug.WriteLine("ACTIVE LEASES: " + leasesCopy.Length);
103-
104-
105103
leases.Clear();
106104
foreach (TimeLimitedIndexWriterLease lease in leasesCopy)
107105
{

‎src/DotJEM.Json.Index2/Storage/IJsonIndexStorageManager.cs

+5-3
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ public class JsonIndexStorageManager: IJsonIndexStorageManager
2222
{
2323
private readonly IIndexStorageProvider provider;
2424
private readonly object padlock = new ();
25-
private Directory directory;
25+
private volatile Directory directory;
2626

2727
private readonly Lazy<IIndexWriterManager> writerManager;
2828
private readonly Lazy<IIndexSearcherManager> searcherManager;
@@ -41,10 +41,12 @@ public Directory Directory
4141

4242
lock (padlock)
4343
{
44-
return directory ??= provider.Get();
44+
if (directory != null)
45+
return directory;
46+
47+
return directory = provider.Get();
4548
}
4649
}
47-
protected set => directory = value;
4850
}
4951

5052
public JsonIndexStorageManager(IJsonIndex index, IIndexStorageProvider provider)

0 commit comments

Comments
 (0)
Please sign in to comment.