Thanks Jay and Roger, for your explanations and ideas. I did't think of passing my own data structure to xFilter using idxStr before, but in my case that seems to be the easiest way.
In xBestIndex I'm allocating enough memory to hold information about all usable constraints, using sqlite3_malloc. Then I'm packing a struct containing iColumn and op into that memory for each usable constraint and I'm using idxinfo->aConstraintUsage[x].argvIndex to get the right-hand side value for each constraint in the same order as the constraint information in xFilter. Finally I'm setting needToFreeIdxStr to make sure all memory is freed. It seems to work fine that way. Regards, Sören _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users