Commit Graph

5037 Commits

Author SHA1 Message Date
drh 1e968a0cbf Removed the direct btree tests - part of the ongoing effort to test by
calling only public interfaces.  Modify the sqlite3VdbeRecordCompare
interface to used a pre-parsed second key - resulting in a 13%
performance improvement on speed1p.test. (CVS 4911)

FossilOrigin-Name: 0e1d84f2f456e7680bb667266745b629ddf3605f
2008-03-25 00:22:21 +00:00
drh f84ddc183d Improved documentation of sqlite3_blob_open(). (CVS 4910)
FossilOrigin-Name: 1ed695f560a58786f2a8467c601f281c67034fd4
2008-03-24 12:51:46 +00:00
drh cfc2e7fdda Remove redundant tests from the reparenter in the btree module. (CVS 4909)
FossilOrigin-Name: a807e7184b857414ce203af129ac1adf2012096c
2008-03-23 00:20:36 +00:00
drh f688b2cb06 Bug fix in the newly revised sqllimit1.test script. (CVS 4908)
FossilOrigin-Name: 2a89fb3c3e991b2c02e07b8b86b67b8d80e0360d
2008-03-22 23:59:58 +00:00
drh 45c236d81e Add the speed1p.test script. Like speed1.test except that it tries to take
advantage of prepared statements. (CVS 4907)

FossilOrigin-Name: ece4fb9f7b93dc3e3cb77e40b011d013d0750dcf
2008-03-22 01:08:00 +00:00
drh 3f913576e5 Add the SQLITE_OMIT_DECLTYPE compile-time option. Remove more code when
SQLITE_ENABLE_COLUMN_METADATA is not defined. (CVS 4906)

FossilOrigin-Name: 8ef26646cff9be75c584a9abfcfffcfdb49b3969
2008-03-22 01:07:17 +00:00
drh 3b6f734b44 Defer allocating memory space to hold the array of column values and
names in sqlite3_exec() until there is a need to use the array.  In
the common case where there is no callback, this avoids a malloc() call. (CVS 4905)

FossilOrigin-Name: d8686abcdf9e566571033f2f137142f742df9357
2008-03-21 18:01:14 +00:00
danielk1977 35754aca0d Better integrate the new malloc related instrumentation with the test infrastructure. (CVS 4904)
FossilOrigin-Name: d2140cae39dcced63e3ad5771e52d522ce587c96
2008-03-21 17:29:37 +00:00
drh 2dca868075 Make sure the text result of an aggregate function has the correct
encoding.  Ticket #3009. (CVS 4903)

FossilOrigin-Name: 13e388cecf53d680a79ef29ff4e82e59de8f1264
2008-03-21 17:13:13 +00:00
drh 3088d59e06 Add a completely new testing system for the Bitvec object. The new
testing system uses sqlite3_test_control() instead of unpublished
APIs.  Now provides 100% condition/decision coverage.  Obscure bugs
in Bitvec found and fixed as a result of the enhanced coverage. (CVS 4902)

FossilOrigin-Name: 2498d3ea36ecab6d9c0f04ef1c49d76a7a215a4f
2008-03-21 16:45:47 +00:00
danielk1977 6f332c18d9 Add some more logging to the malloc system used when SQLITE_MEMDEBUG is defined. (CVS 4901)
FossilOrigin-Name: 79738f582fbac87f2d335e0c6b7f53e3054b41ba
2008-03-21 14:22:44 +00:00
drh f47ce56c49 In the sqlite3_limit() interface, take out the feature where zero means
use the hard upper bound.  If an application wants the hard upper bound,
it can set the limit to 0x7fffffff and the bound will be automatically
truncated. (CVS 4900)

FossilOrigin-Name: d6be1f495ec57158f7bcca3e32145a9a8fde723a
2008-03-20 18:00:49 +00:00
drh b1a6c3c1cc Reinstate test cases for the limit tests. The sqlite3_limit() API is now
tested and working. (CVS 4899)

FossilOrigin-Name: 4c4be4c3c8aae97f1d85442b25afba9f0b02c8b3
2008-03-20 16:30:17 +00:00
danielk1977 81a392f7d7 Do not run crash7.test as part of a quick test. (CVS 4898)
FossilOrigin-Name: 53b4a09040341a981b2f33399a1ddcee952ba3ef
2008-03-20 16:26:48 +00:00
drh bb4957f858 Initial implementation of per-connection limits and the sqlite3_limit() API.
The sqllimits1.test script crashes.  SQLITE_LIMIT_PAGE_COUNT and
SQLITE_LIMIT_VDBE_OP are currently ignored. (CVS 4897)

