100 check-ins occurring around efa761b2f509844b.

If SQLITE_ENABLE_ZIPVFS is defined, journal_mode=off is configured and a savepoint or statement rollback is attempted, move the pager into the error state to prevent the transaction from being committed. This makes it safe to use journal_mode=off with zipvfs under some conditions.
(check-in: 38d31e18 user: dan tags: trunk)

Fix the extra comments (added with -DSQLITE_ENABLE_EXPLAIN_COMMENTS) so that
the sense of <, <=, >, and >= tests is correct and so that the
SQLITE_STOREP2 version is shown correctly. These changes are already in the
rowvalue branch but are added here since they are technically unrelated to
rowvalue.
(check-in: 4d43c469 user: drh tags: trunk)

Reinstate the mechanism in BETWEEN that avoids evaluating the first expression
more than once, but fix the affinity extractor so that it works with this
mechanism. The de-duplication of the first expression still does not work
for vector expressions, though.
(check-in: 2f39987f user: drh tags: rowvalue)

The docs promise the in "x BETWEEN y AND z" the x expression is only evaluated
once. That is no longer true, and so some tests are failing. This needs to
be fixed before merging to trunk.
(check-in: e50d264f user: drh tags: rowvalue)

Change the way TK_SELECT_COLUMN is handled so that the subquery is only
generated once even if part of the vector comparison is used for indexing
and the other part is now. This change also is a pathway to vector assignment
in UPDATE statements.
(check-in: d8feea7d user: drh tags: rowvalue)

Have the fts5 snippet() function avoid favouring snippets that begin with sentences that do not contain search terms. Add an extra bias in favour of the first sentence in the document.
(check-in: d8180af2 user: dan tags: fts5-snippet-bias)

Add the capability to VACUUM an attached database by specifying the schema
name as an argument to the VACUUM command. Since version 2.0, VACUUM has
accepted an argument which was silently ignored. Now it has meaning.
(check-in: 29d63059 user: drh tags: vacuum-attached-db)

Rename the Db.zName field to Db.zDbSName to make it more descriptive and to
distinguish it from all of the other "zName" variables scattered throughout
the code.
(check-in: 92a22f01 user: drh tags: zDbSName)

Fix a bug in destructor processing of Lemon. That has no impact on the
SQLite grammar. The bug was introduced by prior work to optimize the
Lemon-generated parser used by SQLite.
(check-in: f9035b8e user: drh tags: trunk)

Attempt to simplify the logic and generated code for vector comparisons.
Basic comparison operators are working, but there are many indexing test
failures still to be worked through.
(check-in: dfc028cf user: drh tags: vector-compare)