In the 'fileio' extension code for Win32, use the FILE_FLAG_BACKUP_SEMANTICS flag when setting the file times, just in case the file is actually a directory.
check-in: 4f344406 user: mistachkin tags: sqlar-shell-support

Simplify the "sqlite3" command in the TCL interface. The filename is now
optional. There is a new --memdb option with an argument that is the blob
to which the database content should be initialized.
check-in: 47398ae7 user: drh tags: memdb

Add support for the "memdb" VFS and the sqlite3_memdb_ptr() and
sqlite3_memdb_config() interfaces, to enable an SQLite database to be
manipulated as an in-memory object.
check-in: fb2ac2d2 user: drh tags: memdb

The ".schema" command in the command-line shell now shows the structure of
table-valued functions and eponymous virtual tables if they are named on the
".schema" command line. Example: ".schema sql%" shows the structure of
the "sqlite_dbstat" and "sqlite_stmt" virtual tables.
check-in: f80f6651 user: drh tags: trunk

Add support for the sqlite_unsupported_offset() SQL function if and only
if compiled using -DSQLITE_ENABLE_OFFSET_SQL_FUNC. Use that definition
when compiling the command-line shell.
check-in: 4f1f1f52 user: drh tags: trunk

Change the function name to sqlite_unsupported_offset(X). Only enable the
function if compiled with -DSQLITE_ENABLE_OFFSET_SQL_FUNC. The makefiles add
that definition to shell builds.
check-in: 7a7f826e user: drh tags: location-function

Enhance location(X) so that it works with indexes and WITHOUT ROWID tables.
The function might return an offset to the main table or to an index,
depending on whether the column X would be loaded from the main table or
from the index.
check-in: dd94d6a8 user: drh tags: location-function

The output of sqlite3_trace() now shows each command of a trigger as it is
evaluated. This feature involved major changes to the parser, such as
removing the ExprSpan object and replacing it with a new mechanism for
capturing the original SQL text of phrases in the input SQL.
check-in: 0fdf97ef user: drh tags: trunk

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Remove some branches in walTryBeginRead() that were
added by check-in [ce5d13c2de] but became unreachable with the addition
of logic in check-in [18b26843] that enabled read-only clients to parse
the WAL file into a heap-memory WAL-index, thus guaranteeing that the
WAL-index header is always available.
check-in: 9c6b38b9 user: drh tags: readonly-wal-recovery

Disallow ORDER BY and LIMIT on UPDATE and DELETE of views and WITHOUT ROWID
tables. This is a temporary fix for ticket [d4beea1633f1b88f] until a better
solution can be found.
check-in: 62fe56b5 user: drh tags: trunk

Handle the race condition that may occur if another process connects and then
checkpoints and truncates the wal file while a readonly-shm client is building
its heap-memory wal-index.
check-in: 5a6703fc user: dan tags: readonly-wal-recovery

Enhance the checkindex.c virtual table so that it will output the
index_name and after_key parameters. Also add a new diagnostic output
column named scanner_sql which shows the SQL statement used to implement
the current index scan.
check-in: 32e2520c user: drh tags: trunk

On unix, if the *-shm file cannot be opened for read/write access, open it
read-only and proceed as if the readonly_shm=1 URI option were specified.
check-in: ba718754 user: dan tags: readonly-wal-recovery

This page was generated in about
0.012s by
Fossil 2.10 [b94e15cff7] 2019-09-13 13:54:36