1052 Commits

Author SHA1 Message Date
drh
faa59554c3 Add support for CREATE TABLE IF NOT EXISTS. (CVS 2847)
FossilOrigin-Name: 0bd9e35fd22946640f4fb1c1874922ae096916f7
2005-12-29 23:33:54 +00:00
drh
d946db0064 Add serial-types 8 and 9 for integer constants of 0 and 1 that use zero
bytes of storage.  Make the default file format 4.  Add the
SQLITE_DEFAULT_FILE_FORMAT compile-time option to lower the default
file format number so that newly created databases can be read and
written by older versions of SQLite. (CVS 2845)

FossilOrigin-Name: ae301db8a61a74bc72f67f5766811d89a3b3ec72
2005-12-29 19:23:06 +00:00
drh
a073384f08 Add support for DROP TABLE IF EXISTS. (CVS 2843)
FossilOrigin-Name: a4c547de83d8b27f06a58f9e530a7c983ec1dc3a
2005-12-29 01:11:36 +00:00
drh
0b2f3160d6 Bug fixes and additional testing of descending indices. (CVS 2841)
FossilOrigin-Name: 5638a11ed5618dd833d3daffc1715951091d72b2
2005-12-21 18:36:45 +00:00
drh
d28bcb305b Basic functionality for descending indices is in place. Lots more testing
needed. (CVS 2840)

FossilOrigin-Name: 7064433e5b06a4f858f39ce57650fba99fd72ffd
2005-12-21 14:43:11 +00:00
danielk1977
5591df558a Add simple tests and fixes for sqlite3_soft_heap_limit() (CVS 2837)
FossilOrigin-Name: c2c5285442f4558dfca61b52f31b5a9cbefaed10
2005-12-20 09:19:37 +00:00
drh
8f9b728b62 Tentative fix for ticket #1567: disable the sqlite3pager_dont_write()
optimization when a statement transaction is active.  We continue to look
for a better fix. (CVS 2827)

FossilOrigin-Name: e6106cc133e5210bfa248d811122e9bf7d6f2b7c
2005-12-19 16:15:31 +00:00
danielk1977
0190d1da46 Add some very simple test cases (and resulting bug fixes) for release_memory(). (CVS 2826)
FossilOrigin-Name: 154282fca54bf03d310d6931660f99805bb5477f
2005-12-19 14:18:11 +00:00
danielk1977
f3f06bb30c Verify that the rollback-hook is invoked correctly when a malloc() failure occurs. (CVS 2824)
FossilOrigin-Name: 83c8ae5bee3b6bdb556d2e85fa260ba855742601
2005-12-16 15:24:28 +00:00
danielk1977
71fd80bf5c Add the sqlite3_rollback_hook() API. Still requires further testing. (CVS 2823)
FossilOrigin-Name: 3baa3ff32435b64e7ae7646b17a98fef9296aaa0
2005-12-16 06:54:01 +00:00
drh
fdd6e85a34 Initial infrastructure for recognizing DESC indices and being able to read
and write older databases that specify DESC indices but do not really use
them.  Nothing is close to working yet. (CVS 2822)

FossilOrigin-Name: cd110aa225b09591064405dd8952b3df37278c52
2005-12-16 01:06:16 +00:00
danielk1977
94eb6a14cb Add the sqlite3_update_hook() API. (CVS 2820)
FossilOrigin-Name: 36229018817eebfbfca7a66d2285e4faf7b39845
2005-12-15 15:22:08 +00:00
danielk1977
13a68c3f61 Add the sqlite3_os_routine_set()/get() functions. (CVS 2818)
FossilOrigin-Name: c1ed79f594fb85009c2e9e5e281cbe66a9d2fa17
2005-12-15 10:11:30 +00:00
drh
268803a95b Properly zero-terminate UTF-16 collation names on an
sqlite3_collation_needed16 callback. (CVS 2815)

FossilOrigin-Name: 71a49d05bf174025c0d9141b8905c48f43e42541
2005-12-14 20:11:30 +00:00
danielk1977
7ddad969a4 Fix minor malloc() related problems and add sqlite3_soft_heap_limit() stubs. (CVS 2814)
FossilOrigin-Name: 1637f3796015d1582ed8c6bc8bdf8c067b4bade9
2005-12-12 06:53:03 +00:00
drh
97f2ebc192 Add the "exists" method to the TCL interface. (CVS 2813)
FossilOrigin-Name: 8a355d7aade5c7a95ab08aeedf1ee1857c121c33
2005-12-10 21:19:04 +00:00
drh
e57c06fdf0 New bind tests (check-ins (2797) and (2798)) only work right on a UTF8
database.  So make sure they are only run when the database is UTF8. (CVS 2812)

FossilOrigin-Name: 398037906956f0274ca35cbff6961f6df5149295
2005-12-09 20:54:34 +00:00
danielk1977
97cb2e969b Define the sqliteMalloc() macro differently to avoid a compiler warning. (CVS 2809)
FossilOrigin-Name: 3d177bde71811391f79f4ab3bae054ef1bceb6a0
2005-12-09 14:39:04 +00:00
danielk1977
2e588c7525 Many small changes to ensure memory is not leaked after malloc() fails. (CVS 2808)
FossilOrigin-Name: 601c335463aaabc2e9918e4b9298cff6161be5c4
2005-12-09 14:25:08 +00:00
drh
fde4a6f8a4 Add more stress testing to autovacuum in an (unsuccessful) attempt to
reproduce a reported problem.  Even though these tests did not uncover
anything amiss, extra tests never hurt... (CVS 2807)

FossilOrigin-Name: d8a8933ff30b83c0483be214403d92c4dfa9a4af
2005-12-09 02:35:53 +00:00
danielk1977
00fd957b78 Add some tests for malloc() failure within the column_name() and column_decl() APIs. (CVS 2805)
FossilOrigin-Name: 78f10ca0a6a02e9e8e6811489841a19e213f3afb
2005-12-07 06:27:43 +00:00
danielk1977
f4208043d6 Allow VACUUM to detach the auxillary database after malloc() fails. (CVS 2804)
FossilOrigin-Name: 6824a78bc7b8582fc5c3a6ab05dd3ed996fc99b3
2005-12-06 17:48:31 +00:00
danielk1977
f744bb56a1 Modify ATTACH and DETACH to execute at runtime instead of compile time. (CVS 2803)
FossilOrigin-Name: 5e04ec694add7a8331e3d6fbdfcaed51349ae7bc
2005-12-06 17:19:11 +00:00
danielk1977
1a485fca83 Add test file for new malloc() failure handling. (CVS 2801)
FossilOrigin-Name: 0b82f9623cf25b1cb02f70628c992903a6e8ca1c
2005-12-06 12:57:58 +00:00
danielk1977
261919cc16 Some elements of the new malloc() failure handling. Not all cases work properly yet. Also, library is not threadsafe if malloc() fails right now. (CVS 2800)
FossilOrigin-Name: e1606658f1b4530e3001db4779b5669c8d13c853
2005-12-06 12:52:59 +00:00
drh
5c434b7265 Make sure sqlite3_result_text can handle text strings with embedded '\000'
characters. (CVS 2798)

FossilOrigin-Name: 9d6057cd141e7cdaf32ce68dea39e67c2c67a08d
2005-12-05 13:20:01 +00:00
drh
bf8aa2a6c5 Add a test to verify that binding text with embedded '\000' works. Also
comment changes in os.h. (CVS 2797)

FossilOrigin-Name: 31251a9098662ccf08af5bd5bc3afb282a149701
2005-12-02 02:44:05 +00:00
drh
9cbe635219 Make the OsFile structure opaque with its internal structure known only to
the appropriate os_*.c implementation.  Omit the os_unix.h and os_win.h
include files.  The crash tests are broken by this patch. (CVS 2791)

FossilOrigin-Name: 058f31753871b16b40fe4048e3adcee411e0f87d
2005-11-29 03:13:21 +00:00
drh
54a167d1fe Make sure left joins still work even when the OR clause optimization fires.
Ticket #1537. (CVS 2788)

FossilOrigin-Name: cbbeb9de0019a0b81318158711590078fcb7e98a
2005-11-26 14:08:07 +00:00
drh
9c06c95309 Modify the OS layer so that I/O routines are called through a virtual function
table.  The os_test.c module has been replaced by test6.c.  The crash tests
are busted now and need to be fixed. (CVS 2785)

FossilOrigin-Name: 1f69aec285dd8e26bd739d5e44bb50fe03a9682a
2005-11-26 00:25:00 +00:00
danielk1977
aa2289f89c Ensure a low system limit on the number of open files does not cause manydb.test to fail. (CVS 2784)
FossilOrigin-Name: dba2cc0d0e0c648c1a4798bc72913e3b19acba6e
2005-11-25 10:55:57 +00:00
danielk1977
d7c03f7485 Add the compilation option SQLITE_DISABLE_DIRSYNC (CVS 2782)
FossilOrigin-Name: f1298bb103aad46c737741d89d33c4c2904aec68
2005-11-25 10:38:22 +00:00
danielk1977
26c5d79f60 If SQLITE_DISABLE_LFS is defined, omit the bigfile tests. (CVS 2781)
FossilOrigin-Name: f882a516da18f45dbb668078d0d8240d930e1180
2005-11-25 09:01:23 +00:00
drh
94c1f6f731 Preserve 64-bit last insert rowids across triggers. (CVS 2779)
FossilOrigin-Name: 4dd7cfaa587fd5f76a0b60db0f02d5f57f801564
2005-11-25 02:43:50 +00:00
drh
3eda040be9 Fix incorrect type conversions when copying from a table into itself.
Ticket #1536. (CVS 2773)

FossilOrigin-Name: a2e55a3828d74d78b0b76f956a537a0d906f3191
2005-11-24 13:15:32 +00:00
drh
4efc083f57 Fix a problem with the sorting of literals in a compound query. Ticket #1501. (CVS 2770)
FossilOrigin-Name: b3882b434a1ef7d8d636c7c5917b9e8f0d2952fb
2005-11-16 13:47:50 +00:00
drh
7e56e71125 Do not allow aggregate functions in a WHERE clause. Ticket #1514. (CVS 2769)
FossilOrigin-Name: bb866ed880c33ec9ce6ded8ebdbb459fedf9c257
2005-11-16 12:53:15 +00:00
drh
8a51256c0c Create separate affinities for INTEGER and REAL. (CVS 2766)
FossilOrigin-Name: ce06c123d0c5663dbaf263c2e0aaf5d9cdeb2ccd
2005-11-14 22:29:05 +00:00
drh
c9ac5caa45 VACUUM works even on an empty database. Ticket #1512. (CVS 2760)
FossilOrigin-Name: 1b6bf4188e8ebf55cf1972b7081f6d31bf525555
2005-11-04 22:03:30 +00:00
drh
4284fb0778 Prohibit parameters in CHECK constraint expressions. (CVS 2758)
FossilOrigin-Name: bb94ef64b227839a0ef4156985e2f5a061a78e2c
2005-11-03 12:33:28 +00:00
drh
0cd2d4c9a1 Add the ignore_check_constraints pragma. VACUUM works even on a database
that contains table entries that violate check constraints. (CVS 2757)

FossilOrigin-Name: be83bfee0211396a0038ffb125897199bea9a73f
2005-11-03 02:15:02 +00:00
drh
06f6541e2f Disallow subqueries in CHECK constraints. (CVS 2756)
FossilOrigin-Name: db27afc4cdc5b51c1fa0e83dbd6d4a4a69c5b642
2005-11-03 02:03:13 +00:00
drh
6275b88b9e CHECK constraints that evaluate to NULL pass. (CVS 2755)
FossilOrigin-Name: 55b314a22c69fbe129b024e953f3230b67eaaa87
2005-11-03 01:22:30 +00:00
drh
ffe07b2dc1 First cut at supporting CHECK constraints. Everything appears to work,
but much more testing is needed as well as documentation. (CVS 2754)

FossilOrigin-Name: 2313d912baeca0fd516d524f16708953de483729
2005-11-03 00:41:17 +00:00
drh
8df447f0e6 Omit the SQLITE_AFF_INTEGER type affinity. All numeric values are now
of type real, though an integer representation is still sometimes used
internally for efficiency. (CVS 2753)

FossilOrigin-Name: e0d6f61c7de2c03b8fd17ef37cf1a0add36ee618
2005-11-01 15:48:24 +00:00
drh
b127612933 Fix the shift operators so that they work with 64-bit quantities. (CVS 2752)
FossilOrigin-Name: 0d3357b5f65887f7db03db2ae021f28f480f90e4
2005-10-29 15:48:30 +00:00
drh
eef8b55832 Report an error if the input SQL contains an unterminated string.
Ticket #1497. (CVS 2751)

FossilOrigin-Name: c9c476dd836c49255eabc6cce83064974c079ce3
2005-10-23 11:29:40 +00:00
drh
ec7429ae27 More efficient handling of the LIMIT clause. Scalar subqueries and EXISTS
on compound SELECT statements now working properly.  Ticket #1473. (CVS 2747)

FossilOrigin-Name: edca8913ca012fc0c17343a27f819de95147b1bd
2005-10-06 16:53:14 +00:00
drh
cc43cabcb0 Fix an assert or memory leak that occurs when trying to EXPLAIN a statement
other than a SELECT that outputs results.  Examples of such statements
include PRAGMA integrity_check or INSERT/DELETE/UPDATE with PRAGMA
count_changes=ON. (CVS 2743)

FossilOrigin-Name: 533a85eee2370aafe204ff3eed50eb7fc0149e83
2005-10-05 11:35:09 +00:00
drh
762e584e2c The hash tables deallocate when empty in order to avoid nuisanse complaints
from valgrind.  Added tests to verify no hash table memory leaks in os_unix.c. (CVS 2738)

FossilOrigin-Name: 080eadca582a49a069a76ed113ec15e9bce2955a
2005-10-03 15:11:08 +00:00