1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-14 00:22:38 +03:00
Commit Graph

2399 Commits

Author SHA1 Message Date
drh
a2baf3a2e5 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)

FossilOrigin-Name: 70c6739f4e84b3433e14960346b54d0e9e0bb9c6
2008-06-18 15:34:09 +00:00
danielk1977
1a9ed0b27a Add some test infrastructure and cases for the new mutex api. (CVS 5230)
FossilOrigin-Name: 262baee9952b28afe5dc77eb7365ebb11a480906
2008-06-18 09:45:56 +00:00
danielk1977
dfdf9844aa Fix a recently introduced resource leak in test file incrblob2.test (forgot to close a blob handle). (CVS 5223)
FossilOrigin-Name: 88e1c6092e48c860950d3437f264785243bb67ed
2008-06-16 14:36:01 +00:00
danielk1977
99e925da51 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)
FossilOrigin-Name: 1b9478da2f421c1270e76297324fff8037d2f231
2008-06-16 14:19:57 +00:00
danielk1977
fce96308b1 Add a test to verify that IN(...) WHERE clause terms are not handled by virtual table implemetations. (CVS 5221)
FossilOrigin-Name: 85483c8fb3b45281ce07e84349841fc80e560b1f
2008-06-16 06:31:34 +00:00
drh
40257ffd0a Progress toward implementation of sqlite3_config() and a rework of the
mutex and memory allocation subsystems.  This is an incremental check-in. (CVS 5218)

FossilOrigin-Name: a03c5af115889f477e17187a198a7d2d40bc76bf
2008-06-13 18:24:27 +00:00
drh
655194d6ae Enhance zeroblob tests to use the sqlite3_memory_highwater in order to
double-check that no large allocations are occurring. (CVS 5217)

FossilOrigin-Name: e93079be83a9df7328d9b910fcbdb762be7ec815
2008-06-12 18:17:40 +00:00
drh
c91d86c95a 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)

FossilOrigin-Name: c1006fb1c817bc0b7fada873edb772abbf972012
2008-06-12 18:05:40 +00:00
drh
85f477a141 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)

FossilOrigin-Name: ed35f8a98323dadb64b423615287fb24ea262ffb
2008-06-12 16:35:38 +00:00
danielk1977
5e982b1c38 Add another test to incrblob2.test. This test failed to reveal any new bugs. (CVS 5214)
FossilOrigin-Name: 20d8ea45afcddf22632c3de984147826d0616d3f
2008-06-12 14:42:06 +00:00
shane
f1aaaa4092 Added additional testcases for julianday calculations with midnight boundary for UTC time. (CVS 5209)
FossilOrigin-Name: edd2cb00ae606858d8ae138c69eee7821b8cd6ea
2008-06-12 05:16:14 +00:00
drh
9e855dac4f Adjust the error-message text in corrupt7.test. (CVS 5205)
FossilOrigin-Name: 4a77ff5b588f4c83959591c208a8b20224b75a66
2008-06-11 18:56:42 +00:00
drh
f3840b0645 Add a test case for the database corruption in the form of cell offsets
out of range in an otherwise valid btree page. (CVS 5202)

FossilOrigin-Name: c569a6cf664e9a8095f616327719392fb8186d37
2008-06-11 18:01:21 +00:00
danielk1977
3588ceb868 Invalidate sqlite3_blob* handles whenever an SQL statement is used to delete or modify the rows containing the open blob. Previously, modifying the table containing the open blob in any way invalidated the handle. This was too restrictive. (CVS 5199)
FossilOrigin-Name: e339c91f8718482ce74fc53781091db95e69d4c3
2008-06-10 17:30:26 +00:00
danielk1977
55edca5c17 Add test file incrblob2.test to test opening two blob handles on a single database blob. (CVS 5196)
FossilOrigin-Name: c1d877feb530b5cdaad55da3dbbb7c2596a10c49
2008-06-09 15:51:26 +00:00
danielk1977
ad0132dff1 Change the signature of sqlite3PagerPagecount() so that it can return an error code. (CVS 5195)
FossilOrigin-Name: e9f01c01866d302d81bf9ebc484ea6351cbc0f60
2008-06-07 08:58:22 +00:00
danielk1977
8162054b44 Do not call xSync() from zeroJournalHdr() if the Pager.noSync flag is set (i.e. for temp files). (CVS 5194)
FossilOrigin-Name: 9f5cbe29226151113e4565fcf8170317afe1b8c6
2008-06-07 05:19:37 +00:00
danielk1977
17b90b5316 Remove the xGetTempname() method from the vfs structure. Temp files are now opened by passing a NULL pointer as the filename to xOpen(). (CVS 5190)
FossilOrigin-Name: 5173b3e816c7eb711cd21a9068bbafb9ebb7cff1
2008-06-06 11:11:25 +00:00
danielk1977
861f74563d Modify the signatures of the sqlite3_vfs.xAccess and sqlite3_vfs.xCheckReservedLock functions. (CVS 5188)
FossilOrigin-Name: 4226ac54beea1b58de8ab7b9d768d999f50438a6
2008-06-05 11:39:11 +00:00
danielk1977
b53e496095 Add "pragma journal_size_limit", used to limit the space consumed by persistent journal files left in the file-system after a transaction has concluded in exclusive (or journal_mode=persist) mode. (CVS 5185)
FossilOrigin-Name: 5c59f469d0321c6a2e702ca2c61db012f63aeecc
2008-06-04 06:45:59 +00:00
danielk1977
53a4ddf7c4 Ensure that vacuum3.test closes all opened database connections. Fix for #3157. (CVS 5184)
FossilOrigin-Name: 654e3b3de8ddeba3e31e9677ec4086e9f73c3598
2008-06-03 07:34:09 +00:00
drh
c9ded4c62e When initializing the sqlite_sequence entry for an AUTOINCREMENT table,
make sure the value is an reasonable integer even if the initial insert
failed.  Ticket #3148. (CVS 5175)

