Skip to content

Commit 515f985

Browse files
author
MPCoreDeveloper
committed
changes litedb benchmarks
1 parent 821b363 commit 515f985

File tree

1 file changed

+0
-78
lines changed
  • tests/benchmarks/SharpCoreDB.Benchmarks.Comparative

1 file changed

+0
-78
lines changed

tests/benchmarks/SharpCoreDB.Benchmarks.Comparative/Program.cs

Lines changed: 0 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -381,84 +381,6 @@ static BenchmarkResult RunBLite()
381381
throw new NotSupportedException(
382382
"BLite 2.0.2 BsonDocumentBuilder has no public setter API — benchmark cannot run. " +
383383
"See docs/benchmarks/SHARPCOREDB_COMPARATIVE_BENCHMARKS.md for details.");
384-
385-
#pragma warning disable CS0162 // Unreachable code detected
386-
var dbFile = Path.Combine(Path.GetTempPath(), $"bench-blite-{Guid.NewGuid()}.db");
387-
var result = new BenchmarkResult();
388-
389-
try
390-
{
391-
using var engine = new BLite.Core.BLiteEngine(dbFile);
392-
var col = engine.GetOrCreateCollection("docs", BsonIdType.ObjectId);
393-
394-
// INSERT — placeholder for when BLite exposes a working builder API
395-
var sw = Stopwatch.StartNew();
396-
var insertedIds = new List<BsonId>(InsertCount);
397-
string[] fields = ["name", "email", "age", "score", "data"];
398-
for (int i = 0; i < InsertCount; i++)
399-
{
400-
var localI = i;
401-
var doc = col.CreateDocument(fields, _ =>
402-
{
403-
// BLite 2.0.2: No working setter on BsonDocumentBuilder.
404-
// b.Write / b.Set / b.Add / b["key"] — none exist.
405-
});
406-
var id = col.Insert(doc);
407-
insertedIds.Add(id);
408-
}
409-
sw.Stop();
410-
result.InsertTime = sw.Elapsed.TotalSeconds;
411-
result.InsertOpsPerSec = (int)(InsertCount / result.InsertTime);
412-
Console.WriteLine($" INSERT {InsertCount:N0}: {result.InsertTime:F2}s ({result.InsertOpsPerSec:N0} ops/sec)");
413-
414-
// READ (FindById — B-Tree primary key lookup)
415-
sw.Restart();
416-
int readCount = Math.Min(ReadCount, insertedIds.Count);
417-
for (int i = 0; i < readCount; i++)
418-
{
419-
col.FindById(insertedIds[i]);
420-
}
421-
sw.Stop();
422-
result.ReadTime = sw.Elapsed.TotalSeconds;
423-
result.ReadOpsPerSec = (int)(readCount / result.ReadTime);
424-
Console.WriteLine($" READ {readCount:N0}: {result.ReadTime:F2}s ({result.ReadOpsPerSec:N0} ops/sec)");
425-
426-
// UPDATE
427-
sw.Restart();
428-
int updateCount = Math.Min(UpdateCount, insertedIds.Count);
429-
for (int i = 0; i < updateCount; i++)
430-
{
431-
var localI = i;
432-
var updatedDoc = col.CreateDocument(fields, _ =>
433-
{
434-
// BLite 2.0.2: No working setter on BsonDocumentBuilder.
435-
});
436-
col.Update(insertedIds[i], updatedDoc);
437-
}
438-
sw.Stop();
439-
result.UpdateTime = sw.Elapsed.TotalSeconds;
440-
result.UpdateOpsPerSec = (int)(updateCount / result.UpdateTime);
441-
Console.WriteLine($" UPDATE {updateCount:N0}: {result.UpdateTime:F2}s ({result.UpdateOpsPerSec:N0} ops/sec)");
442-
443-
// DELETE
444-
sw.Restart();
445-
int deleteCount = Math.Min(DeleteCount, insertedIds.Count);
446-
for (int i = 0; i < deleteCount; i++)
447-
{
448-
col.Delete(insertedIds[i]);
449-
}
450-
sw.Stop();
451-
result.DeleteTime = sw.Elapsed.TotalSeconds;
452-
result.DeleteOpsPerSec = (int)(deleteCount / result.DeleteTime);
453-
Console.WriteLine($" DELETE {deleteCount:N0}: {result.DeleteTime:F2}s ({result.DeleteOpsPerSec:N0} ops/sec)");
454-
}
455-
finally
456-
{
457-
try { if (File.Exists(dbFile)) File.Delete(dbFile); } catch { /* temp */ }
458-
}
459-
460-
return result;
461-
#pragma warning restore CS0162
462384
}
463385

464386
// ══════════════════════════════════════

0 commit comments

Comments
 (0)