On Thu, Aug 18, 2011 at 8:50 AM, Kristoffer Danielsson <
kristoffer.daniels...@live.se> wrote:

>
>
>
>
> I have noticed that certain (complex) select queries return unexpected data
> (missing rows) on my upgraded SQLite databases.My guess is that the
> optimizer makes an erroneous decision on some index (I'm using both
> sqlite_stat1 and sqlite_stat2). Is this a reasonable guess? Is it necessary
> to run the ANALYZE command after upgrading (altering table columns etc) a
> database? Thanks!
>

SQLite should *never* return an incorrect answer because of a failure to
ANALYZE.  All ANALYZE should do is make the answer come back faster.

Note that some non-deterministic queries (such as using a LIMIT without an
ORDER BY) might return different results after ANALYZE because it chooses a
different query plan.  But in cases like this, that is not an error - the
use of LIMIT without an ORDER BY gives an undefined result.

If you find a case where SQLite is giving an incorrect result, please send
us details so that we can track down and fix the problem.



> _______________________________________________
> sqlite-users mailing list
> sqlite-users@sqlite.org
> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
>



-- 
D. Richard Hipp
d...@sqlite.org
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to