diff --git a/PartitionFileStorageTest/Program.cs b/PartitionFileStorageTest/Program.cs index 9f78672..c65fed8 100644 --- a/PartitionFileStorageTest/Program.cs +++ b/PartitionFileStorageTest/Program.cs @@ -383,10 +383,45 @@ namespace PartitionFileStorageTest } } + private static void FaultUncompressedReadTest(string filePath) + { + var serializer = new StoreStandartSerializer(); + // 1 build index + var dict = new Dictionary>(); + using (var reader = new MemoryStreamReader(new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.None, 4096 * 1024))) + { + while (reader.EOS == false) + { + try + { + var key = serializer.KeyDeserializer.Invoke(reader); + if (false == dict.ContainsKey(key)) + { + dict[key] = new HashSet(); + } + if (reader.EOS) + { + break; + } + var input = serializer.InputDeserializer.Invoke(reader); + dict[key].Add(input); + } + catch (Exception ex) + { + + } + } + } + } + static void Main(string[] args) { /*FaultIndexTest(@"H:\temp\85"); return;*/ + /* + FaultUncompressedReadTest(@"H:\temp\107"); + return; + */ var root = @"H:\temp"; var options = new StoreOptions @@ -396,7 +431,7 @@ namespace PartitionFileStorageTest Enabled = true, StepType = IndexStepType.Step, StepValue = 16, - EnableIndexInMemoryCachee= true + EnableIndexInMemoryCachee = true }, RootFolder = root, FilePartition = new StoreFilePartition("Last three digits", (ctn, date) => (ctn % 128).ToString()), @@ -446,9 +481,10 @@ namespace PartitionFileStorageTest } // FastTest(options); - FSUtils.CleanAndTestFolder(root); + /* FSUtils.CleanAndTestFolder(root); + FullStoreMultithreadTest(optionsMultiThread, pairs);*/ - FullStoreMultithreadTest(optionsMultiThread, pairs); + FSUtils.CleanAndTestFolder(root); FullStoreTest(options, pairs); /* diff --git a/ZeroLevel/ZeroLevel.csproj b/ZeroLevel/ZeroLevel.csproj index 4f63ace..614a07d 100644 --- a/ZeroLevel/ZeroLevel.csproj +++ b/ZeroLevel/ZeroLevel.csproj @@ -6,16 +6,16 @@ ogoun ogoun - 3.3.8.5 - Fix temporary file path generation + 3.3.8.6 + Partition storage. Fixes bugs related to multithreading. https://github.com/ogoun/Zero/wiki Copyright Ogoun 2022 https://github.com/ogoun/Zero git - 3.3.8.5 - 3.3.8.5 + 3.3.8.6 + 3.3.8.6 AnyCPU;x64;x86 zero.png full