Skip to content

Regression in 10.0.1: hard 64-query ceiling per process, "Unspecified error" (0x80004005) afterward #300

Description

@Agies

EntityFrameworkCore.Jet 10.0.1 (OLE DB provider, Microsoft.Jet.OLEDB.4.0) FWTxModel/FWTxModel.csproj
fails every query after the 64th executed within a single process, with ────────────────────────────────────────────────────────────────
System.Data.OleDb.OleDbException (0x80004005): Unspecified error thrown from 30 <PackageReference Include="EntityFrameworkCore.Jet.Data
OleDbConnectionInternal..ctor. This reproduces:

  • Single-threaded, sequentially, no concurrency
  • Reusing one DbContext/connection for all queries (not tied to connection/context count)
  • With plain LINQ queries or raw SQL via DbCommand
  • Forcing GC.Collect() + GC.WaitForPendingFinalize

Confirmed not present in 8.0.0 or 9.0.0 (150/150 queries succeed in an identical minimal repro — single DbContext, OLE DB Services=-2, Jet OLEDB:Database Locking Mode=0). Only 10.0.1 exhibits the ceiling. Given the 10.0.1 changelog mentions "tightens data-layer resource handling around split commands, schema readers, cloned commands, cloned connections, and GUID reads," this is likely a resource (cursor/schema-reader handle) that's being leaked once per query and hits a native provider capacity limit at 64.

Repro: minimal console app, net10.0-windows/x86, referencing EntityFrameworkCore.Jet 10.0.1 + Microsoft.EntityFrameworkCore 10.0.12, one DbContext with a single mapped entity, connection string Provider=Microsoft.Jet.OLEDB.4.0;Data Source=.mdb;Jet OLEDB:Database Locking Mode=0;OLE DB Services=-2, loop running context.Set().Take(5).ToList() 100+ times.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions