Commit Graph

616 Commits

Author SHA1 Message Date
danielk1977 d908f5ab7f Fix a problem with inserting zeroblob() into an indexed column. (CVS 3982)
FossilOrigin-Name: ccef5d2daaa5a88dd3f23666f022296ef42f9d73
2007-05-11 07:08:28 +00:00
drh e718efe113 When converting literal BLOBs to text using the encoding of the main
database.  Ticket #2349. (CVS 3975)

FossilOrigin-Name: a57afaff424448ffed8f2344e5eb461f503bfb6e
2007-05-10 21:14:03 +00:00
danielk1977 f75232f748 Add cases to fuzz.test. Some tests in this file fail at the moment. (CVS 3973)
FossilOrigin-Name: 1e8fcb3fbed7beb8bb1370953ecf3d4b9db01ede
2007-05-10 17:32:48 +00:00
drh 53c1402157 Add some UTF-8 test infrastructure. Treat NaN as NULL. The printf routines
print infinity as "Inf" not as "NaN".  Ticket #2345. (CVS 3972)

FossilOrigin-Name: ffe615a71107a38b6f60c7baf4284a5b0aecdc22
2007-05-10 17:23:11 +00:00
drh cf1023c08d Disable tracing pragmas when not in debug mode. This eliminates an external
dependency on stdout. (CVS 3959)

FossilOrigin-Name: 5a0fe9854849bf3f04008a5dbb7a74e7d0d815ca
2007-05-08 20:59:49 +00:00
drh ee85813c94 Fix the amalgamation generator so that all non-API functions have file scope. (CVS 3958)
FossilOrigin-Name: e9f56ead0514f3eac75807ea710c1f035b8add4f
2007-05-08 20:37:38 +00:00
danielk1977 4b5710e486 Avoid evaluating (INT_MIN/-1) with 32 bit signed numbers. It can cause SIGFPE. (CVS 3945)
FossilOrigin-Name: 2f186e916c982cde557e0bc1b925b10e6d58f8a1
2007-05-08 13:57:34 +00:00
drh 023ae03a72 Begin adding code to explicitly limit the size of strings and blobs. (CVS 3943)
FossilOrigin-Name: 031a5915b68ec6827fee38b8b9dc74a9e0e09302
2007-05-08 12:12:16 +00:00
drh c797d4dccd Begin implementing a new system of upper bounds on the capabilities
of SQLite.  By clearly defining the upper bounds, we make those
upper bounds explicitly testable.  This check-in is just infrastructure.
The upper bounds are not yet enforced. (CVS 3941)

FossilOrigin-Name: 93b623b232a43f78d2c90bfa2389dd5b28ad7280
2007-05-08 01:08:49 +00:00
drh ca5557f91d Change incremental vacuum to be triggered by a pragma rather than a command.
We have a lot to learn about this yet and we do not want to paint ourselves
into a corner by commiting to specific syntax too early. (CVS 3921)

FossilOrigin-Name: b13e497a326697ab42b429993a1eee7df3c0c3eb
2007-05-04 18:30:40 +00:00
drh 5bb3eb9b9a Eliminate all uses of sprintf() and strcpy(). These were not being
misused.  But getting rid of them removes a library dependency.  And
it avoids warnings from the OpenBSD compiler.  Ticket #2336. (CVS 3916)

FossilOrigin-Name: ba4845b32bdf38e623c4f7246e6e327715bbba4b
2007-05-04 13:15:55 +00:00
drh ae7e151a24 More fixes and improvements to the zeroblob() mechanism. (CVS 3900)
FossilOrigin-Name: 83ab25014e890b1cc6ea08ca1ebeeee0078da466
2007-05-02 16:51:59 +00:00
drh fdf972a9ba Add support for zero-blobs to the OP_MakeRecord opcode.
First test cases of zeroblob functionality. (CVS 3897)

FossilOrigin-Name: e6d560ddeeb48fb0cbd9f5a10612280b055baef7
2007-05-02 13:30:27 +00:00
drh b026e05eb2 Begin adding the zeroblob API to support incremental blob i/o. (CVS 3894)
FossilOrigin-Name: 7a01836dde45098796693bc6cb6045c4059adf1a
2007-05-02 01:34:31 +00:00
danielk1977 dddbcdcc68 Add largely untested code for the incremental vacuum function. (CVS 3876)
FossilOrigin-Name: f6a6d2b8872c05089810b1e095f39011f3035408
2007-04-26 14:42:34 +00:00
drh 83968c44a5 The sqlite3_step() routine reports SQLITE_ERROR after a commit failure,
not SQLITE_DONE.  This fix only effects the legacy sqlite3_prepare()
interface.  It already worked correctly with sqlite3_prepare_v2(). (CVS 3854)