FossilOrigin-Name: 60c77882b2de9f6a45f8bd87c9c6a0cc613f8373
2008-03-20 14:03:29 +00:00
danielk1977 f653d78282 Allow a VACUUM operation to change the page-size in the same way as it can be used to change a database between auto-vacuum and normal mode. (CVS 4896)
FossilOrigin-Name: 871df0e7c36a88f175cfc63797745e52a1b1796b
2008-03-20 11:04:21 +00:00
vapier f219f196f8 stick everything that sqlite links against into Libs.private (CVS 4895)
FossilOrigin-Name: 8b198617f572d35f04d119ba688e0f5c67f81144
2008-03-20 10:44:42 +00:00
danielk1977 67c007bf4b Write the page-size into the first journal-header of each journal file. (CVS 4894)
FossilOrigin-Name: 79f573cc7be89b3dd5540c45ef132b5cedc98e9b
2008-03-20 04:45:49 +00:00
mlcreech 2379706c79 Make out-of-tree builds work as expected when using configure script (CVS 4893)
FossilOrigin-Name: e2d05ea3c3e4a11bc1c0cc4c4403a445b9c2b64d
2008-03-20 02:25:35 +00:00
drh caa639f401 Fix the load-extension mechanism so that tests build with or without it.
This check-in also includes prototypes for the new sqlite3_limit()
interface, but no implementation. (CVS 4892)

FossilOrigin-Name: bee38c2dda50592fef5fedab01311d5486240b95
2008-03-20 00:32:20 +00:00
mlcreech 9323f76141 Fix build whether compiling with or without auto-extension enabled (CVS 4891)
FossilOrigin-Name: 7b9682c65f545b09d410173cf282f7c4f4438097
2008-03-19 23:52:34 +00:00
mlcreech 88ef0908b5 Don't wrongly look for the amalgamation in $(TOP) (CVS 4890)
FossilOrigin-Name: 41d6ca31acbc0bd8555e5487ba3b695db5c9a81a
2008-03-19 23:15:37 +00:00
drh fa4a4b9159 Add a new interface, sqlite3_context_db_handle(), that returns the database
connection pointer for an application-defined function. (CVS 4889)

FossilOrigin-Name: 54c55cae556af5a16c0ce8be1a96d2932db80ad8
2008-03-19 21:45:51 +00:00
drh f39d958829 Undefine the "isView" macro when compiling with SQLITE_OMIT_VIEW so that
the macro does not interfer with subsequent modules in the amalgamation. (CVS 4888)

FossilOrigin-Name: a42caa8f83ce19af1e569c4545ea8b2449152430
2008-03-19 20:42:13 +00:00
drh 8257f0c1da Use the xCurrentTime method of the default VFS instead of stdlib time() to
get the current time when compiling with SQLITE_OMIT_DATETIME_FUNCS. (CVS 4887)

FossilOrigin-Name: 73fbac7cf7b61b23831f62b996fbdd358695b473
2008-03-19 20:18:27 +00:00
drh e5dd20a6ac Update the loadable extension module to include recently added interfaces. (CVS 4886)
FossilOrigin-Name: bf1cecede88d2a21eb4891a343f3c19bb5416263
2008-03-19 19:55:55 +00:00
drh 81cc3548c3 Initialize the MD5 SQL functions from test_func.c instead of using
conditional compilation in tclsqlite.c. (CVS 4885)

FossilOrigin-Name: 801a0e3c9972c1fc9f55a9c55cd0ff19fd79fa37
2008-03-19 19:01:21 +00:00
drh da84ca8de9 Create the test_destructor16() test SQL function to enhance test coverage.
Prior to check-in (4883), the test_destructor() function was sufficient,
but we now need separate functions since the implementation is restricted
to using the published API. (CVS 4884)

FossilOrigin-Name: bb7218657f3b06d810ad710fe64e5c9984aa518c
2008-03-19 16:35:24 +00:00
drh 984bfaa4c7 Move SQL functions used for testing only out of func.c and into a new
test file named test_func.c.  Use sqlite3_auto_extension() to make sure
the test functions appear in every database connection. (CVS 4883)

FossilOrigin-Name: e90c4cc8a89838161f218739bc821126e247498c
2008-03-19 16:08:53 +00:00
drh 2fa1868fb6 Add a new api sqlite3_randomness() for providing access to SQLite's
internal PRNG.  Add sqlite3_test_control() verbs for controlling the PRNG. (CVS 4882)

FossilOrigin-Name: 15110ea02768bfe977a57eccd6b941a36ebd6b32
2008-03-19 14:15:34 +00:00
drh 345331507f When a parse of the sqlite_master table fails, include the name of the
object being parsed as part of the error message. (CVS 4881)

FossilOrigin-Name: 57805b588f6b6d070918102a0ff096ade674279a
2008-03-19 13:03:33 +00:00
drh bb8a279e11 Remove the dependency on the direct btree interface from as many test
scripts as is practical.  Fix a bug in the output limiter of the
integrity_check pragma that came up while making this change. (CVS 4880)

