Commit Graph

6613 Commits

Author SHA1 Message Date
drh
856c10375d Add the vdbe-compress.tcl script which automatically refactors the
sqlite3VdbeExec() routine to use less stack space.  Use this script
when constructing the amalgamation. (CVS 6704)

FossilOrigin-Name: 7f43391831b03e53d967acee6ae02089740aaedb
2009-06-02 15:21:42 +00:00
drh
6ee700c32c Avoid allocating large objects on the stack in the incremental BLOB I/O
interface. (CVS 6703)

FossilOrigin-Name: ea7dfde700fb57ed0ecb5000a55abbf45aa1e09d
2009-06-01 19:53:30 +00:00
drh
e7b3470705 Malloc for space to hold the Parse object in sqlite3_prepare() and friends.
Or, if compiled with SQLITE_USE_ALLOCA, obtain space for the object from
alloca(). (CVS 6702)

FossilOrigin-Name: c7c0c58e472cd8277b2ad58bb60834190bace4fa
2009-06-01 18:18:20 +00:00
shane
ddfefca736 Added assert to verify winMutex system is inited before "static" mutexes are used. (CVS 6701)
FossilOrigin-Name: b126013b5a1d6526810139d19acbec7fd0ab8168
2009-06-01 17:10:22 +00:00
shane
61b82d6aa5 Ensure that "static" mutexes are deleted on shutdown so that they are not leaked across restarts. (CVS 6700)
FossilOrigin-Name: 4e75897ee177bd24145f9dbfccd41a03c108440f
2009-06-01 17:06:07 +00:00
shane
cf6973963a Fix compiler warnings with MSVC build. (CVS 6699)
FossilOrigin-Name: 0791588520603d106aa0b8ce24d68b740b7b80c8
2009-06-01 16:53:09 +00:00
shane
739a277031 Fix a couple of Windows only issues with test scripts. (CVS 6698)
FossilOrigin-Name: 0f6bc5e1ba6937b36df08ed3b5903839389021bb
2009-06-01 16:42:17 +00:00
drh
d6b8c43474 Code simplifications to facilitate coverage testing following the recent
changes to the Expr object. (CVS 6697)

FossilOrigin-Name: ee9a144d448a76f29c3ca03851c1aeef539068e2
2009-05-31 21:21:40 +00:00
drh
de7446bd85 Fix the ".genfkey" command of the CLI so that it does not leak memory
if sqlite3_realloc() fails.  Ticket #3891. (CVS 6696)

FossilOrigin-Name: a028d69c70ae961f418052a91aa1518e80a8ddf5
2009-05-31 17:16:09 +00:00
drh
20bc393c6a Fix typo reported by ticket #3888. Other minor edits to facilitate
coverage testing. (CVS 6695)

FossilOrigin-Name: 164adf261d2536f16c83e44f6482dfb3d04a45d5
2009-05-30 23:35:43 +00:00
drh
33cd490992 Simplifications to the expr.c source module resulting from structural
testing. (CVS 6694)

FossilOrigin-Name: f760bb7a0372d11ac7e3287b8a56fc4261e6371c
2009-05-30 20:49:20 +00:00
drh
f7bca5740d Fix for ticket #3887. Other unrelated bits of code cleanup in the expr.c
source module. (CVS 6693)

FossilOrigin-Name: 00e7250f11e190cd915870438d172f574d110e6d
2009-05-30 14:16:31 +00:00
danielk1977
43996e858b In vacuum.c use "PagerIsMemdb(X)" instead of "PagerFile(X)->pMethods==0". (CVS 6692)
FossilOrigin-Name: 874295ce71380da3f4c9296df0e0ce5ece136220
2009-05-30 10:46:10 +00:00
drh
20411ea700 Enhance the sqlite3VdbeGetOp() routine so that it always returns a pointer
to VdbeOp, even following an OOM fault.  This simplifies error handling in
callers.  Cleanup to the column cache logic and the expr.c source module. (CVS 6691)

FossilOrigin-Name: ede06dacdf7acab23cd9666a0a0d092a637bcb78
2009-05-29 19:00:12 +00:00
drh
fd773cf970 Refinements in expression handling logic that have resulted from recent
structural testing. (CVS 6690)

FossilOrigin-Name: bd89f2c29b00e6b473f30c2e929d2f626721ad92
2009-05-29 14:39:07 +00:00
drh
9fe769f129 Still more refinements to the hasHotJournal() fix of ticket #3883. (CVS 6689)
FossilOrigin-Name: 726b425e43e5d864e7e83853bdf134debc1ffb59
2009-05-29 11:57:38 +00:00
drh
cc0acb261e The hasHotJournal() fix of check-in (6687) causes some minor problems in
various alternative operating modes, such as locking_mode=EXCLUSIVE.  This
additional patch attempts to fix those concerns.  Ticket #3883. (CVS 6688)