FossilOrigin-Name: 165dc72d7024258e225c8a7d60118071282f0f44
2007-04-18 16:45:24 +00:00
danielk1977 896e792463 Avoid reloading the db schema after a failed OP_VerifyCookie if the in-memory schema cookie already matches the database file. (CVS 3849)
FossilOrigin-Name: 61c1d06d10257575e1406303af331bcc4d00deb0
2007-04-17 08:32:33 +00:00
danielk1977 a04a34ff1a Ensure sqlite3_finalize() can be called from within the xDisconnect() method of virtual tables. (CVS 3845)
FossilOrigin-Name: 8d6c3bfc4dfdd380a2915d778e256d3e49d22d72
2007-04-16 15:06:25 +00:00
drh c416ba97bf Fix a memory leak in multi-database commit. Also enhance a comment that
explains why a particular valgrind error is harmless. (CVS 3771)

FossilOrigin-Name: 28c7ed1eb799203a569cdae97da974b347f39579
2007-03-30 18:42:55 +00:00
drh 3c024d6973 Remove the anonymous union from the sqlite3_value structure since some
compilers are unable to deal with it. (CVS 3758)

FossilOrigin-Name: 6b995259bc974519379dee55c1ef00d28c76bf21
2007-03-30 11:23:45 +00:00
drh e4d9081307 Change BtreeMoveto so that it can be biased to the right or to the center.
Use a right bias when appending and a center bias when searching.  This
gives about a 15% reduction in calls to sqlite3VdbeRecordCompare. (CVS 3741)

FossilOrigin-Name: ad4a6b1a91bcefd8a4c75e8dc99c1153c72c31a3
2007-03-29 05:51:49 +00:00
drh 72e8fa42f9 Correctly handle NULLs in IN operators. Ticket #2273.
The changes in where.c and in the WhereLevel.aInLoop structure are
not strictly necessary to fix this problem - they just make the code
easier to read.  Only the change in OP_Next/OP_Prev operator of vdbe.c
is required. (CVS 3735)

FossilOrigin-Name: 26348556d824c032851e409ac510cddb55c200bf
2007-03-28 14:30:06 +00:00
drh fdbcdee5ff The -DSQLITE_OMIT_ATTACH=1 option now omits both the ATTACH and VACUUM
commands. Ticket #2268.
 The regression test suite depends on both of these commands
and will not run if compiled with this option. (CVS 3727)

FossilOrigin-Name: cbebfb89603044e48b3a87b79d1eefbbc5b4c8a5
2007-03-27 14:44:50 +00:00
drh cf64372910 More strict aliasing fixes. The single source file library now runs
successfully with -fstrict-alias. (CVS 3725)

FossilOrigin-Name: c8a8a189a82500aab501e9949f5b197c0b80b3a9
2007-03-27 13:36:37 +00:00
drh 4f0c587819 Modify sources to that they can be combined into a single sqlite3.c source
file.  Eliminate all type-pruned pointer warnings. (CVS 3722)

FossilOrigin-Name: 0b832e218ec12b0eb559e407d80aba6709e2ea85
2007-03-26 22:05:01 +00:00
danielk1977 b69d96d22c Catch an IO error code that was being ignored in OP_RowData. (CVS 3688)
FossilOrigin-Name: 760ebf8076b9cedb614bdc88c72d871c30cc7b94
2007-03-15 12:05:35 +00:00
drh 602c237461 Additional I/O Tracing support. (CVS 3667)
FossilOrigin-Name: ed915f579a8e5b75681a9a6012b5041500cad36c
2007-03-01 00:29:13 +00:00
danielk1977 0817d0dfc2 Use OP_VColumn instead of OP_Column when querying virtual tables for values to save in aggregate context records. #2230. (CVS 3644)
FossilOrigin-Name: cb78f7cb0f0bf0c799a929fd6ea30f25e2a7b5d0
2007-02-14 09:19:36 +00:00
drh 795ab9bbd8 Fix a documentation comment in vdbe.c. Ticket #2188. (CVS 3611)
FossilOrigin-Name: 3eec703beb91be44ded629335001c238052480e7
2007-01-27 13:37:22 +00:00
drh 1dcdbc0639 Limit the number of errors returned by PRAGMA integrity_check to 100 by
default.  Specify an alternative limit using an argument to the pragma.
Ticket #2176. (CVS 3609)

FossilOrigin-Name: d564a039f27be2bb2c3973e79dc99b25869139da
2007-01-27 02:24:54 +00:00
drh f6d8ab87c6 Fix a bug in sqlite3_prepare_v2() introduced by checkin (3578) and reported
on the mailing list. (CVS 3592)

FossilOrigin-Name: 87248470362f444f2339fee18d3624e8544f5256
2007-01-12 23:43:42 +00:00
drh 3c23a88562 When an automatic re-prepare occurs, take care not to reset the internal
schema symbol table.  Ticket #2156.  This change also includes some debugging
enhancements. (CVS 3578)

FossilOrigin-Name: 43fe7fc1c38f8d9b3c1346cb1d890c2e25cefe15
2007-01-09 14:01:13 +00:00
drh 5a91a537db Clear a compiler warning when compiling with -DSQLITE_OMIT_VIRTUALTABLE. (CVS 3566)
FossilOrigin-Name: 520f6583e3467b964dcdba873857ace5a9c4ee19
2007-01-05 16:39:43 +00:00
drh 0bc5370cac Add a comment to vdbe.c to explain the use of an uninitialized variable. (CVS 3551)
FossilOrigin-Name: 1773eb7badf105b0e23316d4236903049c354c71
2007-01-04 01:20:11 +00:00
drh 588f5bc31b Update the vtab_err test to check for -DSQLITE_MEMDEBUG=1 and skip the tests
if missing.  Pager is more careful to clear its file size cache.  Remove
an assert() in VDBE that might fail on a corrupt database file. (CVS 3547)

FossilOrigin-Name: bf1afd016ad71dac90e58540122108f92e77ce3d
2007-01-02 18:41:54 +00:00
drh 644a5299aa The xFilter method is not optional. (CVS 3539)
FossilOrigin-Name: 6fdbd3bc91559ed95314842c0df33adbf276913e
2006-12-20 14:53:38 +00:00
drh 3f87d2a37e Initialize a variable to avoid compiler warnings and human confusion.
Ticket #2117. (CVS 3538)

FossilOrigin-Name: 951af8d5c57d665ee2ad3ee09ce34c023aa9e771
2006-12-20 14:31:24 +00:00
drh 50b3996899 Enhance the optimizer so that IS NULL can use an available index. (CVS 3494)
FossilOrigin-Name: 64762a9d582e4655d6bc5989d8e0ad773d659a7d
2006-10-28 00:28:09 +00:00
drh 0660e26efe Changes directed toward optimizing IS NULL terms in WHERE clauses. (CVS 3492)
FossilOrigin-Name: 4d336e9ef5f65b95959e7d01cd0357d46e9b1fa5
2006-10-27 14:06:57 +00:00
drh ece3c728d0 Be sure to ignore PRAGMA encoding pragmas if the encoding has already been
set for a database.  Ticket #1987.  This patch also includes some cleanup
of the schema parser and initialization logic. (CVS 3436)

FossilOrigin-Name: dc797bf4fa96deabd9ceb6cc062b98d2ac49a574
2006-09-23 20:36:01 +00:00
drh 154d4b2446 Be more aggressive with the SQLITE_OMIT_VACUUM macro. Saves about 150
bytes of code space. (CVS 3432)

FossilOrigin-Name: 7e618db4579d752cc6d775c664c93e141217948f
2006-09-21 11:02:16 +00:00
drh 189d4afaaf Do not call the xDisconnect method on a virtual table while xUpdate is
pending.  Instead, defer the xDisconnect until after xUpdate completes. (CVS 3387)

FossilOrigin-Name: 61148f4c36255c4ed3552f888fa75252b300589d
2006-09-02 20:57:52 +00:00
drh 73bdf07713 Tighten an assert (ticket #1920). Change to "sqlite3.h" from <sqlite3.h>
on the sqlite3ext.h header (ticket #1916).  Fix a bug in the test scripts. (CVS 3354)

FossilOrigin-Name: 3ebedbb6f90ec0f9d3bed181f8fb5366f91fc48c
2006-08-15 14:21:16 +00:00
drh 0f7eb61108 Remove most static and global variables from a pure build. There
are still a number of static and global variables used for testing. (CVS 3342)

FossilOrigin-Name: 76e4d4187779097954038e444111f837737e789c
2006-08-08 13:51:43 +00:00
drh 15ca1df1bf More work toward getting sqlite3_interrupt() to work from separate
threads.  Ticket #1897. (CVS 3336)

FossilOrigin-Name: e431131d47481f9fc64c498e8934b10a96b0a931
2006-07-26 13:43:30 +00:00
drh 881feaa043 Initial attempt at making sqlite3_interrupt() work even when called from
a separate thread. (CVS 3335)

FossilOrigin-Name: 35fd67d7a0c55797eb460e3bd02c96afe619f026
2006-07-26 01:39:30 +00:00
drh 3765df48c3 Changes to get tests to pass with OMIT_VIRTUALTABLE. Ticket #1877. (CVS 3318)
FossilOrigin-Name: 60616496b7d97fdda99262e2bab25e625151e857
2006-06-28 18:18:09 +00:00
danielk1977 65fd59f731 A few more test cases to improve coverage of virtual table module related code. (CVS 3292)
FossilOrigin-Name: 255aa9121a2ef4fec7fa5523e52969acc96f4b40
2006-06-24 11:51:33 +00:00
danielk1977 212b218c88 Allow xDestroy methods to execute "DROP TABLE" statements. (CVS 3287)
FossilOrigin-Name: a56bfa560425a5dc9273229f8838471dfc402024
2006-06-23 14:32:08 +00:00
danielk1977 b7a2f2e8b7 Fix some memory leaks that occur when malloc() fails. (CVS 3286)
FossilOrigin-Name: b56cc035f2be5c1a3f63efbb4c181e405a140fbb
2006-06-23 11:34:54 +00:00