Skip to content

Give MappingQueryFbFixture its own test store. - #1297

Open
niekschoemaker wants to merge 1 commit into
FirebirdSQL:masterfrom
niekschoemaker:fix-mappingquery-shared-northwind
Open

niekschoemaker wants to merge 1 commit into
FirebirdSQL:masterfrom
niekschoemaker:fix-mappingquery-shared-northwind

Conversation

@niekschoemaker

@niekschoemaker niekschoemaker commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

MappingQueryFixtureBase uses the "Northwind" store name with a reduced model. FbTestStore creates a shared store from the model of the first fixture that uses it, so whenever MappingQueryFbTest happened to run before the Northwind tests, EFCore_Northwind.fdb was created without e.g. Products and Customers.City and every Northwind test failed with "Column unknown"/"Table unknown".

I noticed some tests randomly hang/fail, so decided to let AI dig through the enormous log files to figure out if there's any pattern that could cause the flaky tests, and it found that whenever MappingQueryFbTest runs before the Northwind tests all the northwind tests would fail.

The tests were writen for SQL Server which uses a script to generate the database, so SQL Server doesn't run into this issue, but since this provider use EnsureCreatedAsync the tests would fail whenever MappingQuery runs before the Northwind tests. So with some luck this should fix the random test failures and hangs.

MappingQueryFixtureBase uses the "Northwind" store name with a reduced model. FbTestStore creates a shared store
from the model of the first fixture that uses it, so whenever MappingQueryFbTest happened to run before the
Northwind tests, EFCore_Northwind.fdb was created without e.g. Products and Customers.City and every Northwind
test failed with "Column unknown"/"Table unknown".

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@niekschoemaker
niekschoemaker marked this pull request as ready for review November 4, 2026 15:26
@niekschoemaker

niekschoemaker commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor Author

This still doesn't explain why it hangs, it does explain why it fails, but maybe the failure is also what causes the hang, but that's something that time will tell, as flaky tests are quite difficult to test.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant