1. 18 Apr, 2016 3 commits
  2. 17 Apr, 2016 1 commit
  3. 24 Mar, 2016 2 commits
    • Nick Kralevich's avatar
      Merge "enable secure_delete by default" · fd5b41ae
      Nick Kralevich authored
      fd5b41ae
    • Daniel Micay's avatar
      enable secure_delete by default · 97ef26ef
      Daniel Micay authored
      This sanitizes deleted data by overwriting it with zeroes, rather than
      having it persist within SQLite's free list. In some cases, the data may
      end up persisting on the underlying storage due to wear levelling but
      only a process with direct access to block devices would be able to
      access it.
      
      This can be disabled via `PRAGMA SECURE_DELETE = 0;` for niches where
      deletion throughput is more important than enhanced privacy. The
      performance impact is very small unless large strings and blobs are
      being deleted. Android itself doesn't have any uses where disabling it
      would make sense, and very few apps will be negatively impacted. As a
      data point, Chromium and Firefox already use this for their own
      databases.
      
      Change-Id: I07f0e1584f0b2405f080198ad7b1f4e7ed7f68fb
      97ef26ef
  4. 11 Jan, 2016 1 commit
  5. 08 Jan, 2016 1 commit
  6. 24 Dec, 2015 1 commit
  7. 23 Dec, 2015 3 commits
    • Nick Kralevich's avatar
      sqlite: upgrade to SQLite 3.9.2 · 253ed64d
      Nick Kralevich authored
      Downloaded from https://www.sqlite.org/2015/sqlite-amalgamation-3090200.zip
      
        $ sha256sum sqlite-amalgamation-3090200.zip
        567139c94375e3808a11f34d81f534d0c257e2c498cddbf4cac283d74b51fe9c  sqlite-amalgamation-3090200.zip
      
      dist/orig contains the stock sqlite3 code, as packaged in the ZIP file above.
      
      dist contains a copy of dist/orig, but with the Android.patch file applied.
      Please see Android.patch for a list of differences between stock and
      Android.
      
      One Android specific patch failed to apply cleanly. However, this patch was
      a whitespace only patch, so it has been dropped from Android.patch. All
      other android specific patches applied cleanly.
      
      Changes since 3.8.10.2 (from https://www.sqlite.org/changes.html):
      
        2015-11-03 (3.9.2)
      
        * Fix the schema parser so that it interprets certain (obscure and ill-formed)
        CREATE TABLE statements the same as legacy. Fix for ticket ac661962a2aeab3c331
        * Fix a query planner problem that could result in an incorrect answer due to
        the use of automatic indexing in subqueries in the FROM clause of a correlated
      
        2015-10-16 (3.9.1)
      
        * Fix the json1 extension so that it does not recognize ASCII form-feed as a
        whitespace character, in order to comply with RFC-7159. Fix for ticket
        57eec374ae1d0a1d
        * Add a few #ifdef and build script changes to address compilation issues that
        appeared after the 3.9.0 release.
      
        2015-10-14 (3.9.0)
      
        Policy Changes:
      
        The version numbering conventions for SQLite are revised to use the emerging
        standard of semantic versioning.
      
        New Features And Enhancements:
      
        * Added the json1 extension module in the source tree, and in the amalgamation.
        Enable support using the SQLITE_ENABLE_JSON1 compile-time option.
        * Added Full Text Search version 5 (FTS5) to the amalgamation, enabled using
        SQLITE_ENABLE_FTS5. FTS5 will be considered "experimental" (subject to incompatible
        changes) for at least one more release cycle.
        * The CREATE VIEW statement now accepts an optional list of column names following
        the view name.
        * Added support for indexes on expressions.
        * Added support for table-valued functions in the FROM clause of a SELECT statement.
        * Added support for eponymous virtual tables.
        * A VIEW may now reference undefined tables and functions when initially created.
        Missing tables and functions are reported when the VIEW is used in a query.
        * Added the sqlite3_value_subtype() and sqlite3_result_subtype() interfaced
        (used by the json1 extension).
        * The query planner is now able to use partial indexes that contain AND-connected
        terms in the WHERE clause.
        * The sqlite3_analyzer.exe utility is updated to report the depth of each btree and
        to show the average fanout for indexes and WITHOUT ROWID tables.
        * Enhanced the dbstat virtual table so that it can be used as a table-valued function
        where the argument is the schema to be analyzed.
      
        Other changes:
      
        * The sqlite3_memory_alarm() interface, which has been deprecated and undocumented
        for 8 years, is changed into a no-op.
      
        Important fixes:
      
        * Fixed a critical bug in the SQLite Encryption Extension that could cause the database
        to become unreadable and unrecoverable if a VACUUM command changed the size of the
        encryption nonce.
        * Added a memory barrier in the implementation of sqlite3_initialize() to help ensure
        that it is thread-safe.
        * Fix the OR optimization so that it always ignores subplans that do not use an index.
        * Do not apply the WHERE-clause pushdown optimization on terms that originate in the
        ON or USING clause of a LEFT JOIN. Fix for ticket c2a19d81652f40568c.
      
        2015-07-29 (3.8.11.1)
      
        * Restore an undocumented side-effect of PRAGMA cache_size: force the database
        schema to be parsed if the database has not been previously accessed.
        * Fix a long-standing problem in sqlite3_changes() for WITHOUT ROWID tables that was
        reported a few hours after the 3.8.11 release.
      
        2015-07-27 (3.8.11)
      
        * Added the experimental RBU extension. Note that this extension is experimental
        and subject to change in incompatible ways.
        * Added the experimental FTS5 extension. Note that this extension is experimental
        and subject to change in incompatible ways.
        * Added the sqlite3_value_dup() and sqlite3_value_free() interfaces.
        * Enhance the spellfix1 extension to support ON CONFLICT clauses.
        * The IS operator is now able to drive indexes.
        * Enhance the query planner to permit automatic indexing on FROM-clause subqueries
        that are implemented by co-routine.
        * Disallow the use of "rowid" in common table expressions.
        * Added the PRAGMA cell_size_check command for better and earlier detection of database
        file corruption.
        * Added the matchinfo 'b' flag to the matchinfo() function in FTS3.
        * Improved fuzz-testing of database files, with fixes for problems found.
        * Add the fuzzcheck test program and automatically run this program using both SQL
        and database test cases on "make test".
        * Added the SQLITE_MUTEX_STATIC_VFS1 static mutex and use it in the Windows VFS.
        * The sqlite3_profile() callback is invoked (by sqlite3_reset() or sqlite3_finalize())
        for statements that did not run to completion.
        * Enhance the page cache so that it can preallocate a block of memory to use for the
        initial set page cache lines. Set the default preallocation to 100 pages. Yields about
        a 5% performance increase on common workloads.
        * Miscellaneous micro-optimizations result in 22.3% more work for the same number of
        CPU cycles relative to the previous release. SQLite now runs twice as fast as version
        3.8.0 and three times as fast as version 3.3.9. (Measured using cachegrind on the
        speedtest1.c workload on Ubuntu 14.04 x64 with gcc 4.8.2 and -Os. Your performance
        may vary.)
        * Added the sqlite3_result_zeroblob64() and sqlite3_bind_zeroblob64() interfaces.
      
        Important bug fixes:
      
        * Fix CREATE TABLE AS so that columns of type TEXT never end up holding an INT
        value. Ticket f2ad7de056ab1dc9200
        * Fix CREATE TABLE AS so that it does not leave NULL entries in the sqlite_master
        table if the SELECT statement on the right-hand side aborts with an error.
        Ticket 873cae2b6e25b
        * Fix the skip-scan optimization so that it works correctly when the OR optimization
        is used on WITHOUT ROWID tables. Ticket 8fd39115d8f46
        * Fix the sqlite3_memory_used() and sqlite3_memory_highwater() interfaces so that
        they actually do provide a 64-bit answer.
      
      Change-Id: Ic59c75950fe54b2ae3a2dabe5fe22f3fb4225e83
      253ed64d
    • Nick Kralevich's avatar
      53bf97d1
    • Damien Miller's avatar
      package version metadata for external/ · 013715b1
      Damien Miller authored
      This will be used for automated notification of external vulnerability
      reports.
      
      (cherrypicked from commit 8dc37401)
      
      Change-Id: Iaca4c74c644db5303382f1ab42c0aa154688a4a4
      013715b1
  8. 22 Oct, 2015 2 commits
  9. 21 Oct, 2015 3 commits
  10. 20 Oct, 2015 6 commits
  11. 03 Sep, 2015 1 commit
  12. 01 Sep, 2015 3 commits
  13. 31 Aug, 2015 2 commits
  14. 28 Aug, 2015 1 commit
  15. 27 Aug, 2015 2 commits
  16. 13 Jun, 2015 2 commits
  17. 12 Jun, 2015 5 commits
    • Nick Kralevich's avatar
      sqlite: upgrade to SQLite 3.8.10.2 · 693f9c61
      Nick Kralevich authored
      Downloaded from https://www.sqlite.org/2015/sqlite-amalgamation-3081002.zip
      
        $ sha256sum sqlite-amalgamation-3081002.zip
        8272ba79711bf7f64a029d5976ce565ef3fb9bdbbb8b18affdae83d0dd60d61b  sqlite-amalgamation-3081002.zip
      
      dist/orig contains the stock sqlite3 code, as packaged in the ZIP file above.
      
      dist contains a copy of dist/orig, but with the Android.patch file applied.
      Please see Android.patch for a list of differences between stock and
      Android.
      
      All Android specific patches applied cleanly.
      
      Description of changes compared to SQLite 3.8.10:
      
        2015-05-20 (3.8.10.2)
        * Fix an index corruption issue introduced by version 3.8.7. An index
          with a TEXT key can be corrupted by an INSERT into the corresponding
          table if the table has two nested triggers that convert the key
          value to INTEGER and back to TEXT again. Ticket 34cd55d68e0
        * SQLITE_SOURCE_ID: "2015-05-20 18:17:19 2ef4f3a5b1d1d0c4338f8243d40a2452cc1f7fe4"
        * SHA1 for sqlite3.c: 638abb77965332c956dbbd2c8e4248e84da4eb63
      
        2015-05-09 (3.8.10.1)
        * Make sqlite3_compileoption_used() responsive to the
          SQLITE_ENABLE_DBSTAT_VTAB compile-time option.
        * Fix a harmless warning in the command-line shell on some versions of MSVC.
        * Fix minor issues with the dbstat virtual table.
        * SQLITE_SOURCE_ID: "2015-05-09 12:14:55 05b4b1f2a937c06c90db70c09890038f6c98ec40"
        * SHA1 for sqlite3.c: 85e4e1c08c7df28ef61bb9759a0d466e0eefbaa2
      
      Change-Id: I60ba181489dc010683f8aabfff37cc7fee17b455
      693f9c61
    • Nick Kralevich's avatar
      Merge "Regenerate Android.patch" · 2c4f1804
      Nick Kralevich authored
      2c4f1804
    • Nick Kralevich's avatar
      am 0c1333fe: Regenerate Android.patch · e0f3f03a
      Nick Kralevich authored
      * commit '0c1333fe':
        Regenerate Android.patch
      e0f3f03a
    • Nick Kralevich's avatar
      Regenerate Android.patch · 415715d1
      Nick Kralevich authored
      Commit 55536230 patched Android
      specific code, but failed to update Android.patch as per the
      README-Android file. Update Android.patch so that this change isn't
      accidentally omitted in future SQLite upgrades.
      
      (cherrypicked from commit 0c1333fe)
      
      Bug: 21730722
      Change-Id: I12c62628bac6599c697a6e8fb71e7c239a49a37f
      415715d1
    • Nick Kralevich's avatar
      Regenerate Android.patch · 0c1333fe
      Nick Kralevich authored
      Commit 55536230 patched Android
      specific code, but failed to update Android.patch as per the
      README-Android file. Update Android.patch so that this change isn't
      accidentally omitted in future SQLite upgrades.
      
      Bug: 21730722
      Change-Id: I12c62628bac6599c697a6e8fb71e7c239a49a37f
      0c1333fe
  18. 11 Jun, 2015 1 commit