Commit Graph

13530 Commits

Author SHA1 Message Date
drh
f34e9aabd8 Enhance fuzzershell to support multiple blocks of SQL, each run in its own
private in-memory database.

FossilOrigin-Name: ab0a96ca73cfe92d5a837c71c148e8361f42acc3
2015-04-20 12:50:13 +00:00
drh
b496a8f547 Add an ALWAYS() around a new branch that was made unreachable by an even
newer change.

FossilOrigin-Name: 592c010478fba7410424f011a62e019c826f1ac3
2015-04-20 01:13:33 +00:00
drh
542a176d5e Fix an off-by-one assert() in the virtual table argument tokenizer.
FossilOrigin-Name: c83052e48bbae0f45db2a44155b4e5482ee4a901
2015-04-19 23:11:10 +00:00
drh
992590be1c Fix a broken assert() and comparison for INSERT INTO ... SELECT when the
SELECT uses an unknown collating sequence.

FossilOrigin-Name: e73ac0cbac257d2d2b28e51423e30d7449b6c7b5
2015-04-19 22:41:22 +00:00
drh
7520996965 Silently ignore parser stack overflow when parsing a malformed schema in
PRAGMA writable_schema mode.

FossilOrigin-Name: 2cb37b959c66b5ae3535ab81ba14a4ebf9732df7
2015-04-19 22:31:45 +00:00
drh
5f1d2fa4d2 Fix another assert() that is not true if the database schema is corrupt.
FossilOrigin-Name: bc97cec6338b16a4e9b1a9457d01bb7fe462934d
2015-04-19 21:59:19 +00:00
drh
33c59ecafb Fix a faulty assert in the schema parsing logic.
FossilOrigin-Name: b1ed949584a2526c04952b98c3aa283427f45e10
2015-04-19 20:39:17 +00:00
drh
d0c7305313 Fix a potential NULL pointer deference on a corrupt database schema.
FossilOrigin-Name: dc61b292d8eaf422ca8a2b18f1caccef1a5389fd
2015-04-19 19:21:19 +00:00
drh
a21f78b93f Bring comments on the INSERT code generator up-to-date. Fix the INSERT code
generator so that it correctly handles inserts from a SELECT into a virtual
table with non-terminal hidden columns.

FossilOrigin-Name: 4ac81fac6c6302c042be3df493a41630b733fff0
2015-04-19 18:32:43 +00:00
drh
816070cf5c The sqlite3_trace() callback does not try to expand parameters in statements
that have no parameter.

FossilOrigin-Name: 917e3c36293a1bf052a16116c93e5037ed712f96
2015-04-18 19:20:14 +00:00
drh
7088d50109 Fix an incorrect assert() statement in the CREATE INDEX code generator.
FossilOrigin-Name: 2eed41fda068f2cbac55e63d7c1875ddaa331508
2015-04-18 17:43:29 +00:00
dan
ea8562edce Ensure that if a "ROLLBACK TO" statement is used to rollback (but not close) theoutermost transaction, the xRollbackTo() method of any virtual tables involved in the transaction is invoked.
FossilOrigin-Name: e98d481d84ef31b6ed154f14deae9b261f722616
2015-04-18 16:25:54 +00:00
drh
935f2e7074 Disregard leading zeros when converting strings to 32-bit integers.
FossilOrigin-Name: 691cc201e135a01c4cc4057be7e5d99285ab392d
2015-04-18 04:45:00 +00:00
drh
c982844097 Fix an incorrect assert() in the sqlite3_trace() logic.
FossilOrigin-Name: eabde33997b5b2ffc0067930305d6fed5951a234
2015-04-18 00:22:17 +00:00
dan
1586699cfc Fix a problem affecting some fts3 UPDATE and DELETE statements on order=DESC tables.
FossilOrigin-Name: 284c1623f81704ef80edb9324954525cb2b72172
2015-04-17 20:51:55 +00:00
drh
7693c42f1a In the expression-tree comparison routine, do not compiler Expr.iColumn
and Expr.iTable for TK_STRING expressions.

FossilOrigin-Name: b67bb16c72c3e015ea82665ada9b5d3289ef6fb2
2015-04-17 19:41:37 +00:00
drh
7b4da150da Always resolve symbols in all ORDER BY clauses of a compound-SELECT, even
illegal ORDER BY clauses.

