Commit Graph

10251 Commits

Author SHA1 Message Date
mistachkin 60e0807801 Add SQLITE_DISABLE_INTRINSIC define to disable use of intrinsic functions (e.g. for certain older compilers and/or platforms).
FossilOrigin-Name: f0075d735a76ce326619b6ba7f0d556e492f1c41
2015-07-29 21:47:39 +00:00
drh 3bc3709e7b Restore an undocumented side-effect of PRAGMA cache_size: it forces the
database schema to be parsed.  Also increase the version number to 3.8.11.1.

FossilOrigin-Name: e4628de3ce2b556fb46f0eb6eaac4809d17738f0
2015-07-29 15:22:49 +00:00
drh 8ea60e35c2 The "PRAGMA cache_size" reads the database schema, as it has down in all prior
versions of SQLite.  This side-effect of cache_size is undocumented, but 
apparently it does get used and its absence from 3.8.11 was causing problems.

FossilOrigin-Name: 4489722a6b560355ef13f091e5c9dcf0b00072f0
2015-07-29 14:10:43 +00:00
drh 41b9ca2519 Fix the xfer optimization for WITHOUT ROWID tables so that it correctly
updates the change count returned by sqlite3_changes().

FossilOrigin-Name: eff43715d1a3a9ce3fe5da194dbb76ec0c06e13c
2015-07-28 18:53:37 +00:00
drh 33a3c75999 Clarification to the documentation for sqlite3_result_zeroblob64(). No
changes to code.

FossilOrigin-Name: c98175e900cdda0c81fb559fed4cc5f27c34e368
2015-07-27 19:57:13 +00:00
mistachkin 9895f73526 For Windows CE, a different header is required for the byteswap intrinsics.
FossilOrigin-Name: 2d572b8cdc67679cc95e69677a87e7b4a82f6c2d
2015-07-24 20:43:18 +00:00
dan 80c0302228 Add the sqlite3_bind_zeroblob64() API.
FossilOrigin-Name: 1997ee548b2e569a39e73319b661c1a78dfe5dae
2015-07-24 17:36:34 +00:00
drh 6bacdc21ae Fix compiler warnings. Get the new sqlite3_result_zeroblob64() working
on loadable extensions.

FossilOrigin-Name: f8991e6f726485301c80d2dbb05e7d5c0d283b5d
2015-07-24 17:14:03 +00:00
dan a4d5ae8fa2 Add the sqlite3_result_zeroblob64() API. Use it in the SQL zeroblob() function.
FossilOrigin-Name: c6445b9fb4d7d1a8479436d7d183bad754a01615
2015-07-24 16:24:37 +00:00
drh 53e66c3cda More robust handling of zeroblob() with oversized arguments. Fix fuzzcheck
so that it can be run with limited heap memory.

FossilOrigin-Name: 4e3e516a42059c97f42a7eb59bdf5cded0ff843a
2015-07-24 15:49:23 +00:00
dan 03bc525a51 Modify a few test scripts to avoid leaving the sqlite3Config structure in a non-default state.
FossilOrigin-Name: 562687d9f56bf4bb0f5f07f97cbbb7649c81faf8
2015-07-24 14:17:17 +00:00
drh cfb8f8d6a9 Change the name of the OTA extension to RBU: Resumable Bulk Update.
FossilOrigin-Name: 017c5019e1ce042025d4f327e50ec50af49f9fa4
2015-07-23 20:44:49 +00:00
drh 7877d9afca When SQLITE_OMIT_LOOKASIDE is set, do not allocate any lookaside memory since
it will never be used.

FossilOrigin-Name: 0ffd499f2374f2b191080b9952acfed56daf3335
2015-07-23 17:16:27 +00:00
drh d3e3f0b46e The sqlite3ExprCodeGetColumn() is not guaranteed to put the result in the
register requested.   Fix the skip-scan code generator for WITHOUT ROWID
tables so that it always checks the register and copies the result if it
lands in the wrong register.  Fix for ticket [8fd39115d8f46ece70e7d4b3].

FossilOrigin-Name: 793e206f9032d9205bdb3f447b136bed9a25fa22
2015-07-23 16:39:33 +00:00
mistachkin 6b67a8ae03 Fix harmless compiler warning in MSVC 2015.
FossilOrigin-Name: 01c8b9ccfa0f336dfead7c004de3de571753f707
2015-07-21 19:22:35 +00:00
drh f6bff3f5d6 Avoid a harmless compiler warning.
FossilOrigin-Name: 2288842b8f191ff05a157db7f77af867bfa83c4f
2015-07-17 01:16:10 +00:00
drh 939d4bcd77 Fix harmless compiler warnings.
FossilOrigin-Name: 9a592cf91c74b369bacf6a0e69d45f3e73dfdbce
2015-07-16 18:37:53 +00:00
drh 957026ac78 Defer the bulk pcache1 memory allocation until the first page allocation
request.  Limit the size of the pcache1 bulk allocation to the cache_size
setting.  Deallocate the bulk allocation on a sqlite3_db_release_memory()
request, if the bulk allocation is completely unused.

