Commit Graph

4844 Commits

Author SHA1 Message Date
drh
995ae279b3 Comment change on the previous check-in. No changes to code. (CVS 4918)
FossilOrigin-Name: 72ae456239eb9f75b744f6733c4441b380bd1be1
2008-03-26 12:50:14 +00:00
drh
ad27e76110 Make sure an imbalance in the number of columns on a compound SELECT is
detected and reported as an error before it can cause an assertion fault
or array-bounds overflow in the code generator.
Oops: part of the fix for ticket #3015 got included with this
check-in by mistake. (CVS 4917)

FossilOrigin-Name: 50de87dc808820a70d3a99277f532e418a2f97e2
2008-03-26 12:46:23 +00:00
drh
e14006d0de Modify the {quote: IdxDelete} opcode so that it takes an array of registers rather
than a record formed using {quote: MakeRecord.}  This avoids a needless packing
and unpacking of the record to be deleted. (CVS 4916)

FossilOrigin-Name: ee381b43563e1b0637ee74389d076dff77deddf9
2008-03-25 17:23:32 +00:00
danielk1977
4e1ddde370 Test string values passed to bind_text() and result_text() for a nul-terminator. (CVS 4915)
FossilOrigin-Name: 24c3ebc0c5c53c234516d16dce761d713fb29578
2008-03-25 16:16:29 +00:00
danielk1977
52ae7246c6 Have each {quote: BtShared} structure hang on to a buffer of just under page-size bytes for temporary use. This reduces the number of calls to malloc(). (CVS 4914)
FossilOrigin-Name: fe1bc0f3b7cd87cd65f7d03b91095b59788a6f8d
2008-03-25 14:24:56 +00:00
danielk1977
6507ecb376 Fix for memory leak in malloc3.test. (CVS 4913)
FossilOrigin-Name: ef0e40e814b3d3a00721f8ca39bac0db1be24347
2008-03-25 09:56:44 +00:00
danielk1977
cd3e8f7ce9 Use a vdbe memory cell to allocate the space required for vdbe cursors. (CVS 4912)
FossilOrigin-Name: 047153648155654b0cd70b811935209d2e21776c
2008-03-25 09:47:35 +00:00
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