FossilOrigin-Name: a2ba61d927a06c390a9a818a013328092b802222
2009-05-29 10:55:29 +00:00
drh
f0039ad815 Modify the hasHotJournal() routine to return a false-positive if it is
unable to open the journal file to check its header due to a race
condition.  Processing downstream of hasHotJournal() already knows how to
deal with false-positives.  Ticket #3883. (CVS 6687)

FossilOrigin-Name: d6b5d8e1ab8e5d3348ace560230702718a2a8af9
2009-05-29 00:30:30 +00:00
drh
b74b101766 Remove references to deleted function sqlite3ExprRegister(). Changes to
the expr.c source module to promote better testing. (CVS 6686)

FossilOrigin-Name: 6ae4ad6ebee4db88c411df97bb1de574708dd53c
2009-05-28 21:04:37 +00:00
drh
2c220455b9 Fix a NULL pointer dereference following an OOM error in the column name
resolver. (CVS 6685)

FossilOrigin-Name: 3b46142532934d17aa136c2e56e58e7828df0f54
2009-05-28 14:34:49 +00:00
drh
0b0745ae37 Make sure the column name resolver does not try to duplicate Expr.u.zToken
when the Expr.u.iValue union member is the element being used. (CVS 6684)

FossilOrigin-Name: 376ecf0d87e4a2329f5861401f83ed9ceb35d528
2009-05-28 12:49:53 +00:00
danielk1977
4b0aa4cf3e Workaround the need for internal API sqlite3BtreeCursorDb(). It was only being used for an assert() statement, which can be done differently. (CVS 6683)
FossilOrigin-Name: 5904af6e6df3effdaaa30e7cf96ee316fc09b28d
2009-05-28 11:05:57 +00:00
drh
33e619fc1c Additional refinements to Expr handling. Restore compression of trigger
expressions.  Change Expr.zToken to Expr.u.zToken and added Expr.u.iValue.
Remove an unnecessary ExprDup from CHECK constraint processing.  And so forth. (CVS 6682)

FossilOrigin-Name: 4ac2bdfbb4230b6ceaae87e738fa61036bbe03cb
2009-05-28 01:00:55 +00:00
drh
b7916a78ff Simplifications to the Expr object: Remove Expr.span completely and convert
Expr.token into a char* Expr.zToken.  Also simplify the Token object by
removing the Token.dyn and Token.quoted fields. (CVS 6681)

FossilOrigin-Name: 7cb1c3ba0759539cb035978fdaff6316775986f3
2009-05-27 10:31:29 +00:00
drh
38a2c01b09 Fix the rtree test module so that it works even if the ext/ subfolder is
omitted from the tree. (CVS 6679)

FossilOrigin-Name: 086206e1f51e22ce7b9f45865b370088db126cd2
2009-05-25 14:17:35 +00:00
drh
5cd792399a When pinning a temp register after it is reused by the column cache, make
sure all instances of that register in the cache are pinned so that the
register is never reused for a different purpose.  Ticket #3879. (CVS 6676)

FossilOrigin-Name: 5f358e63712e8de93bd6fecc5131badeef0292be
2009-05-25 11:46:29 +00:00
danielk1977
d17fe2a352 Add a test case for ticket #3879. (CVS 6675)
FossilOrigin-Name: 5b9b66f47b0b8178427806149958387d32b70dc2
2009-05-25 11:46:10 +00:00
drh
09943b53dd Additional clarification of the 3rd parameter to sqlite3_create_function().
Documentation change only; no changes to code.  Ticket #3875. (CVS 6674)

FossilOrigin-Name: dd75e376e8fed4f2e347672d483ee7c1929007cf
2009-05-24 21:59:27 +00:00
drh
091bc7bb16 In the previous, the upper bound on the number of function arguments is
127, not 255.  Ticket #3876 (CVS 6673)

FossilOrigin-Name: 4fe4c5fac51c0a5b50f839a3f43d786e1ff4a4e0
2009-05-24 11:08:49 +00:00
drh
97602f8593 Correct and clarify the documentation on the third parameter to
sqlite3_create_function(). (CVS 6672)

FossilOrigin-Name: 6b7929ed36fa14291b6cb09de5808100945ad7a0
2009-05-24 11:07:49 +00:00
danielk1977
e672c8ed91 Do not transform a WHERE clause of the form "a = ? OR a = ?" to "a IN (?, ?)" if "a" is a column of a virtual table. Ticket #3871. (CVS 6671)
FossilOrigin-Name: fad88e71cf195e703f7b56b13f0c1818fd0dac84
2009-05-22 15:43:26 +00:00
drh
dd1f4321ab Add an assert() to pcache1.c to double-check that page cache buffer memory
is never allocated if pcache1 is not enabled.  Ticket #3872 (CVS 6670)

FossilOrigin-Name: 93369d91abe10975507ea9302c145e3ddd0c2c76
2009-05-22 11:12:23 +00:00
drh
f4622dc176 Additional changes to pcache1 to prevent the page buffer memory from being
configured if pcache1 is not enabled.  Ticket #3872. (CVS 6669)