FossilOrigin-Name: b79a4affe44bd0c8e155cae19f3f62c715684cd6
2015-07-16 18:18:19 +00:00
mistachkin 89b31d73a6 Fix compilation issues with SQLITE_OMIT_COMPOUND_SELECT defined.
FossilOrigin-Name: 9c39d4644530ccc532f4ff26464106c6da43269a
2015-07-16 17:29:27 +00:00
drh 3e9dd938dd Enable memory-mapped I/O on FreeBSD and DragonFly.
FossilOrigin-Name: 2cdd647951ff5dca53576bb8be6dd6310a557571
2015-07-15 23:15:59 +00:00
drh f4fa0b8073 Fix some harmless compiler warnings.
FossilOrigin-Name: 110cd84f5e842c4dcd9b9398cea211e25f36b3aa
2015-07-15 18:35:54 +00:00
drh 618ee61e04 Attempt to fix harmless warnings generated by GCC and Clang runtime analyzers.
FossilOrigin-Name: b522c95ddcd7046dca756f4d1a1e90c34dbcab64
2015-07-15 18:04:48 +00:00
drh a8dbd52abb Amplify the comment on renderLogMsg() that explains the problems associated
with calling sqlite3_log() from deep within the memory allocator.

FossilOrigin-Name: a73d7128fbca8dde5e90bd46ee915e39ae07dd1f
2015-07-14 22:43:37 +00:00
mistachkin 65a88fcb42 Skip trying to include 'intrin.h' when compiling for WinCE with MSVC.
FossilOrigin-Name: 6db90ca2b4ac806b42532072ebe6b2a4a7b9713d
2015-07-14 21:56:17 +00:00
mistachkin 532f179cab Fix some harmless compiler warnings.
FossilOrigin-Name: 3de030c904d125ccf41fa1929646b8a002b5341b
2015-07-14 17:18:05 +00:00
drh 201e0c68f7 Always invoke the profile callback even if the statement does not run to
completion.

FossilOrigin-Name: 202479aa0a62067343e724487960b8a039e2e978
2015-07-14 14:48:50 +00:00
drh 104a25a034 Enhance the pcache1 page cache so that it tries to allocate a block of
SQLITE_DEFAULT_PCACHE_INITSZ pages from malloc() on startup, and uses those
preallocated pages when possible rather than going to malloc() for each
individual page.  About a 5% performance increase for some workloads.

FossilOrigin-Name: 5348ffc3fda5168c1e9e14aa88b0c6aedbda7c94
2015-07-08 16:22:42 +00:00
drh 7b341e6f99 Comment fix. No changes to code.
FossilOrigin-Name: c1e2ed0ef4d3436d19d3203c5fb553caac53659e
2015-07-08 14:13:44 +00:00
drh 52d9f40b7d Do not do the bulk pcache1 allocations if SQLITE_CONFIG_PAGECACHE specifies
a global page cache buffer.

FossilOrigin-Name: 75d98dae676996a05e97b09b19e34463e8f30d51
2015-07-08 13:40:50 +00:00
drh 4698136594 Early detection of file corruption in a debugging routine, before the invalid
data can cause problems.

FossilOrigin-Name: b27a47fef995f0ab2516e6ca779711cab1f50fb9
2015-07-08 12:25:38 +00:00
drh e56d43010d Avoid left-shifting bits into the sign of a signed integer, as such behavior
is technically undefined.

FossilOrigin-Name: 9417b4021b779876dcb3b9be636f01f4055eb54e
2015-07-08 01:22:52 +00:00
drh 4297c7c4be Add a compile-time constant for configuring the default pagecache setup.
FossilOrigin-Name: ad5fdfbac85682f0f0dee62e1086f40026a58be2
2015-07-07 21:14:42 +00:00
drh fd5ae9649c No need to test sqlite3GlobalConfig.bCoreMutex when SQLITE_THREADSAFE==0.
FossilOrigin-Name: 26db0fee06947d75621237a641b9652b312b3b37
2015-07-07 15:14:16 +00:00
drh c54357cc2a Simplify the page recycling condition in pcache1. Fix test cases to work
with the latest changes.

