SQLite version 3.8.2 is now available on the SQLite website
http://www.sqlite.org/
SQLite version 3.8.2 is a regularly scheduled maintenance release. Upgrading
from the previous release is optional.
Version 3.8.2 adds support for WITHOUT ROWID tables. This is a significant
extension to SQLite. Database files that contain WITHOUT ROWID tables are not
readable or writable by prior versions of SQLite, however databases that do not
use WITHOUT ROWID tables are fully backwards and forwards compatible.
The 3.8.2 release contains a potentially incompatible change. In all prior
versions of SQLite, a cast from a very large positive floating point number
into an integer resulted in the most negative integer. In other words,
CAST(+99.9e99 to INT) would yield -9223372036854775808. This behavior came
about because it is what x86/x64 hardware does for the equivalent cast in the C
language. But the behavior is bizarre. And so it has been changed effective
with this release so that a cast from a floating point number into an integer
returns the integer between the floating point value and zero that is closest
to the floating point value. Hence, CAST(+99.9e99 to INT) now returns
+9223372036854775807. Since routines like sqlite3_column_int64() do an implicit
cast if the value being accessed is really a floating point number, they are
also affected by this change.
Besides the two changes mentioned above, the 3.8.2 release also includes a
number of performance enhancements. The skip-scan optimization is now available
for databases that have been processed by ANALYZE. Constant SQL functions are
now factored out of inner loops, which can result in a significant speedup for
queries that contain WHERE clause terms like "date>datetime('now','-2 days')".
And various high-runner internal routines have been refactored for reduced CPU
load.
--
D. Richard Hipp
[email protected]
_______________________________________________
sqlite-announce mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-announce