FossilOrigin-Name: 7e6847852d4517b1d14bebb8f0ae4d938b0b6f6d
2008-05-29 03:20:59 +00:00
danielk1977
7dc89e6514 Add another test case to vacuum3.test. (CVS 5168)
FossilOrigin-Name: d895e85e2f9b595e58562d57226404f72db89a60
2008-05-28 16:00:43 +00:00
danielk1977
b388c41552 Add a test to vacuum3.test to try to trick sqlite into using the wrong database page-size. Turns out there was no problem. (CVS 5167)
FossilOrigin-Name: 281589a22fa481b1dfcae69fc124458d240a0ae1
2008-05-28 14:08:17 +00:00
drh
02a50b709c Fix the LIKE query optimizer so that it works with LIKE patterns
ending in '@%' on NOCASE columns.  Ticket #3139. (CVS 5158)

FossilOrigin-Name: 33548744369643cc8843b74ad1fc1b7d5988d7a4
2008-05-26 18:33:40 +00:00
drh
4837f53121 Add a test case of preparing a statement with an nBytes parameter of 0
and where the previous byte of the string is zero.  Ticket #3134. (CVS 5156)

FossilOrigin-Name: 846a69acb59403438696000b4ffd588ab42b2f95
2008-05-23 14:49:49 +00:00
danielk1977
131c8bc0c2 Ensure that the db.mallocFailed flag is cleared before sqlite3_errmsg16() returns. (CVS 5154)
FossilOrigin-Name: 0d47653a3c39b7cd41c7e6edd8c4b4543658412d
2008-05-22 13:56:17 +00:00
shane
05eaf73c8c Added more DST boundary checks for 2006 and 2007. Added check for suspect Windows DST implementations and warning about them. Ticket #2322. (CVS 5147)
FossilOrigin-Name: 14226ff0a7af7b39a1089a17eeb5bbb8d09d778d
2008-05-20 14:01:59 +00:00
shane
facbc288e3 Updated test case for Windows to get around problems in ticket #3129. (CVS 5146)
FossilOrigin-Name: 2faf69ca1da43f8083b96675a4886648f10177d8
2008-05-20 13:17:28 +00:00
danielk1977
71aa7fff2d Do not attempt to write a master journal name to the (non-existent) journal file in "no-journal" mode. Fix for #3127. (CVS 5145)
FossilOrigin-Name: ffd4e50ab9b14fb7b686681c5e7a37b8355bbfca
2008-05-20 07:05:09 +00:00
shane
cf77a45a10 SQLite stores native file names and paths for the database file. Under Windows, (file normalize test.db) is expanded using UNIX type path separators which TCL recognizes interchangeably. However, this means that the path reported by sqlite3_shared_cache_report doesn't match which causes the test case to fail. Made minor change to test case to hopefully correct this on all platforms. (CVS 5143)
FossilOrigin-Name: 5ef61701398ce75e32cfaea2eacf2c3e80832ca0
2008-05-19 20:11:39 +00:00
shane
8ef4263135 Added test cases for corrupt 2-10 byte SerialTypeLen values. (CVS 5140)
FossilOrigin-Name: 97ed2dd1dc9d8e8f837914277c080160d319591b
2008-05-19 15:37:10 +00:00
danielk1977
2d1a8d2fe6 Disable the column cache when coding values that will be passed to the xFilter() method of a virtual table, in case the xFilter() implementation modifies the type or encoding of the value. Ticket #3121. (CVS 5139)
FossilOrigin-Name: ecbc0d5deddc0ca0d1d2649e0134ee392266027e
2008-05-16 15:40:40 +00:00
danielk1977
59a93791ce Add the "page_count" pragma. Returns a single integer - the number of pages in the specified database file. (CVS 5135)
FossilOrigin-Name: eb6985e69ce2a5e5e7361f6226d1cfc547fd441d
2008-05-15 17:48:20 +00:00
danielk1977
dad31b5e11 If a pager is already in the error-state when CommitPhaseOne() is called, exit early. (CVS 5134)
FossilOrigin-Name: 443cf1056c73ae89d0efcc7a462455c078b3a4a8
2008-05-15 11:08:07 +00:00
danielk1977
28bbd22307 Fix a test script bug - not all database handles were being closed by ioerr5.test. (CVS 5133)
FossilOrigin-Name: 47652e7b169626e5f3d95f29e867a2e8f68c5025
2008-05-15 09:07:55 +00:00
danielk1977
c41cc395c5 Do not write pages to disk to free memory after an IO error occurs. (CVS 5132)
FossilOrigin-Name: 10ea8287d090ae610416b4754c0838f13b51fd78
2008-05-15 08:34:54 +00:00
shane
d3638aef0b On instruction from DRH, only do malloc failure tests for O/S ops on non-Windows systems. Better test fixture code will be introduced in 3.6.0 to add this coverage back in for Windows. (CVS 5130)
FossilOrigin-Name: e4aab150042bd22868ab02645151cb69a1c02ba0
2008-05-13 19:41:53 +00:00
drh
4873d5f614 Make the benign-fault setting recursive. Make all malloc failures
during a rollback benign since there is nothing we can do about them. (CVS 5128)

