/ Timeline
Login

139 check-ins using file src/parse.y version d79001da

2018-01-06
13:33
Fix the appendvfs so that it leaves sqlite3_file->pMethods as NULL if it fails to open. Closed-Leaf check-in: 46b341e3 user: drh tags: appendvfs
04:34
Add sqltclsh.exe to the windows makefile. check-in: a6d5c7c2 user: drh tags: appendvfs
2017-12-30
18:32
Have zipfile support DELETE commands. check-in: 01d4e866 user: dan tags: sqlar-shell-support
14:26
Rearrange things a bit so that writing to a zipfile does not invert the order of objects it contains. check-in: f69e8194 user: dan tags: sqlar-shell-support
2017-12-29
20:19
Update ext/misc/zipfile.c to support creating and adding entries to existing zip archives. check-in: 2dec2dec user: dan tags: sqlar-shell-support
2017-12-27
21:13
Improve the shell tool ".ar --list --verbose" command. check-in: b64681a6 user: dan tags: sqlar-shell-support
18:54
Have the shell tool ".ar --list" and ".ar --extract" commands support zip files. Currently the "-zip" switch is required. check-in: a532a0f6 user: dan tags: sqlar-shell-support
18:19
Enhance the Lemon parser generator so that it creates a faster parser at the cost of slightly larger parser tables. Add the ability to measure coverage of the generated state machine when compiling with the -DYYCONVERGE option. In SQLite, add the SQLITE_TESTCTRL_PARSER_COVERAGE test-control to query the new parser coverage feature. check-in: 1b22b42e user: drh tags: trunk
17:36
The previous check-in had an error in the coverage reporting logic. Closed-Leaf check-in: ec9b19eb user: drh tags: lemon-improvements
17:14
Change the coverage measurement logic in the lemon-generated parser so that it only checks for coverage of state/lookahead pairs that are valid syntax. It turns out that some states are unreachable if the lookahead is not valid syntax, because the states are only reachable through a shift following a reduce, and the reduce does not happen if the lookahead is a syntax error. check-in: 9dce4650 user: drh tags: lemon-improvements
16:13
In the lemon-generated parser, do not report the End-of-input character and the wildcard character as missed coverage. check-in: 3fe96487 user: drh tags: lemon-improvements
15:21
In LEMON, fix an off-by-one error that can make the lookahead table one byte too smal. check-in: 93792bc5 user: drh tags: lemon-improvements
2017-12-26
20:39
Add new file ext/misc/zipfile.c, containing a virtual table for read-only access to simple zip archives. check-in: 8e366b99 user: dan tags: sqlar-shell-support
18:32
Change the lemon-parser coverage report format to report all state/lookahead pairs and indicate on each whether it is hit or missed. check-in: 86e30fc2 user: drh tags: lemon-improvements
18:14
Merge bug fixes from trunk. check-in: d76e1206 user: drh tags: lemon-improvements
18:04
Add support for measuring and reporting coverage of the parser state machine using the SQLITE_TESTCTRL_PARSER_COVERAGE test-control. check-in: 1253a872 user: drh tags: lemon-improvements
14:46
Faster and smaller implementation of sqlite3AtoF() based on a suggestion from Cezary H. Noweta. check-in: fd2e0e7a user: drh tags: trunk
14:32
Fix crashes that could occur if SQL NULL values were passed to the built-in FTS5 snippet function. Edit: breaks amalgamation builds. check-in: 6a790b67 user: dan tags: trunk
14:30
Add options to speedtest1.c and speed-check.sh for testing performance of floating-point computatations. check-in: ebfea872 user: dan tags: trunk
14:12
Add options to speedtest1.c and speed-check.sh for testing performance of floating-point computatations. Closed-Leaf check-in: b3c61051 user: drh tags: mistake
14:11
Fix crashes that could occur if SQL NULL values were passed to the built-in FTS5 snippet function. Edit: breaks amalgamation builds. check-in: 553a3ad3 user: dan tags: mistake
2017-12-25
13:43
Fix an assertion fault on a syntax error input caused by check-in [6b2ff26c25bb9da3]. Problem discovered by OSSFuzz. check-in: 90d6e4f1 user: drh tags: trunk
04:15
Enhance LEMON so that it generates the action table in such a way that no range check is needed on the lookahead table to verify that the next input token is valid. This makes the lookahead table slightly larger (about 120 bytes) but helps the parser to run faster. check-in: 7eb0198d user: drh tags: lemon-improvements
00:10
In the LEMON-generated parser, avoid unnecessary tests for the acceptance state. check-in: fdbb35c5 user: drh tags: lemon-improvements
2017-12-24
23:38
In the LEMON-generated parser, rearrange the meanings of integer action codes so that reduce actions occur last. This means that the most common case (reduce actions) can be recognized with a single comparison operation, thus speeding up the main parser loop, slightly. check-in: 7bfe7a36 user: drh tags: lemon-improvements
18:56
Fix a NULL pointer dereference after a syntax error that can occur as a result of check-in [6b2ff26c25bb9da3] yesterday. This problem was discovered by the OSSFuzz. check-in: d49afb8f user: drh tags: trunk
17:06
Improved parser tracing output. check-in: 25be5750 user: drh tags: lemon-improvements
2017-12-23
18:40
Merge recent enhancements from trunk. check-in: edceaccd user: drh tags: appendvfs
18:34
Merge enhancements from trunk. check-in: 150f07fe user: drh tags: sqlar-shell-support
14:39
Simplification to the error handling logic in the extension loader. check-in: 07c77314 user: drh tags: trunk
13:55
Improve the error message that comes back when sqlite3_load_extension() fails because the named file exists but is not a valid shared library. check-in: 05fee1a2 user: drh tags: trunk
12:33
Move the generation of output column names earlier in the case of a CREATE TABLE AS. This is a fix for ticket [3b4450072511e62] and a continuation of check-in [ade7ddf1998190b2b63] that fixes cases of ticket [de3403bf5ae5f72ed6] that were missed previously. check-in: 6b2ff26c user: drh tags: trunk
11:51
Add a SELECTTRACE() macro to indicate when column names are assigned to a SELECT statement. This helps with debugging for tickets like [de3403bf5ae5f72e] and [3b4450072511e621]. check-in: 8f194008 user: drh tags: trunk
2017-12-22
19:53
In the sqlite3TreeViewExprList() routine, show the "AS" alias name for each expression in the list, if it exists. check-in: 5efd854f user: drh tags: trunk
00:52
Modify the new sqlite3_vtab_collation() interface so that it takes a pointer to the sqlite3_index_info object passed into xBestIndex rather than an sqlite3 connection pointer, which the xBestIndex method might not have access to. check-in: 5c1fe666 user: drh tags: trunk
2017-12-21
21:41
Fix SQLITE_DBCONFIG_TRIGGER_EQP so that it works even if SQLITE_DEBUG is not defined. check-in: afbbfff7 user: drh tags: trunk
21:02
Add the ".eqp trigger" option to the ".eqp" command in the command-line shell. Implemented using the new SQLITE_DBCONFIG_TRIGGER_EQP control. check-in: 2c51644a user: drh tags: trunk
18:55
Add the ".expert" command to the shell tool's ".help" output. check-in: fc6193af user: dan tags: trunk
18:23
Change the name of SQLITE_DBCONFIG_FULL_EQP to be SQLITE_DBCONFIG_TRIGGER_EQP (which we can do without breaking compatibility because the former name has not yet appeared in an official release) and streamline its implementation. check-in: fffc7685 user: drh tags: trunk
14:46
Add the SQLITE_DBCONFIG_MAX preprocessor macro which will always be equal to the largest SQLITE_DECONFIG value. check-in: 95d41033 user: drh tags: trunk
02:17
Add the experimental ".expert" command to the sqlite3.exe shell. check-in: 0821bae7 user: drh tags: trunk
2017-12-20
23:46
Lowercase local variable names in the SHA3 extension in order to avoid collisions with macros in termios.h. check-in: 3ec73711 user: drh tags: trunk
2017-12-19
18:56
Fix crash in sqlite3_vtab_collation() when called for an IS NOT NULL constraint. check-in: ad38d2c4 user: dan tags: trunk
17:42
Experimentally add the SQLite expert functionality to the shell tool. Closed-Leaf check-in: 51068dba user: dan tags: expert-in-shell
2017-12-16
20:20
Add an experimental location(X) SQL function that attempt to return the location of the payload within the database for the record that contains column X. location(X) returns NULL if X is not an ordinary table column or if SQLite cannot figure out the location because it is using a covering index. check-in: 51be9558 user: drh tags: location-function
19:36
Add the sqlite3_vtab_collation() function, which allows an xBestIndex callback to determine the collation sequence that SQLite will use for a comparison. And the SQLITE_DBCONFIG_FULL_EQP configuration option, which enhances the output of "EXPLAIN QUERY PLAN" so that it includes statements run by triggers. And the code for the sqlite3_expert extension and command line application. check-in: 4c782c95 user: dan tags: trunk
19:16
Merge latest trunk changes into this branch. Closed-Leaf check-in: d5b597b5 user: dan tags: schemalint
19:11
Do not use the compress() and uncompress() functions in ext/misc/compress.c - they are not quite compatible with the spec. Instead use new functions in ext/misc/sqlar.c. check-in: 7652b3c2 user: dan tags: sqlar-shell-support
04:37
Add unnecessary initializations to some local variables in the rtree module to suppress false-positive compiler warnings coming out of MSVC. check-in: 64487d65 user: drh tags: trunk
2017-12-15
20:21
Enhance the "swarmvtab" extension. See header comments in ext/misc/unionvtab.c for details. check-in: 01c17365 user: dan tags: trunk
12:22
In the LEMON parser generator, provide reduce actions with access to the lookahead token. check-in: 42af190f user: drh tags: trunk
2017-12-14
19:24
Fixes to the appendvfs.c extension. Add the "sqltclsh" application that uses appendvfs.c to find its scripts. check-in: ee248b52 user: drh tags: appendvfs
19:15
Have the writefile() function optionally set the modification-time of the files it writes or creates. And many small fixes to the new code on this branch. check-in: 7b51269c user: dan tags: sqlar-shell-support
16:57
The "apndvfs" VFS shim now appears to be working for both reads and writes. check-in: 7f7b72d8 user: drh tags: appendvfs
16:28
Add the ability to write to an appended database. This check-in compiles but is otherwise untested. check-in: e343c63c user: drh tags: appendvfs
15:40
Improve error and usage messages output by the shell ".ar" command. check-in: b9d2d5d9 user: dan tags: sqlar-shell-support
14:50
Bring in the latest trunk changes. check-in: 75d85177 user: drh tags: appendvfs
13:55
Merge latest trunk changes into this branch. check-in: 803156cb user: dan tags: sqlar-shell-support
2017-12-13
23:47
In valueFromExpr() only generate a OOM fault if there have been no prior faults. check-in: 3765aaf7 user: drh tags: trunk
22:42
Add support for the 'lsm1.c' target in the MSVC makefile. check-in: 6de21dea user: mistachkin tags: trunk
20:35
An improved way of generating the SQLITE_READONLY_DIRECTORY error. The error message submitted to sqlite3_log() is still correct this way. check-in: 1c0aa919 user: drh tags: trunk
20:17
Add the shell tool ".ar --update" command. check-in: 825e3c03 user: dan tags: sqlar-shell-support
20:04
Add support for the "--list" command. And for arguments to the "--extract" command. check-in: 32c4fa25 user: dan tags: sqlar-shell-support
20:02
New result code SQLITE_READONLY_DIRECTORY is returned when an attempt is made to write on a database file that is in a read-only directory and hence the journal file could not be created. This situation formerly returned SQLITE_CANTOPEN, which less helpful. check-in: 3ec73c38 user: drh tags: trunk
18:01
Correctly invalidate a column cache line when it is overwritten with NULL. Fix for ticket [123c9ba32130a6c9d432]. check-in: 65754dc3 user: drh tags: trunk
15:32
Change some LSM code internal typenames from "Blob" and "Pgno" to "LsmBlob" and "LsmPgno". This allows the LSM code to be compiled as a single unit with sqlite3.c. check-in: 30bf38d5 user: dan tags: trunk
14:22
Add script to amalgamate all LSM files into "lsm1.c". check-in: e32b69d7 user: dan tags: trunk
10:11
Minor enhancement to two assert() statements in the default VFSes. check-in: 9cede8a8 user: drh tags: trunk
2017-12-12
20:28
Add tests and fixes for the shell ".ar" command -f option. check-in: 1a986797 user: dan tags: sqlar-shell-support
20:04
Add support for parsing options in non-traditional tar form to the ".ar" command. Have writefile() attempt to create any missing path components. And not to throw an exception if it is called to create a directory that already exists. check-in: 38dbeb1e user: dan tags: sqlar-shell-support
2017-12-11
20:22
Enhance virtual table "fsdir" in ext/misc/fileio.c. Add support for "-C" to the shell command's ".ar c" command. check-in: 0394889a user: dan tags: sqlar-shell-support
17:20
Fix a buffer overwrite in fts5 that could occur when processing a prefix query. check-in: 92fc146b user: dan tags: trunk
2017-12-09
18:28
Add support for -C to ".ar x". check-in: 8cd70960 user: dan tags: sqlar-shell-support
17:58
Improve parsing of ".ar" commands. Add new test file for the same. check-in: 840401cc user: dan tags: sqlar-shell-support
01:02
Fix a harmless API signature mismatch in the unix VFS. check-in: bab9de7f user: drh tags: trunk
2017-12-08
19:37
The query planner tries to avoids using indexes that use unknown collating functions. check-in: 02013fc1 user: drh tags: trunk
16:23
Add compile time switch SQLITE_ENABLE_ICU_COLLATIONS. For enabling ICU collations without also enabling the tokenizer, the LIKE operator, the REGEXP operator, or the unicode aware upper()/lower() scalar functions. check-in: a079f914 user: dan tags: trunk
14:07
Make sure the bComplex variable in sqlite3DeleteFrom() is initialized when compiling with -DSQLITE_OMIT_TRIGGER. check-in: e526d0c4 user: drh tags: trunk
2017-12-07
22:10
When doing a table scan using an index, do not error out if collating functions used by that index are unavailable, since they will not be used. check-in: bbd69fa6 user: drh tags: trunk
22:04
Fix typo in comment. No changes to code. check-in: 95958b60 user: mistachkin tags: trunk
21:03
Add the ".ar x" command to the shell. For extracting the contents of sqlar archives. check-in: 0cc699d1 user: dan tags: sqlar-shell-support
16:51
Fix harmless compiler warnings in the rot13 extension. check-in: 11347077 user: drh tags: trunk
15:44
Begin adding support for the sqlar archive format to shell.c. There is no "extract" command so far, only "create". check-in: c9827a01 user: dan tags: sqlar-shell-support
13:15
Updates to the main README.md file. check-in: 6bfafc35 user: drh tags: trunk
2017-12-06
20:50
Fix an unreachable branch in cases when SQLITE_ENABLE_STAT4 is not defined. check-in: 6a55bd67 user: drh tags: trunk
2017-12-05
19:07
For MSVC, simplify default locations for Tcl and ICU by using directories inside 'compat'. check-in: 8155b5ac user: mistachkin tags: sqlar-shell-support
18:54
Add support for including zlib in the shell when compiling with MSVC. check-in: e1838cee user: mistachkin tags: sqlar-shell-support
18:32
If SQLITE_HAVE_ZLIB is defined at build-time, include the functions in ext/misc/compress.c in the shell. check-in: 0296286a user: dan tags: sqlar-shell-support
15:00
Merge latest trunk changes, including the compilation fix for builds that define both SQLITE_ENABLE_MULTITHREADED_CHECKS and SQLITE_ENABLE_API_ARMOUR. check-in: 2cb5d2a9 user: dan tags: apple-osx
14:58
Fix a compilation problem when both SQLITE_ENABLE_MULTITHREADED_CHECKS and SQLITE_ENABLE_API_ARMOUR are defined. check-in: 0342ce51 user: dan tags: trunk
2017-12-01
18:40
Fix the ".lint fkey-indexes" shell command so that it works with WITHOUT ROWID tables. check-in: 5771b1d6 user: dan tags: trunk
2017-11-30
11:21
Fix some minor problems in test scripts. check-in: 4c551fde user: dan tags: trunk
07:56
Merge latest trunk changes, including the fixes for test file walprotocol.test. check-in: b425b998 user: dan tags: apple-osx
07:55
Update test file walprotocol.test to account for the changes in the wal locking protocol. check-in: 64e56700 user: dan tags: trunk
2017-11-29
16:16
Merge latest trunk changes into this branch. check-in: 373fa21b user: dan tags: schemalint
2017-11-28
20:43
Fix an assertion fault found by OSSFuzz. check-in: 75d69987 user: dan tags: trunk
13:48
Merge the snapshots-always-lock-the-wal-file change into this branch. check-in: 3ec976e0 user: dan tags: apple-osx
13:39
Lock the wal file for all snapshot transactions, even if they would not otherwise require this, preventing checkpointers and writers from wrapping the wal file. This means that if one connection has an open snapshot transaction it is guaranteed that a second connection can open a transaction on the same snapshot. check-in: b81a3149 user: dan tags: trunk
08:08
Merge latest trunk changes, including the SQLITE_ENABLE_MULTITHREADED_CHECKS feature, into this branch. check-in: 1fd10349 user: dan tags: apple-osx
07:52
Add experimental feature to detect threading bugs in apps that use SQLITE_CONFIG_MULTITHREADED. Enabled at compile time using SQLITE_ENABLE_MULTITHREADED_CHECKS. check-in: 40b598c8 user: dan tags: trunk
07:47
Use a symbolic constant instead of a literal (-1) to identify a warn-on-contention mutex. Closed-Leaf check-in: 12a23c0a user: dan tags: multithreaded-checks
02:47
Add the "PRAGMA table_ipk(TABLE)" command for evaluation purposes. Leaf check-in: 2494132a user: drh tags: pragma-table-ipk
00:52
Update tests to deal with SQLITE_FAST_SECURE_DELETE. check-in: e6b89304 user: drh tags: trunk
2017-11-27
17:56
Fix a faulty NEVER assert() that could fail for SQLITE_ENABLE_STAT4 builds that use foreign keys. check-in: 465350e5 user: dan tags: trunk
2017-11-26
02:14
Fix an CSV output quoting problem in the command-line shell on Windows. check-in: 6500cdbd user: drh tags: trunk
2017-11-25
21:09
Fix builds with both SQLITE_ENABLE_MULTITHREADED_CHECKS and SQLITE_THREADSAFE=0 defined. check-in: 7d0b12fc user: dan tags: multithreaded-checks
17:51
Add experimental feature to detect threading bugs in apps that use SQLITE_CONFIG_MULTITHREADED. Enabled at compile time using SQLITE_ENABLE_MULTITHREADED_CHECKS. check-in: a66886ac user: dan tags: multithreaded-checks
2017-11-24
19:24
Add the "^" syntax from fts3/4 to fts5. check-in: 24d7058e user: dan tags: trunk
16:55
Enhance the configure script to detect zLib. check-in: e3b6e220 user: drh tags: trunk
2017-11-23
04:45
Fix a problem in the omit-table-from-left-join optimization from check-in [0cd82ee9a8413cf] that was discovered by OSSFuzz. check-in: b016c28f user: drh tags: trunk
00:45
Completely disable the skip-ahead-distinct optimization for all but the inner-most loop of a DISTINCT join. Fix for ticket [ef9318757b152e3a26e9592] check-in: b7595cf2 user: drh tags: trunk
2017-11-21
23:47
An experimental optimization to DISTINCT that causes an immediate exit of the inner loop of a join following each output row if the inner loop does not contribute any columns to the result set. Leaf check-in: a33f88ac user: drh tags: distinct-early-out
23:38
Fix the skip-ahead-distinct optimization on joins for cases there the table in the inner loop of the join does not contribute any columns to the result set. Proposed fix for ticket [ef9318757b152e3a2] check-in: 2dcef5a9 user: drh tags: trunk
21:15
Fix typo in the Makefiles for MSVC. check-in: 17dd2f73 user: mistachkin tags: trunk
21:14
Fix compilation issue (C99-ism) in the shell seen with MSVC. check-in: 9cb47430 user: mistachkin tags: trunk
20:53
Update the omit-table-from-left-join optimization so that it can omit tables from the middle of the join as well as the end. check-in: 0cd82ee9 user: dan tags: trunk
19:22
Update the omit-table-from-left-join optimization so that it can omit tables from the middle of the join as well as the end. Closed-Leaf check-in: 618ca9fe user: dan tags: left-join-optimization
2017-11-20
15:46
Fix a problem preventing the planner from identifying scans that visit at most one row in cases where that property is guaranteed by a unique, not-null, non-IPK column that is the leftmost in its table. check-in: 7fdb1e2a user: dan tags: trunk
15:45
Fix a typo in a test script on this branch. Closed-Leaf check-in: bff5dcfd user: dan tags: left-join-omit-fix
14:40
Fix a problem preventing the planner from identifying scans that visit at most one row in cases where that property is guaranteed by a unique, not-null, non-IPK column that is the leftmost in its table. check-in: 299d7ca5 user: dan tags: left-join-omit-fix
2017-11-18
18:07
Enhance the log messages produced in some cases if database corruption is encountered by an SQLITE_DEBUG build. check-in: ee840a76 user: dan tags: trunk
17:30
Enhance the log messages produced in some cases if database corruption is encountered by an SQLITE_DEBUG build. Closed-Leaf check-in: 23a31280 user: dan tags: sqlite-corrupt-page
2017-11-17
21:01
Improved fix for ticket [da78413751863] that does not require disabling the query flattener as was done in [005d5b870625]. This also makes the code generator for vector IN operators a little easier to understand. check-in: 723f1be3 user: drh tags: trunk
20:22
Add missing entry for SQLITE_IOERR_VNODE to the switch statement in sqlite3ErrName(). check-in: e2b3e335 user: dan tags: apple-osx
20:16
Add an 'extern "C"' wrapper to sqlite3_private.h. check-in: 97ab1efe user: dan tags: apple-osx
20:10
Merge test script fixes from trunk into this branch. check-in: 32f5f461 user: dan tags: apple-osx
20:07
Add some missing "finish_test" lines to the end of test scripts. check-in: c21406ab user: dan tags: trunk
17:32
New assert() statements in the rowvalue IN expression processing. check-in: 00c32831 user: drh tags: trunk
15:02
Clarification of comments on sqlite3FindInIndex(). No changes to code. check-in: 071cabd2 user: drh tags: trunk
13:23
Merge latest changes from trunk, including the temporary db/ATTACH/master-journal fix. check-in: 162c7543 user: dan tags: apple-osx
13:21
Do not count temporary databases that have been attached using ATTACH when figuring out if a master-journal file is required by a transaction. check-in: 93e012a3 user: dan tags: trunk
08:20
Avoid creating a master journal if all or all but one of the databases in the transaction is a temp file. Closed-Leaf check-in: 355d1232 user: dan tags: master-journal-temp-files
2017-11-16
20:48
In the LSM extension, ensure that empty space on pages is zeroed before they are written to disk. This helps with compressed databases, and stops valgrind complaining about uninitialized bytes and write(). check-in: 5ffec5db user: dan tags: trunk
19:17
Merge the latest changes, and the stmtvtab1.test fix, from trunk. check-in: 85247880 user: drh tags: apple-osx
19:04
Add a missing "finish_test" to the end of the stmtvtab1.test script. check-in: e0b5c058 user: drh tags: trunk
2017-11-15
19:14
Futher improvements to the .testctrl interface in the shell. check-in: 1ca3b8cc user: drh tags: trunk
17:07
UI improvements on the .testctrl dot-command in the shell. check-in: 5d66219c user: drh tags: trunk
16:29
Merge all the latest changes from trunk. check-in: 1a1a73b8 user: drh tags: appendvfs
2017-11-14
23:48
In the parse tree, combine LIMIT and OFFSET into a single expression rooted on a TK_LIMIT node, for a small code size reduction and performance increase, and a reduction in code complexity. check-in: 3925facd user: drh tags: trunk