FossilOrigin-Name: 6c39ef73d5899eabdb46db50c2b00c2d8381a41a
2015-04-17 18:52:37 +00:00
drh
97ab32bcd3 Remove unnecessary parser error count increments. Let the sqlite3ErrorMsg()
take care of doing that.

FossilOrigin-Name: 3f3b0f683af2fbee83811536f6bef770ff919385
2015-04-17 18:22:53 +00:00
drh
c50c8f4043 Remove an ALWAYS() that turns out to be false when there is a semantic
error on a compound SELECT.

FossilOrigin-Name: ad67a67c03078a2bc65d28f2b880b29bf02067c1
2015-04-17 16:12:03 +00:00
drh
d99d28361e Ensure that semantic SQL errors are always reported back up to the syntax
parser.  Also:  Improve the defense against invalid PRAGMA synchronous settings.

FossilOrigin-Name: 7aeade9a07f29bf26e50394042ea18d0121fe7a3
2015-04-17 15:58:33 +00:00
drh
b8289a8b00 Fix a faulty assert() in sqlite3SelectNew().
FossilOrigin-Name: 620d19c3b462f5c4763ebd26513321431f21dd72
2015-04-17 15:16:58 +00:00
drh
268e72f936 Add the tool/fuzzershell.c utility program.
FossilOrigin-Name: db8d9af4d04ee862995ffa13ae6dcd9a1fc72855
2015-04-17 14:30:49 +00:00
drh
50be9c4b28 Fix the header comment on the sqldiff utility program. No code changes.
FossilOrigin-Name: b355ca3a3f617cd6d4c45c8e27ecd75d9e68b792
2015-04-17 12:16:09 +00:00
drh
e318a7f84c Restrict the scope of a local-use function in the parser.
FossilOrigin-Name: cd6598f47480a6189df3e4283231833fd246d7fb
2015-04-16 23:04:17 +00:00
drh
a33b68364b Use a heap rather than a bitmap for cell coverage and overlap testing on
btree pages in PRAGMA integrity_check.

FossilOrigin-Name: e94b2ef2242d716379a35dba3d2df1ac512c8d30
2015-04-16 21:57:37 +00:00
drh
f3151f0a0d Fix a couple of unreachable branches.
FossilOrigin-Name: 8f391dffcfe068d48f854784648610d8a86f6bc8
2015-04-16 20:27:09 +00:00
drh
a4bb7764fe Fix a boundry-value condition in the phrase poslist extractor of FTS3/4.
FossilOrigin-Name: 55d10baf0bffdb1a34bf5627ed8f25e4a4efd942
2015-04-16 20:10:17 +00:00
drh
ab4e7f3337 Make sure all cursors are closed when returning from a VDBE subprogram that
implements a foreign-key construct.

FossilOrigin-Name: d04d354d8e423961c3091b6ebcfbbbf10d3ecb04
2015-04-16 18:11:50 +00:00
drh
6dc4148547 Fix the VDBE so that it always uses the original opcode for profiling and
debugging even after the pOp pointer has been updated due to a jump.

FossilOrigin-Name: 647495cf12b656f6a2f028dc1fb459d667153cf2
2015-04-16 17:31:02 +00:00
drh
a276e3fd4d Fix a faulty assert() in the compound-SELECT code generator.
FossilOrigin-Name: 10715b05f2201a63dca317f99ce39d3ce182e182
2015-04-16 16:22:27 +00:00
drh
59ac655d02 Silently ignore requests to change the PRAGMA synchronous setting to an
illegal integer value, rather than raising an assertion.