FossilOrigin-Name: 5153ad19daf0f3b0334b2a06655142899203abbf
2009-05-22 11:10:24 +00:00
drh
b093719a17 Make sure sqlite3_shutdown() completely disables the default pager cache
mechanism in pcache1.c.  Ticket #3872.  Also fix some comments associated
with configuring the page cache. (CVS 6668)

FossilOrigin-Name: 6240992cef5cb867d7a638f1906d05aa8efd0652
2009-05-22 10:53:29 +00:00
drh
4fb0866d58 Add omitted word in the documentation for total_change_count().
ticket #3870. (CVS 6667)

FossilOrigin-Name: 3f6fd16f92a16445891142b0a7dc9f6d6dc06546
2009-05-22 01:02:26 +00:00
drh
49145af9f2 Fix an 8-byte alignment problem on HP/UX. Ticket #3869 (CVS 6666)
FossilOrigin-Name: fc64f8509299a398ac1513e1778f271083e3eabc
2009-05-22 01:00:12 +00:00
drh
51f49f1745 Simplifications to expr.c in support of full coverage testing. (CVS 6665)
FossilOrigin-Name: 309adb5e22af2735b69460c164d870aea99c6da3
2009-05-21 20:41:32 +00:00
drh
157e29a9e3 In the CLI in the ".dump" command, do not attempt to clear the sqlite_sequence
table until the first row of content of that table is seen.  Ticket #3867 (CVS 6664)

FossilOrigin-Name: bedd5ad1942021ef2b3defde3ff3e8aead86137e
2009-05-21 15:15:00 +00:00
drh
4f32476cea In the CLI, always "dump" the sqlite_sequence table last. Ticket #3867 (CVS 6663)
FossilOrigin-Name: a0028d4808275cb1d020d56344d90b2a04603f4d
2009-05-21 14:51:03 +00:00
danielk1977
1ed93e9085 Add conditional 'extern "C"' block to sqlite3async.h. Ticket #3866. (CVS 6662)
FossilOrigin-Name: e4d1b117c90dca341bfa74291c7dfc2afca38cc6
2009-05-21 04:42:19 +00:00
drh
748ce21115 Fix a memory leak that occurs when an out-of-memory error occurs while
preparing a statement that has multiple virtual table updates within
triggers.  Other virtual table changes to support full-coverage testing. (CVS 6661)

FossilOrigin-Name: 02b77a582c65e0eb45eb1a9abbdeef11f52d7ce6
2009-05-20 20:10:47 +00:00
drh
9e27890ed9 Remove unused, undocumented, and untested error reporting logic from the
xFindFunction interface in virtual tables. (CVS 6660)

FossilOrigin-Name: 55d6ced262f5281076e4a68097ed21e150a9c225
2009-05-20 16:22:02 +00:00
drh
7aaa878619 Updates to the extension loading logic to support full coverage testing. (CVS 6659)
FossilOrigin-Name: 929cfbc66f6e2ea6b44417305d0f4ae36567c9bf
2009-05-20 02:40:45 +00:00
drh
43152cf85f Changes to select.c to facilitate full coverage testing. (CVS 6658)
FossilOrigin-Name: f678ed34faab88f4e126e553119773386c7c84fa
2009-05-19 19:04:58 +00:00
drh
367882c27c Improvements to the SQLITE_INT_TO_PTR macro to reduce the number of
warnings.  For some platforms it might be necessary to compile with
the -DHAVE_STDINT_H flag.  Ticket #3860. (CVS 6657)

FossilOrigin-Name: 1b0ee9d188c000a2331caae2e9c8b89b0bcbc0b0
2009-05-19 14:21:28 +00:00
drh
e255086bb2 Update the showdb.c utility so that it works with databases larger than 4GiB. (CVS 6656)
FossilOrigin-Name: 9675b6223645fe01b202cbefae63f3209a50efcc
2009-05-19 03:21:52 +00:00
danielk1977
8d76ff9fe9 Fix memdb.test so that it works when OMIT_AUTOVACUUM is defined. (CVS 6649)
FossilOrigin-Name: 8c3c0c24c82606df41653dbf7324bf9f166c933a
2009-05-18 16:04:38 +00:00
drh
ccfcbcea60 Changes to select.c in support of full coverage testing. (CVS 6647)
FossilOrigin-Name: e225f365bd9353f753161887e05fe1eccaf9be1d
2009-05-18 15:46:07 +00:00
drh
5e49edcabb Fix a typo on a comment associated with check-in (6641) and ticket #3860. (CVS 6646)
FossilOrigin-Name: 43051e0315246d734a81ccef2cf1a0cc159f239b
2009-05-18 13:34:37 +00:00
drh
d2c52f1cfd Remove debugging code accidently left in check-in (6642). Ticket #3862. (CVS 6645)
FossilOrigin-Name: 0d974613473b9d2af71638248a57036f903ef387
2009-05-17 15:29:31 +00:00