FossilOrigin-Name: 24e769972eb6052b82dc94d20444c186a213e104
2008-03-19 00:21:30 +00:00
drh aa28e1478a Update the documentation to distinguish between protected and unprotected
sqlite3_value objects. (CVS 4879)

FossilOrigin-Name: 074ee55ffd1f0b7bb120a440d8bcf19e249ada96
2008-03-18 13:47:20 +00:00
drh d19744f353 Test script changes that go with the coverage enhancements of the
previous check-in. (CVS 4878)

FossilOrigin-Name: f87ddf83a5d1340652f222972a7d75f4fdbe776b
2008-03-18 13:46:53 +00:00
drh 77db4c05ec Minor test coverage enhancements. (CVS 4877)
FossilOrigin-Name: edd207b9a9df5d73ec34474a4e90fcb592f06cf1
2008-03-18 13:01:38 +00:00
drh 874c5d6a43 Fix a memory leak introduced by the previous bug fix. (CVS 4876)
FossilOrigin-Name: b9c5dce34985f7e6d1b6314ae8674f07d0bf518b
2008-03-18 00:54:22 +00:00
drh 5efaf07099 Add the ability to simulate out-of-memory errors when using the default
memory allocator, mem1.c.  Fix a bug that this enhancement revealed. (CVS 4875)

FossilOrigin-Name: d55a5e1c11ef90534abd2e5f18d06dd4739ade70
2008-03-18 00:07:10 +00:00
drh 0e8ebe5168 Version 3.5.7 (CVS 4874)
FossilOrigin-Name: 9a6583d375a1b922e88eed888e54e51cbc85f400
2008-03-17 19:03:03 +00:00
drh 6c44ea48b8 Fix an uninitialized variable in the Prev and Next opcodes. (CVS 4873)
FossilOrigin-Name: fcf3d0a3d5d3a71155ab0aa5f533da72063d54f0
2008-03-17 17:18:37 +00:00
drh a53b914086 Abandon the OR optimization following a memory allocation failure,
to avoid referencing uninitialized memory. (CVS 4872)

FossilOrigin-Name: 9d2afbb543e1493e1d9c2eb4329143bcb1ceca19
2008-03-17 17:08:33 +00:00
drh 280396906f Detect the failure to zero-terminate a result string due to a malloc
failure. (CVS 4871)

FossilOrigin-Name: 57db14067ff7d519291bebe695dcf991a9462372
2008-03-17 16:54:01 +00:00
drh 7b12a521b9 Label test case bindxfer-1.9 as a misuse test case, since it is one. (CVS 4870)
FossilOrigin-Name: 7b99122632f467cd0c34ad1a91e18fee8833980b
2008-03-17 16:23:26 +00:00
drh 2a3c8ff815 Modify the tableapi.test script so that it works under windows. (CVS 4869)
FossilOrigin-Name: 89e06b4e083e7fd2c053c1cefc0063a5b772d7f8
2008-03-17 15:09:47 +00:00
drh 99b90c3fa9 Put the statement journal in the temp-file directory since that
directory is often on optimized storage such as RAM disk and because
unlike the main journal, the statement journal does not need to
be colocated with the database file. (CVS 4868)

FossilOrigin-Name: 72c40726932695a2cf5c593707d098c8fb6e8875
2008-03-17 13:50:58 +00:00
danielk1977 39359dc020 Return an error when an xBestIndex() method indicates that it intends to use the value of an unusable constraint. Related to #2998. (CVS 4867)
FossilOrigin-Name: ffd470279540b1b8e3fdce6eb14001bae489b16d
2008-03-17 09:36:44 +00:00
drh 17fe6c1d32 Skip tests that require setting detailed unix permissions on files when
running on filesystems such as AFP that do not support that capability. (CVS 4866)

FossilOrigin-Name: 5589b9d395fb8267a124d56dd5d7987e57505e3d
2008-03-15 14:53:04 +00:00
drh 175cd71bab Add tests to make sure the busy handler resets. (CVS 4865)
FossilOrigin-Name: 5e4df441815ed7d02e9ad8ee2e1c2f937ee675d7
2008-03-15 02:09:21 +00:00
drh befdf83f58 Reset the busy callback iteration counter at the beginning of each
lock test loop. (CVS 4864)

FossilOrigin-Name: 66777f048195e4242905c40f790ed7360af7028b
2008-03-14 19:33:05 +00:00
drh 3099e1acab Change an instance of intptr_t to sqlite3_intptr_t. (CVS 4863)
FossilOrigin-Name: 6db7186c304ed5e06afb207ce11ebc2a47e491b0
2008-03-14 19:17:54 +00:00
mlcreech dda5b68cb3 Revise Bitvec struct sizing to prevent assertion failure on 64-bit systems (CVS 4862)
FossilOrigin-Name: a3c12dbe95c8fb93f5b9006bf5d2c5b933fc5e87
2008-03-14 13:02:08 +00:00