FossilOrigin-Name: a9d1d931358637a6f039723a053098f65530de4b
2008-05-13 13:27:33 +00:00
drh
d138c0168f Update the pager so that it does not try to commit a transaction if there
have been no changes to the database. (CVS 5127)

FossilOrigin-Name: f1ed3689239098e0630e8d61f52971bcdf2801b6
2008-05-13 00:58:18 +00:00
danielk1977
47cd39c9d2 Temporarily disable extended IO error code tests. (CVS 5123)
FossilOrigin-Name: f204df3c3161ebe4f2c581715d708d0f35635c08
2008-05-12 12:41:15 +00:00
danielk1977
80daec6fcc Make test function do_ioerr_test more robust. No code changes. (CVS 5121)
FossilOrigin-Name: f532692ec91b40fc002af925d2ab8382e3c3b2ca
2008-05-12 10:57:02 +00:00
danielk1977
27467047e9 Modify logging code in test_osinst.c. No changes to production code. (CVS 5120)
FossilOrigin-Name: 85c54a16c7aecea3e0e5040ee8aca06d8b6a2b2b
2008-05-12 07:42:20 +00:00
drh
a06f17fe2e New test cases to verify that SQLite handles bound NaN, +Inf, and -Inf
floating point values correctly.  Improvements to the text->real conversion
routine so that it generates +Inf and -Inf at appropriate times.
Tickets #3101 and #3060. (CVS 5116)

FossilOrigin-Name: 3ff2f1cdc9c57bca56de6cdc0ad5edc95b0606a0
2008-05-11 11:07:06 +00:00
danielk1977
2bb5113ce6 Re-enable tests that were accidentally disabled by (5112). (CVS 5114)
FossilOrigin-Name: bf45a3ab7a295dcc399bdcf27965f1684b0a33b8
2008-05-09 18:03:27 +00:00
danielk1977
93f7af97a6 Fix a problem with recovering from an IO error in exclusive-locking mode. (CVS 5112)
FossilOrigin-Name: 7a44fb965b3477fb78901939ba35d569e5638c19
2008-05-09 16:57:50 +00:00
drh
7382945199 Fix the ALTER TABLE RENAME algorithm so that it is not confused
by comments in the CREATE TABLE statement.  Ticket #3102. (CVS 5110)

FossilOrigin-Name: ab18b4e75916b05863b31bc63625aa64a104a42c
2008-05-09 14:17:51 +00:00
danielk1977
06fb0400f4 Fix recently introduced bug in tester.tcl. (CVS 5107)
FossilOrigin-Name: 4b573d4e7dd8c3417cfdebe7d2885de7bdc522db
2008-05-08 16:51:11 +00:00
danielk1977
374177eb39 Add extra instrumentation to test_osinst.c. Also the --binarylog option to the test scripts. (CVS 5106)
FossilOrigin-Name: 8a99efc07f93bc11d21aa501349c81f0fd8abf7b
2008-05-08 15:58:06 +00:00
drh
5284a05316 Use a 6-byte rather than an 8-byte encoding for integers between
17592186044416 and 140737488355327.  Ticket #3100. (CVS 5105)

FossilOrigin-Name: 0a4d26dede320d90a39133dce3d76ca3ee1a4ee6
2008-05-08 15:18:10 +00:00