Back out the "--raw" option on ".read" in the command-line shell. Instead,
fix the command-line shell so that if EOF is reached without seeing a
final semicolon, it goes ahead and passes the accumulated SQL text to
SQLite.
(check-in: f98c8ac8 user: drh tags: trunk)

Add the --raw option to the ".read" dot-command of the command-line shell,
to cause the named file to be read and sent directly into sqlite3_exec()
without any interpretation.
(check-in: 09233770 user: drh tags: trunk)

Break up the sqlite3BtreeMovetoUnpacked() routine into an eponymous routine
and sqlite3BtreeMovetoIntkey(). Each routine specializes in a single kind of
btree.
(Leaf
check-in: 9a64a4f2 user: drh tags: split-moveto)

When doing a REPLACE on a WITHOUT ROWID table with no secondary indexes,
bypass the OP_NoConflict/OP_Delete sequence and directly overwrite any
preexisting row, for a performance increase.
(check-in: f7041cbb user: drh tags: unpacked-IdxInsert)

Comment changes that attempt to better explain the behavior of the "seekResult"
field on VdbeCursor objects and the seekResult parameter to
sqlite3BtreeInsert() and the OPFLAG_USESEEKRESULT flag on insert opcodes.
No changes to code.
(check-in: 345b46be user: drh tags: unpacked-IdxInsert)

Fix an issue that was causing the new database image to be assembled entirely
in heap memory when VACUUMing a database, even if it should use a temp file.
This could cause SQLITE_NOMEM errors when vacuuming very large databases on
32-bit systems.
(check-in: 3fae483f user: drh tags: branch-3.15)

Make sure left-join markings are transferred to the virtual scalar
subexpressions when decomposing a vector comparison in the ON clause of
a LEFT JOIN.
Fix for ticket [fef4bb4bd9185ec8f].
(check-in: aba1e22b user: drh tags: branch-3.15)

If all branches of an OR optimize scan that is the rhs of a LEFT JOIN use the
same index, set the index cursor to return NULL values if there are no matches
for a row on the lhs. Fix for ticket [34a579141b2c5ac](check-in: 54eeddec user: drh tags: branch-3.15)

In the sessions module, avoid recording a change if an UPDATE statement
overwrites a column with REAL affinity containing an integer value with
the same value.
(check-in: 0fc4f0f4 user: drh tags: branch-3.15)

Avoid using the "direct overflow read" optimization to read large blobs if the
pager layer has a wal file open - even if the database header indicates that
the db is not a wal database.
(check-in: 63cfe197 user: drh tags: branch-3.15)

In the command-line shell, fix the .imposter command so that it works
with indexes on expressions. Fix the ".mode quote" mode so that it works
with ".headers ON".
(check-in: ba9873da user: drh tags: trunk)

When the block sorting optimization
is used in a scalar subquery, be sure to exit the loop as soon as the first
valid output row is received. Fix for ticket [cb3aa0641d9a4] backported
to the 3.8.9 branch.
(check-in: 8e4ba115 user: drh tags: branch-3.8.9)

Fix an issue that was causing the new database image to be assembled entirely
in heap memory when VACUUMing a database, even if it should use a temp file.
This could cause SQLITE_NOMEM errors when vacuuming very large databases on
32-bit systems.
(check-in: 30288453 user: dan tags: trunk)

Make sure left-join markings are transferred to the virtual scalar
subexpressions when decomposing a vector comparison in the ON clause of
a LEFT JOIN.
Fix for ticket [fef4bb4bd9185ec8f].
(check-in: 619f5cc7 user: drh tags: trunk)

If all branches of an OR optimize scan that is the rhs of a LEFT JOIN use the
same index, set the index cursor to return NULL values if there are no matches
for a row on the lhs. Fix for ticket [34a579141b2c5ac](check-in: ec9dab80 user: dan tags: trunk)

If all branches of an OR optimize scan that is the rhs of a LEFT JOIN use the
same index, set the index cursor to return NULL values if there are no matches
for a row on the lhs.
(Closed-Leaf
check-in: e7b9bc67 user: dan tags: leftjoin-or-fix)

Enhance the "PRAGMA index_info" and "PRAGMA index_xinfo" statements so that
they work on WITHOUT ROWID tables and provide information about the underlying
index btree that implements the WITHOUT ROWID table.
(Leaf
check-in: fe49fb03 user: drh tags: index-info-on-table)

In the sessions module, avoid recording a change if an UPDATE statement
overwrites a column with REAL affinity containing an integer value with
the same value.
(check-in: 5f3e6028 user: drh tags: trunk)

In the sessions module, avoid recording a change if an UPDATE statement
overwrites a column with REAL affinity containing an integer value with the same value.
(Closed-Leaf
check-in: b861328a user: dan tags: sessions-fix)

Avoid using the "direct overflow read" optimization to read large blobs if the
pager layer has a wal file open - even if the database header indicates that
the db is not a wal database.
(check-in: b54c15f1 user: dan tags: trunk)