Skip to content

v11.0.0-preview.5.26302.115

@LoopedBard3 LoopedBard3 tagged this 19 May 00:57
Since the SQLitePCLRaw 3.x bump in #36551, every benchmark in
EFCore.Sqlite.Benchmarks throws on [GlobalSetup]:

  System.Exception: You need to call SQLitePCL.raw.SetProvider().
  If you are using a bundle package, this is done by calling
  SQLitePCL.Batteries.Init().
     at SQLitePCL.raw.get_Provider()
     at SQLitePCL.raw.sqlite3_libversion()
     at Microsoft.Data.Sqlite.SqliteConnection.get_ServerVersion()
     at Microsoft.EntityFrameworkCore.Sqlite.Update.Internal
          .SqliteUpdateSqlGenerator..ctor(UpdateSqlGeneratorDependencies)
     ...
     at BenchmarkDotNet.Autogenerated.Runnable_0.GlobalSetup()

In SQLitePCLRaw 3.x the bundle packages register the provider via a
ModuleInitializer, so referencing SQLitePCLRaw.bundle_e_sqlite3 (the
same package used by EFCore.Sqlite.FunctionalTests) is sufficient - no
code change is needed. The package version is already pinned in the
root Directory.Packages.props as SQLitePCLRaw.bundle_e_sqlite3
= $SQLitePCLRawVersion (3.0.3).

The aspnet/Benchmarks benchmarks-ci-01 pipeline has been silently
running zero EF Core measurements (every method reports NA in BDN, but
crank treats BDN's normal exit as success) for roughly two months
since 2026-03-19 / build 2930691.

Verified locally with crank + crank-agent --profile local: before the
fix every method is NA, after the fix all methods report real Mean
and Op/s.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Assets 2
Loading