danielk1977 [Wed, 25 Jun 2008 17:54:53 +0000 (17:54 +0000)]
Change the makefiles so that "make test" now runs the veryquick.test script instead of quick.test. Also modify veryquick.test to reuse the code in quick.test. veryquick.test is now the same as quick.test except that it omits all testing related to malloc and IO error simulation. (CVS 5308)
danielk1977 [Wed, 25 Jun 2008 17:19:00 +0000 (17:19 +0000)]
Remove internal function sqlite3OsDefaultVfs(). The built-in VFS layers now register their VFS implementations by calling sqlite3_vfs_register() from within sqlite3_os_init(). (CVS 5307)
danielk1977 [Wed, 25 Jun 2008 10:34:34 +0000 (10:34 +0000)]
Fix up some details to do with the mem3.c (memsys3) allocator. If the library is compiled with SQLITE_ENABLE_MEMSYS3, the memsys3 allocator can be selected at runtime. (CVS 5303)
drh [Tue, 24 Jun 2008 12:46:30 +0000 (12:46 +0000)]
Fix a problem in sqlite3ExprIsInteger() causing failures on select1-4.9.2.
Other bug fixes in compound-merge. The compound-merge is still disabled
in this check-in using "#if 0" due to additional bugs. (CVS 5295)
drh [Tue, 24 Jun 2008 00:32:35 +0000 (00:32 +0000)]
The compound-select merge optimization is mostly working with this check-in.
But there are still a few problems and so the optimization is disabled by
and "#if 0". This check-in is to synchronize with the other changes happening
in parallel. (CVS 5291)
mihailim [Mon, 23 Jun 2008 21:26:05 +0000 (21:26 +0000)]
Reverted previous checkin (on second thought, changing case could break badly written homegrown parsers such as sometimes encountered in embedded firmware.) (CVS 5289)
mihailim [Mon, 23 Jun 2008 21:18:10 +0000 (21:18 +0000)]
Changed HTML mode output to use lowercase tags making good on the XHTML output promise (the DTDs indeed mandate lowercase) and closing #450. (CVS 5288)
mihailim [Mon, 23 Jun 2008 11:23:14 +0000 (11:23 +0000)]
Fixed wrong type in sqlite3_create_collation16 declaration and definition (UTF-16 string had been passed as const char* instead of const void*) (CVS 5276)
danielk1977 [Mon, 23 Jun 2008 09:50:50 +0000 (09:50 +0000)]
Fix a bug whereby opening a connection to an existing shared-cache caused the cache-size (the value configured by "PRAGMA cache_size") to revert to its default value. (CVS 5274)
drh [Sun, 22 Jun 2008 12:37:57 +0000 (12:37 +0000)]
Fix a bug in the KEYINFO handling within select.c. Change the OP_Move
opcode to take a count and to move multiple registers. Initial code for
the compound-select merge optimization is added but is incomplete
and is commented out. (CVS 5272)
danielk1977 [Sat, 21 Jun 2008 18:07:37 +0000 (18:07 +0000)]
Add test file permutations.test, which runs various other test files with sqlite configured in various ways. This adds a few new tests and replaces test files autovacuum_crash.test, autovacuum_ioerr.test, exclusive3.test, jrnlmode2.test, jrnlmode3.test, jrnlmode4.test, mutex2 and onefile.test. (CVS 5265)
danielk1977 [Sat, 21 Jun 2008 08:12:15 +0000 (08:12 +0000)]
Fix a problem in the test suite that could cause a crash if using a pre-allocated block of memory for pages (the problem was that sqlite3_shutdown() was being called while there were still open database connections). (CVS 5259)
danielk1977 [Fri, 20 Jun 2008 14:59:51 +0000 (14:59 +0000)]
Add a mode to the sqlite3_test_control() interface to register hooks called at the beginning and end of "benign malloc failure" blocks. This allows malloc() failure testing to be done using public APIs only. (CVS 5254)
drh [Thu, 19 Jun 2008 00:16:08 +0000 (00:16 +0000)]
Add some test logic to the new memory allocation subsystem. (Lots more needed.)
The test suite is currently indicating memory leaks, though it is unclear if
this is a true code problem or just an instrumentation problem. (CVS 5240)
drh [Wed, 18 Jun 2008 15:34:09 +0000 (15:34 +0000)]
Make sure aggregate functions can take any number of arguments up to the
limit imposed by SQLITE_LIMIT_FUNCTION_ARGS. Ticket #3179. Modify
the group_concat() function to take an unlimited number of arguments in
order to facilitate testing this behavior. (CVS 5233)
drh [Wed, 18 Jun 2008 13:27:46 +0000 (13:27 +0000)]
Added new configuration options to query the low-level malloc interface
and to provide memory buffers for scratch, page-cache, and heap memory
allocators. (CVS 5231)
drh [Wed, 18 Jun 2008 02:01:07 +0000 (02:01 +0000)]
Remove mem3.c and mem5.c from the amalgamation for the time being, since
they do not currently work. We will add them back later once they are fixed. (CVS 5229)
danielk1977 [Mon, 16 Jun 2008 14:19:57 +0000 (14:19 +0000)]
Fix a problem with the incremental blob API. sqlite3_blob_open() was always reading the data for the leftmost column of the row that the opened blob was stored in. If this column happened to contain a (the) large blob, sqlite would make a large memory allocation to read the data into. Which defeats the purpose of using incremental blobs. (CVS 5222)
drh [Sun, 15 Jun 2008 02:51:47 +0000 (02:51 +0000)]
Continuing work on the new memory allocation subsystem.
Added routines for temporary memory allocation. Right the btree
balance mechanism to only do one temporary allocation at a time. (CVS 5220)
drh [Sat, 14 Jun 2008 16:56:21 +0000 (16:56 +0000)]
Continuing progress on the new memory allocation subsystem. Added the
sqlite3_mem_methods structure for defining new memory allocators at
run-time. (CVS 5219)
drh [Fri, 13 Jun 2008 18:24:27 +0000 (18:24 +0000)]
Progress toward implementation of sqlite3_config() and a rework of the
mutex and memory allocation subsystems. This is an incremental check-in. (CVS 5218)
drh [Thu, 12 Jun 2008 18:05:40 +0000 (18:05 +0000)]
Fix a typo in the date/time function tests. Add additional cases to
the zeroblob tests to make sure sqlite3_bind_zeroblob() does not use
excess memory. (CVS 5216)
drh [Thu, 12 Jun 2008 16:35:38 +0000 (16:35 +0000)]
Convert the date/time functions to work with milliseconds since the
julian epoch internally (instead of days since the epoch) in order to avoid
problems with floating-point roundoff error. The interface is unchanged. (CVS 5215)
drh [Thu, 12 Jun 2008 13:50:00 +0000 (13:50 +0000)]
Avoid unnecessary float->text->float conversions in date/time processing.
This change necessary to reproduce the problem reported by BareFoot. (CVS 5213)
drh [Thu, 12 Jun 2008 12:51:37 +0000 (12:51 +0000)]
Add the ability to disable the "localtime" modifier in the date/time
functions. This might be necessary for systems that do not support
localtime_r() or localtime_s(). (CVS 5212)