FossilOrigin-Name: 5b60df5503f61922326b3e10e94aa197b17afe4b
2015-07-07 14:06:18 +00:00
drh db7ae89d5b A unified cache is now only used for SQLITE_ENABLE_MEMORY_MANAGEMENT, or if
SQLITE_CONFIG_PAGECACHE defines a shared start-time page cache buffer and the
application is single-threaded.

FossilOrigin-Name: d5ff1d69054d51a55eff6e1979971822db7f8f30
2015-07-06 20:57:22 +00:00
drh ee70a84ea7 Enhance separate pcache1 to allocate a block of pages from heap on startup,
if possible, for a 5.2% performance improvement.

FossilOrigin-Name: aa7341c8736732a0a59f6688cc34e78be02a7bfc
2015-07-06 18:54:52 +00:00
drh b63ce02f57 Do not allow recursive CTEs that use aggregate queries in the recursive part.
FossilOrigin-Name: 6d2999afbc25b9c238e4028f637c10eaaf0ec75e
2015-07-05 22:15:10 +00:00
drh 01c5c00c12 Preserve the number of requested PAGECACHE pages even if the memory pointer
or size is zero.  Enhance the pcache1.c header comment to explain the memory
layout of a page cache line.

FossilOrigin-Name: dacb2a615ce1c0573baf4518000454038745cf2a
2015-07-04 18:15:04 +00:00
drh 72e191ed71 Do not preserve the btreeInitPage() results in PRAGMA integrity_check if
there were cell sizing errors because PRAGMA cell_size_check was turned off
during the btreeInitPage() call.

FossilOrigin-Name: 743bf1f184be316971f2e9c651bcf573bde8654a
2015-07-04 11:14:20 +00:00
mistachkin 74db356726 Correction to check-in [1025873fdf], tighten up the number of static test mutexes.
FossilOrigin-Name: 4e515897af97cb3a4158bcc34318992e8dcee77a
2015-07-03 23:29:55 +00:00
mistachkin 28ae577a3d Enhance mutex testing to include APP and VFS static mutexes.
FossilOrigin-Name: 1025873fdfd9e7e53094c48af1a79c60ae50ae97
2015-07-03 23:11:36 +00:00
mistachkin 93de653844 Add static mutexes for use by the built-in / third-party VFSs and use the built-in VFS mutex where appropriate.
FossilOrigin-Name: b202e2a1d73d104d795d2252b1c6f61d65bfb295
2015-07-03 21:38:09 +00:00
mistachkin f156c9b684 Enable use of the __builtin_bswap32() only with GCC 4.3 and higher.
FossilOrigin-Name: 030f60a7ba171650ce8c0ac32dc166eab80aca32
2015-07-03 17:54:49 +00:00
drh d2dc87f6d5 When doing coverage analysis of a btree page for pragma integrity_check,
make the first entry (that covers the header, cell index, and gap) implied,
for a performance boost and size reduction.

FossilOrigin-Name: e53d497c2d2fbc5014b39f5624b52ce207800698
2015-07-02 19:47:08 +00:00
mistachkin c29cbb0bec Fix harmless compiler warnings and one macro VVA_ONLY macro usage issue.
FossilOrigin-Name: bcc8a75509aafda61feb6dcc074668c79611a662
2015-07-02 16:52:01 +00:00
drh 1910def351 Fix a (harmless) shadowed local variable definition in the integrity_check
logic.

FossilOrigin-Name: 3a26a919fd5550e5a0053a48cb93a27bb95cc916
2015-07-02 16:29:56 +00:00
drh cbc6b71f39 Smaller and faster PRAGMA integrity_check that also does a better job of
detecting errors.  Some output text describing discovered file corruption
has changed for clarity.

FossilOrigin-Name: 251a7590ff4f65f59a1c871892533e4e2c544515
2015-07-02 16:17:30 +00:00
drh 14681b739b Avoid create a stack from in sqlite3BackupUpdate() in the common case where
the first argument is NULL.

FossilOrigin-Name: 2a897b9e94acaf1fd91e9f8e94fa52e01694f011
2015-07-01 19:59:36 +00:00
drh e05b3f8f0b Simplification of PRAGMA integrity_check logic. Make sure that the depth
of the right-most subtree is correct.  Size reduction and performance increase,
with no change in output.

FossilOrigin-Name: 550705fcb64e7ad637686e47cabe2621d65851bf
2015-07-01 17:53:49 +00:00
drh 94a3115daa Fix some harmless compiler warnings.
FossilOrigin-Name: 307195c8709d7fd2a642baa8011eb0c88cfdc0ac
2015-07-01 04:08:40 +00:00