System.Data.SQLite
View Ticket
Not logged in
Ticket UUID: 3289ab045023f78a6553d7113c202413838ea122
Title: Bad performance of query generation for Contains
Status: Deferred Type: Performance
Severity: Important Priority: Medium
Subsystem: LINQ Resolution: Open
Last Modified: 2015-05-16 23:16:38
Version Found In: 1.0.93
User Comments:
anonymous added on 2015-04-19 18:03:20:
The SQL query generation for Contains() is very bad for large arrays (it is actually much slower than the query itself). The problem is described here:

https://entityframework.codeplex.com/workitem/245

Entity Framework 6.0 added support for explicit generation of DbInExpression. But as SQLite EF provider does not handle DbInExpression, the feature is not used. Instead, an OR-subtree is back-translated to IN again.

Would it be possible to add proper support for DbInExpression to reduce the query generation time? It should not be too difficult (as far as I can see). 

Thank you.