System.Data.SQLite

Login
This project makes use of Eagle, provided by Mistachkin Systems.
Eagle: Secure Software Automation
2015-01-22
18:38 Closed ticket [56f511d268]: SQLiteIndex Passed to SQLiteModule.BestIndex Contains null SQLiteIndexOutputs SQLiteIndexContraintUsage plus 4 other changes artifact: 51e79c8326 user: mistachkin
18:35
Make sure SQLiteIndexOutputs.ConstraintUsages instances are created prior to calling ISQLiteManagedModule.BestIndex. Fix for [56f511d268]. check-in: c927246f90 user: mistachkin tags: trunk
14:56 Verified ticket [56f511d268]: SQLiteIndex Passed to SQLiteModule.BestIndex Contains null SQLiteIndexOutputs SQLiteIndexContraintUsage plus 7 other changes artifact: 0e0f195fb5 user: mistachkin
02:11 New ticket [56f511d268]. artifact: c1ec467351 user: anonymous

Ticket Hash: 56f511d26874979eaaccc53bbc46e56beb5e1fe3
Title: SQLiteIndex Passed to SQLiteModule.BestIndex Contains null SQLiteIndexOutputs SQLiteIndexContraintUsage
Status: Closed Type: Code_Defect
Severity: Minor Priority: Blocker
Subsystem: Virtual_Table Resolution: Fixed
Last Modified: 2015-01-22 18:38:43
Version Found In: 1.0.94.0
User Comments:
anonymous added on 2015-01-22 02:11:43:
For a virtual table implementation, when SQLiteModule.BestIndex is invoked for a query with a where clause, the SQLiteIndexConstraintUsages array of SQLiteIndexOutputs of the SQLiteIndex argument contains null entities.  Specifically:

  index.Outputs.ConstraintUsages[i] is null (where i is less than index.Outputs.ConstaintUsages.Length)

All constructors of SQLiteIndexConstraintUsages are internal, so there isn't any way to allocate an instance within .BestIndex.  There isn't anyway to pass constaints to .FilterBy without being able to set SQLiteIndexConstraintUsages.

I reviewed code in the latest trunk for SQLiteModule.cs and SQLiteIndex.FromIntPtr does not update Outputs.ConstraintUsages like it does for Inputs.Constraints and Inputs.OrderBys.

mistachkin added on 2015-01-22 14:56:30:
Thanks for the report.

This will be fixed in the upcoming 1.0.95.0 release, due out soon.

mistachkin added on 2015-01-22 18:38:43:
Fixed on trunk via check-in [c927246f90].