drh
24fb627afa
Record within the Token structure itself whether or not the token has
...
been dequoted. This steals one bit from the length of a token and
thus limits the size of tokens to 1GiB. (CVS 6589)
FossilOrigin-Name: 12bcb03d9b9e1a31c1a3c67cbb4263cc0af2f3d0
2009-05-01 21:13:36 +00:00
drh
d51397a614
Fix an error message that is generated if the number of columns do not
...
match on an INSERT into a virtual table with hidden columns. (CVS 6588)
FossilOrigin-Name: 795b453c9a03c32d9d4cdf62823d2b9dd667cc44
2009-05-01 15:17:48 +00:00
drh
b56cd55b9a
Update PRAGMA integrity_check so that it treats SQLITE_IOERR_NOMEM errors
...
from underlying components the same as SQLITE_NOMEM errors. (CVS 6587)
FossilOrigin-Name: 26444f2a4426d2e51464ef69ed83d3c78be2c11f
2009-05-01 13:16:54 +00:00
danielk1977
e979565473
Remove a NEVER() clause from a condition that is true at least once when running attachmalloc.test. (CVS 6585)
...
FossilOrigin-Name: 514efc7312d725c3fe35741e8c000526f3bdb3a6
2009-05-01 06:19:21 +00:00
drh
7fe45908cc
Fix processing of BEFORE triggers on INSERT statements with RHS SELECTs
...
that insert a NULL into the INTEGER PRIMARY KEY. Ticket #3832 . (CVS 6583)
FossilOrigin-Name: 4a1f6a3a9ac8b476c86edac83b555adeef0be4e6
2009-05-01 02:08:04 +00:00
drh
0038e0c08f
Disable an always-false test in the attach.c module. (CVS 6581)
...
FossilOrigin-Name: 92b69481bd0eedf06599c40623b38a6f4990010a
2009-04-30 17:38:37 +00:00
danielk1977
f9d1a21421
Fix a problem with in-memory sub-journals and exclusive locking mode. Also a test script problem introduced by (6575). (CVS 6580)
...
FossilOrigin-Name: d67af3f5a21329e133aa6cf2be745a9f8c1a6562
2009-04-30 16:41:00 +00:00
drh
959b530d64
Documentation updates for sqlite3_set_authorizer(). No changes to code. (CVS 6579)
...
FossilOrigin-Name: 41f39c3145f2659fdb636cae07cdd424a10ac6e9
2009-04-30 15:59:56 +00:00
drh
c47fd8e031
Disallow attaching the same database multiple times to the same db connection
...
in shared cache mode, since doing so leads to deadlock. (CVS 6578)
FossilOrigin-Name: 715f14f1dcaf604d4794bf3e18e245d4f8c5d5a9
2009-04-30 13:30:32 +00:00
drh
1c5141484c
Changes sqlite3TempInMemory() to take a const parameter. (CVS 6576)
...
FossilOrigin-Name: aa29a14ca040db25dadbca787aa75be3b7588415
2009-04-30 12:25:10 +00:00
danielk1977
d829335e42
When SQLite is configured to use in-memory temp files (either by setting SQLITE_TEMP_STORE during compilation or using the temp_store pragma at run time), store statement/savepoint journals in memory also. Ticket #3825 . (CVS 6575)
...
FossilOrigin-Name: 38f8c5a14cd221af9e115a0fea689f2ff39e30e5
2009-04-30 09:10:37 +00:00
drh
6c19747549
Fix a memory leak introduced in the previous check-in. (CVS 6574)
...
FossilOrigin-Name: f082bf36051fef92ddda0339777a00cd1f0ba988
2009-04-30 05:40:34 +00:00
drh
9ae7a7406d
Take care not to leave a zombie attached database if the attachment fails
...
due to an encoding mismatch. Update attach logic to always use dynamically
allocated error message strings. (CVS 6573)
FossilOrigin-Name: a6cb4002ada311b56fa2b7430b98b9a0fa698a01
2009-04-30 05:19:04 +00:00
drh
c0b61810ed
Remove always-true tests from attach.c. In btree.c, always test the return
...
from sqlite3PagerSetPagesize() since it might return SQLITE_NOMEM. (CVS 6572)
FossilOrigin-Name: 8bf60b24ffcf6ac15f41eaa7f976b810e0c66734
2009-04-30 01:22:41 +00:00
drh
bbb5e4e073
Remove an always-true test from delete.c. Move the sqlite3OpenTable()
...
routine from delete.c to insert.c since it is not used in delete.c. (CVS 6571)
FossilOrigin-Name: 71756dc870910665ef5fdbc7343bc3eedbe3ce65
2009-04-30 00:11:09 +00:00
danielk1977
fad9194453
Modify the assemblePage() function in btree.c so that it runs slightly faster. (CVS 6569)
...
FossilOrigin-Name: 7ec42e989f1d4abdc6d52f8feebf51985f36b2bd
2009-04-29 17:49:59 +00:00
drh
d9c20d71c2
Update the documentation on the sqlite3_changes() and sqlite3_total_changes()
...
functions. (CVS 6568)
FossilOrigin-Name: 58c7bdb21c719bf06713ff8ffa7ee51cf1973712
2009-04-29 14:33:44 +00:00
danielk1977
6eacd28a28
Fix a case in where.c where a crash can follow a malloc failure. Also modify test code in test8.c to check a return code that was being dropped (causing a test in vtab_err.test to fail). (CVS 6567)
...
FossilOrigin-Name: 9664e2b6c69271a7ca55af7812a186773a7c6592
2009-04-29 11:50:53 +00:00
danielk1977
ae5558b2ae
Add a version of cellSizePtr() that is faster than using sqlite3BtreeParseCellPtr(). This speeds up balance_nonroot(). (CVS 6566)
...
FossilOrigin-Name: e8f7f7b787fe941093edaea44db4d361fad1e002
2009-04-29 11:31:47 +00:00
danielk1977
7b801388f5
Simplify a conditional expression in btree.c. (CVS 6565)
...
FossilOrigin-Name: fc3a5ac2353142082fe14d47f9c2b662407ea3f7
2009-04-29 06:27:56 +00:00
drh
0d59d17c41
Fix asserts in hash.c so that zero-length symbols can be used. (CVS 6563)
...
FossilOrigin-Name: fe9f00aa369051beee09ab3d1a2e046a1f679a40
2009-04-28 17:33:16 +00:00
drh
b82400132d
Remove an unused function declaration from hash.h. (CVS 6561)
...
FossilOrigin-Name: fcf70bb8b8ab7682d46fa7e75338dfd8ecf472a3
2009-04-28 16:35:42 +00:00
drh
8a1e594c9f
Simplifications to the symbol table implementation in hash.c. For very small
...
symbol tables (less than 10 entries) a simple linked list is used instead
of a hash table. Number of hash table buckets is limited to prevent large
allocations. (CVS 6559)
FossilOrigin-Name: 5c737835dec9e6038b304c198aa14337a6f23c1c
2009-04-28 15:43:45 +00:00
danielk1977
ebb329397c
Have sqlite3_create_collation() return MISUSE if passed an encoding value other than SQLITE_UTF8, SQLITE_UTF16LE, SQLITE_UTF16BE, SQLITE_UTF16 or SQLITE_UTF16_ALIGNED. (CVS 6558)
...
FossilOrigin-Name: 7975b6f2ec7736b3656a264c2f7e7e95ce7a78e4
2009-04-28 15:35:38 +00:00
drh
a83ccca794
Do not store the zero string terminator as part of the name when holding
...
symbols in the symbol table. (CVS 6557)
FossilOrigin-Name: 23d67af39227aeade2ea0292e1b8844eea580993
2009-04-28 13:01:09 +00:00
danielk1977
c1f4a19bfa
Another fix to the same assert as in (6555). It can also fail after a malloc error. (CVS 6556)
...
FossilOrigin-Name: e096f90a57f0e0d1dbeaafc72762035ca55ab803
2009-04-28 12:08:15 +00:00
danielk1977
f0d0a8dc4a
Fix an assert that could fail after a parse error in expr.c. (CVS 6555)
...
FossilOrigin-Name: a37d1174eb80e9a09522b236afdb47283f312d06
2009-04-28 11:10:39 +00:00
danielk1977
f761f76262
Avoid changing the pager journal-mode once a write-transaction is open, even if no database pages have been modified. (CVS 6554)
...
FossilOrigin-Name: ad8aba3eff90d42b936e3644f10cbbd431eebad8
2009-04-28 05:27:20 +00:00
drh
e0d0f8ee4d
Make sure sqlite3_open16() always zeros the db return pointer if
...
SQLite initialization fails. (CVS 6552)
FossilOrigin-Name: 057c7d171397e19c8f3ac2362ea45f2b4a50530c
2009-04-28 04:47:31 +00:00
drh
709915da2a
Enhance sqlite3_complete() so that it understands EXPLAIN QUERY PLAN.
...
Ticket #3828 . Testing is done in TH3. (CVS 6551)
FossilOrigin-Name: 3ac1b15f552fe005630e43a92fffa6a4abd6675d
2009-04-28 04:46:41 +00:00
drh
51c7d86476
Bring the documenation and implementation of sqlite3_collation_needed() into
...
agreement. Use a more efficient implementation of sqlite3ErrStr().
sqlite3_result_error_code() now calls sqlite3ErrStr() if no prior
error string was set. (CVS 6550)
FossilOrigin-Name: cb9af8293624da35c32077d0f46d5b0cf826dcf5
2009-04-27 18:46:06 +00:00
danielk1977
6f050aa2bf
Tests for the new asynchronous IO API. (CVS 6549)
...
FossilOrigin-Name: 11b2564e7159168cd0815bb9bc93688586fad1e0
2009-04-25 08:39:14 +00:00
danielk1977
70d9e9cc02
Dequote the "from" table in a FOREIGN KEY definition (affects the output of "pragma foreign_key_list). Fix for #3800 . (CVS 6547)
...
FossilOrigin-Name: 600482d1619c07690b6517ded9655462bdab7538
2009-04-24 18:06:09 +00:00
drh
336a5300de
Get rid of the special RowSet processing in where.c and move that into
...
clients. Added the WHERE_DUPLICATES_OK option to eliminate an unnecessary
RowSet during DELETE with a WHERE clause containing ORs. (CVS 6546)
FossilOrigin-Name: 98606bee9e41b8969fb639fc43864e230185ca43
2009-04-24 15:46:21 +00:00
drh
46619d6787
Make sure that the optimizer realizes that an "x IS NULL" contraint does not
...
necessarily give a single-row result even on a UNIQUE index. Ticket #3824 . (CVS 6545)
FossilOrigin-Name: 207335fdbf992a2f5bc5982b3163a38016ba1b21
2009-04-24 14:51:42 +00:00
danielk1977
4598b8e4a1
Make selecting the asynchronous IO file-locking mode a runtime operation. Still untested. (CVS 6544)
...
FossilOrigin-Name: 577277e84a05707b8c21aa08bc5fc314c1ac38ac
2009-04-24 10:13:05 +00:00
shane
68d405e25a
os_win.c, winOpen(), changed to handle the SQLITE_OPEN_EXCLUSIVE flag and sharing modes in the same manner as os_unix.c. Ticket #3821 . (CVS 6542)
...
FossilOrigin-Name: 18fef3fcf61c137a89a83352f6769ed06845434a
2009-04-23 19:08:32 +00:00
danielk1977
a3f065980e
Move the asynchronous IO code from src/test_async.c to ext/async/. Refactor it to be a standalone module and to support windows. (CVS 6539)
...
FossilOrigin-Name: e71fb0fb8d83b4453c3c1e84606bf58d04926809
2009-04-23 14:58:39 +00:00
drh
ceea33217b
Rework the column-cache mechanism to be more robust (and more correct).
...
The column-alias cache is currently disabled, (CVS 6538)
FossilOrigin-Name: dd4d67a67454a3ff13c286a2a8360c5f0432c91d
2009-04-23 13:22:42 +00:00
drh
044925be0b
Eliminate the OP_VRowid opcode. The regular OP_Rowid now work for both
...
regular and virtual tables. (CVS 6537)
FossilOrigin-Name: ecbef45011f1f98d940b2d3492941213d9f04172
2009-04-22 17:15:02 +00:00
drh
6149526c25
Change the OP_Rowid opcode so that a deferred OP_Seek is pending, it simply
...
pulls the rowid from the deferred seek target and does not actually move
the cursor or do a seek. Other where.c cleanups. (CVS 6536)
FossilOrigin-Name: 1c508a99822caa383e7e24b5d09a9bddd2ee3a00
2009-04-22 15:32:59 +00:00
drh
1b26c7ccfa
Remove the rowhash object from the code. Rowset now fills its role. (CVS 6535)
...
FossilOrigin-Name: e963bed0fe3ce5fa32f04b930e5ed0956dc2aa47
2009-04-22 02:15:47 +00:00
drh
733bf1b1e2
Extend the Rowset object to contain all the capabilities of Rowhash in
...
addition to its legacy capabilities. Use Rowset to replace Rowhash.
In addition to requiring less code, This removes the 2^32 result row
limitation, uses less memory, and gives better bounds on worst-case
performance. The Rowhash implementation has yet to be removed. (CVS 6534)
FossilOrigin-Name: b101cf70b75c9772aaf50e0eadd0cfa37c84d193
2009-04-22 00:47:00 +00:00
danielk1977
dcc1f44020
Move RowHashBlock.nUsed to RowHash.nUsed. Fix a typo in a comment in test_async.c. (CVS 6533)
...
FossilOrigin-Name: 799d31d99fd18a6f99862433384e37d6747ee5b3
2009-04-21 18:20:45 +00:00
danielk1977
732dc5526b
Fix a segfault that followed a malloc failure introduced by (6527). (CVS 6532)
...
FossilOrigin-Name: 08e71b114087cfddd36c066265982172fcb41c9a
2009-04-21 17:23:04 +00:00
drh
cd5a9729d2
Allocate the initial RowHash object using lookaside. (CVS 6530)
...
FossilOrigin-Name: 9b30ab7199d8b51bdea8ec7f0410281527623673
2009-04-21 16:15:15 +00:00
drh
ade9760aea
New comments and minor refactoring of rowhash.c. (CVS 6529)
...
FossilOrigin-Name: b8cb4f3e2473afaee7c147a6b3f0972f69391a9a
2009-04-21 15:05:18 +00:00
drh
a76409211d
Remove a redundant test from sqlite3_shutdown(). (CVS 6528)
...
FossilOrigin-Name: 6f481ceb503c7df74d9417a5a7f019ff56261ea8
2009-04-21 12:02:56 +00:00
danielk1977
1d46146b58
Attempt to optimize virtual table queries with 'OR' expressions in the WHERE clause. (CVS 6527)
...
FossilOrigin-Name: f61e4cd93682fd98bea2a71d346f9eaa68454390
2009-04-21 09:02:45 +00:00
drh
8a93919082
Change the journal_mode pragma so that it always returns the current
...
journal mode, even on a failed attempt to change the journal mode.
Allow the journal mode to be changed as long as there is not a pending
transaction. Ticket #3811 . (CVS 6526)
FossilOrigin-Name: 419e320ae51639794335d19699f8e1189e524e7d
2009-04-20 17:43:03 +00:00