FossilOrigin-Name: e0a88176fcfbed7b554a036948261a332c920053
2015-04-16 16:04:39 +00:00
drh
e06874eaa1 Make sure errors in coding triggers are propagated back up to the parser.
FossilOrigin-Name: 928f973ca9adc7933015b2fb6b6fcb8e3154cb9c
2015-04-16 15:47:06 +00:00
drh
9569f60e18 Add the --backslash option to the command-line shell for testing purposes.
FossilOrigin-Name: dd96211e8022365637286b146120cc5db44a9923
2015-04-16 15:05:04 +00:00
drh
6736618a8f Fix a faulty assert() in the compound select code generator.
FossilOrigin-Name: 9d336be1b16aa9bd5c9e4132bb645874993c7d96
2015-04-16 14:33:35 +00:00
drh
772460fd4c Improvements to the way VALUES clauses are parsed.
FossilOrigin-Name: ec5a493ad27593ca78899b3001630c1898b940ff
2015-04-16 14:13:12 +00:00
drh
b073771cdf Fix the corruptC.test module due to a change in error message text.
FossilOrigin-Name: 7c0deed25762a954c78d98412d8f4a265a437d06
2015-04-16 12:12:07 +00:00
drh
67731a97a2 Use a heap instead of a bitmap for cell overlap and coverage testing of
btree pages in PRAGMA integrity_check.

FossilOrigin-Name: 5619c959bf7babb19fd8ba8b228be7f090fe0ce3
2015-04-16 11:56:03 +00:00
dan
0d2e2f2b10 Fix a problem in test file e_reindex.test.
FossilOrigin-Name: 5b3de9390f2ffc4c530fd47c71c70e87972cf74b
2015-04-16 08:54:01 +00:00
dan
5b1c07e7fb Ensure the sqlite3Select() routine always returns non-zero if an error has occurred.
FossilOrigin-Name: b51028ed2f57f4245a7ebd9bdb99d1bcfaf1a01b
2015-04-16 07:19:23 +00:00
drh
22ecef5c20 When parsing the schema, ignore any SQL that does not begin with "CREATE".
FossilOrigin-Name: d3c00d61581c8ba6dce5618391432d3af8d324d4
2015-04-16 00:26:03 +00:00
drh
4b608038b0 Fix a potential one-byte buffer overread in the command-line shell.
FossilOrigin-Name: e018f4bf1f27f7838342940ad89a12d7f1536e8e
2015-04-15 19:25:25 +00:00
drh
f3392e32c7 Prevent the fetchPayload() routine from reporting a cell size that extends
off the end of the page on a pathologically corrupted database file.

FossilOrigin-Name: f71053cf658b3260a32ac06f8ba5c2cde0ea54dd
2015-04-15 17:26:55 +00:00
drh
748c7357ab Enhance the showdb utility program so that it can read the last partial page
of a truncated database file.

FossilOrigin-Name: 61d72e17916bc043ce53c64e5ba7050a9bae554e
2015-04-15 15:29:05 +00:00
drh
a9de561b21 Add the --msvc command-line option to the releasetest.tcl script. This is
only a partial merge from the winTest branch as the OS_TRACE changes are
omitted.

FossilOrigin-Name: b8768f124ef7d79e500b60a3ede288d46a0f529d
2015-04-15 14:52:05 +00:00
dan
0d01ec8de8 Remove an incorrect assert() statement from sqlite3Fts3Dequote().
FossilOrigin-Name: bd06eeb8d06237dc2d54d8a03e8bf525cb811c9e
2015-04-15 09:16:39 +00:00
drh
0be0cf6721 Remove a branch that became unreachable due to one of the earlier check-ins
today.

FossilOrigin-Name: fa0956edf866f48f448967836709a3ad822ff917
2015-04-15 08:37:42 +00:00
dan
2deb12be2b Fix a problem causing an assert() to fail if a snippet containing 0 tokens was requested from fts3.
FossilOrigin-Name: eafd0a1e3f25f38d551603f177ff4634cf79de77
2015-04-15 08:20:50 +00:00
drh
347bdc39a7 Fix the error message generator for illegal token errors so that it does not
leak memory if it immediately follows another erroneous SQL statement.

FossilOrigin-Name: 3576973f8b88b6109fbefdebfa53468ffa137009
2015-04-15 07:57:27 +00:00
drh
29031837c1 Remove an incorrect ALWAYS() from the automatic index generator.
FossilOrigin-Name: eeb4bd06bf69e411736cc6077d1d64af6bd8fb09
2015-04-15 07:34:25 +00:00
drh
1b6789697d Remove an incorrect ALWAYS() from the table_info pragma.
FossilOrigin-Name: 0e087c0183bc7a758cf2a1d39158bc24fde833a2
2015-04-15 07:19:27 +00:00