Index: pages/changes.in ================================================================== --- pages/changes.in +++ pages/changes.in @@ -17,10 +17,37 @@ proc chng {date desc {options {}}} { global nChng aChng set aChng($nChng) [list $date $desc $options] incr nChng } + +chng {2016-01-20 (3.10.2)} { +
Critical bug fix: +
Other miscellaneous bug fixes: +
Hashes: +
New feature: +
Bug fix: +
Hashes: +
General improvements:
A b-tree page is either a table b-tree page or an index b-tree page. All pages within each complete b-tree are of the same type: either table -or index. There is a one table b-trees in the database file +or index. There is one table b-trees in the database file for each rowid table in the database schema, including system tables -such as sqlite_master. There is one index b-trees +such as sqlite_master. There is one index b-tree in the database file for each index in the schema, including implied indexes created by uniqueness constraints. There are no b-trees associated with [virtual tables]. Specific virtual table implementations might make use of [shadow tables] for storage, but those shadow tables will have separate entries in the database schema. [WITHOUT ROWID] tables use index b-trees @@ -644,11 +644,11 @@
A variable-length integer or "varint" is a static Huffman encoding of 64-bit twos-complement integers that uses less space for small positive values. A varint is between 1 and 9 bytes in length. The varint consists of either -zero or more byte which have the high-order bit set followed by a single byte +zero or more bytes which have the high-order bit set followed by a single byte with the high-order bit clear, or nine bytes, whichever is shorter. The lower seven bits of each of the first eight bytes and all 8 bits of the ninth byte are used to reconstruct the 64-bit twos-complement integer. Varints are big-endian: bits taken from the earlier byte of the varint are the more significant than bits taken from the later bytes.
@@ -685,11 +685,11 @@ overflow page list - omitted if all payload fits on the b-tree page.Index B-Tree Interior Cell (header 0x02):
^If the payload size P is less than or equal to U-35 then the entire payload is stored on the b-tree leaf page. ^(Let M be ((U-12)*32/255)-23. If P is greater than U-35 -then the number of byte stored on the b-tree leaf page is the smaller of +then the number of bytes stored on the b-tree leaf page is the smaller of M+((P-M)%(U-4)) and U-35.)^ ^(Note that number of bytes stored on the leaf page is never less than M.)^
^(Let X be ((U-12)*64/255)-23). If the payload size P is less than or equal to X then the entire payload is stored on the b-tree page.)^ ^(Let M be ((U-12)*32/255)-23. If P is greater than X then the number -of byte stored on the b-tree page is the smaller of +of bytes stored on the b-tree page is the smaller of M+((P-M)%(U-4)) and X.)^ ^(Note that number of bytes stored on the index page is never less than M.)^
Each 5-byte entry on a ptrmap page provides back-link information about -one of pages that immediately follow the pointer map. ^(If page B is a +one of the pages that immediately follow the pointer map. ^(If page B is a ptrmap page then back-link information about page B+1 is provided by the first entry on the pointer map. Information about page B+2 is provided by the second entry. And so forth.)^
Each 5-byte ptrmap entry consists of one byte of "page type" information @@ -1012,11 +1012,11 @@
^The content of each SQL table row is stored in the database file by first combining the values in the various columns into a byte array in the record format, then storing that byte array as the payload in an entry in the table b-tree. ^The order of values in the record is the same as the order of columns in the SQL table definition. -^When an SQL table that includes an +^When an SQL table includes an [INTEGER PRIMARY KEY] column (which aliases the [rowid]) then that column appears in the record as a NULL value. ^SQLite will always use the table b-tree key rather than the NULL value when referencing the [INTEGER PRIMARY KEY] column.
@@ -1160,11 +1160,11 @@^(The sqlite_master.sql column stores SQL text that describes the object. This SQL text is a [CREATE TABLE], [CREATE VIRTUAL TABLE], [CREATE INDEX], [CREATE VIEW], or [CREATE TRIGGER] statement that if evaluated against the database file when it is the main database of a [database connection] -would recreated the object.)^ The text is usually a copy of the original +would recreate the object.)^ The text is usually a copy of the original statement used to create the object but with normalizations applied so that the text conforms to the following rules:
Indices with names of the form "sqlite_autoindex_TABLE_N" that are used to implement [UNIQUE] and [PRIMARY KEY] constraints on ordinary tables.
A table with the name "sqlite_sequence" that is used to keep track - of the maximum historical [INTEGER PRIMARY KEY] for a table that + of the maximum historical [INTEGER PRIMARY KEY] for a table using [AUTOINCREMENT].
Tables with names of the form "sqlite_statN" where N is an integer. Such tables store database statistics gathered by the [ANALYZE] command and used by the query planner to help determine the best @@ -1395,11 +1395,11 @@
^(In a well-formed sqlite_stat3 table, the samples for any single
index must appear in the same order that they occur in the index.
In other words, if the entry with left-most column S1 is earlier in
the index b-tree than the
-entry with lef-most column S2, then in the sqlite_stat3 table,
+entry with left-most column S2, then in the sqlite_stat3 table,
sample S1 must have a smaller rowid than sample S2.)^
The sqlite_stat4 is a generalization of the sqlite_stat3 table. The Index: pages/index.in ================================================================== --- pages/index.in +++ pages/index.in @@ -108,11 +108,11 @@
$txt" hd_puts "
Yikes! An optimization attempt gone bad resulted in a +[https://www.sqlite.org/src/info/80369eddd5c94 | bug in the LIKE operator] +which is fixed by this patch release. +Three other minor but low-risk fixes are also included in the patch. +} + +newsitem {2016-01-14} {Release 3.10.1} { +
SQLite [version 3.10.1] is a bug-fix release primarily targeting the +fix for the query planner bug +[https://www.sqlite.org/src/info/cb3aa0641d9a4|cb3aa0641d9a4] discovered by +Mapscape. Also included is a minor API enhancement requested by +the Firefox developers at Mozilla. The differences from version +3.10.0 are minimal. +} newsitem {2016-01-06} {Release 3.10.0} {
SQLite [version 3.10.0] is a regularly scheduled maintenance release. } Index: pages/queryplanner.in ================================================================== --- pages/queryplanner.in +++ pages/queryplanner.in @@ -1,9 +1,13 @@
Since the information is stored in the table in rowid order, SQLite -can find the correct row using doing a binary search on the rowid. +can find the correct row using a binary search on the rowid. If the table contains N element, the time required to look up the desired row is proportional to logN rather than being proportional to N as in a full table scan. If the table contains 10 million elements, that means the query will be on the order of N/logN or about 1 million times faster! @@ -144,11 +148,11 @@ To make the original query more efficient, we can add an index on the "fruit" column of the "fruitsforsale" table like this:
An index is another table similar to the original "fruitsforsale" table but with the content (the fruit column in this case) stored in front of the @@ -262,11 +266,11 @@
The "state" index works just like the "fruit" index in that it is a new table with an extra column in front of the rowid and sorted by that extra column as the primary key. The only difference is that in Idx2, the first column is "state" instead of "fruit" as it is with -Idx1. In our example data set, the is more redundancy in the "state" +Idx1. In our example data set, there is more redundancy in the "state" column and so they are more duplicate entries. The ties are still resolved using the rowid.
@@ -547,11 +551,11 @@
The Idx1 index is scanned from top to bottom (or from bottom to top if "ORDER BY fruit DESC" is used) in order to find the rowids for each item in order by fruit. Then for each rowid, a binary search is done to lookup and output that row. In this way, the output appears in the requested order -with the need to gather then entire output and sort it using a separate step. +without the need to gather the entire output and sort it using a separate step.
But does this really save time? The number of steps in the original indexless sort is proportional to NlogN since @@ -676,12 +680,12 @@ The same basic algorithm is followed, except this time the matching rows of the index are scanned from bottom to top instead of from top to bottom, so that the states will appear in descending order.
-Sometimes only part of an ORDER BY clause can be satisfied using indexes. Consider, for example, the following query:
Index: pages/rescode.in ================================================================== --- pages/rescode.in +++ pages/rescode.in @@ -322,12 +322,13 @@ RESCODE SQLITE_FORMAT 24 { The SQLITE_FORMAT error code is not currently used by SQLite. } RESCODE SQLITE_RANGE 25 { The SQLITE_RANGE error indices that the parameter number argument - to one of the [sqlite3_bind_blob|sqlite3_bind] routines is out of - range. + to one of the [sqlite3_bind_blob|sqlite3_bind] routines or the + column number in one of the [sqlite3_column_int|sqlite3_column] + routines is out of range. } RESCODE SQLITE_NOTADB 26 { When attempting to open a file, the SQLITE_NOTADB error indicates that the file being opened does not appear to be an SQLite database file. } ADDED pages/sqlanalyze.in Index: pages/sqlanalyze.in ================================================================== --- /dev/null +++ pages/sqlanalyze.in @@ -0,0 +1,1380 @@ ++The sqlite3_analyzer.exe binary is a command-line utility program +that measures and displays how much and how efficiently space is used by +individual tables and indexes with an SQLite database file. +Example usage: + +
+ ++sqlite3_analyzer database.sqlite +
+The output is a human-readable ASCII text report that provides information +on the space utilization of the database file. The report is intended to +be self-explanatory, though there is some +additional explanation of the +various parameters reported toward the end of the report. + +
+The output is also valid SQL. Most of the report text is contained within +a header comment, with various SQL statements that create and initialize +a database at the +end of the report. The constructed database contains +the raw data from which the report was extracted. Hence the original +report can be read into an instance of the [command-line shell] and then +the raw data can be queried to dig deeper into the space utilization of +a particular database file. + + +
The following is sqlite3_analyzer output for an example +places.sqlite database used by Firefox. + +
+/** Disk-Space Utilization Report For ██████████████████/places.sqlite + +Page size in bytes................................ 32768 +Pages in the whole file (measured)................ 221 +Pages in the whole file (calculated).............. 221 +Pages that store data............................. 221 100.0% +Pages on the freelist (per header)................ 0 0.0% +Pages on the freelist (calculated)................ 0 0.0% +Pages of auto-vacuum overhead..................... 0 0.0% +Number of tables in the database.................. 14 +Number of indices................................. 23 +Number of defined indices......................... 17 +Number of implied indices......................... 6 +Size of the file in bytes......................... 7241728 +Bytes of user payload stored...................... 2503069 34.6% + +*** Page counts for all tables with their indices ***************************** + +MOZ_PLACES........................................ 142 64.3% +MOZ_HISTORYVISITS................................. 41 18.6% +MOZ_FAVICONS...................................... 15 6.8% +MOZ_BOOKMARKS..................................... 5 2.3% +MOZ_KEYWORDS...................................... 3 1.4% +MOZ_ANNO_ATTRIBUTES............................... 2 0.90% +MOZ_ANNOS......................................... 2 0.90% +MOZ_BOOKMARKS_ROOTS............................... 2 0.90% +MOZ_HOSTS......................................... 2 0.90% +MOZ_INPUTHISTORY.................................. 2 0.90% +MOZ_ITEMS_ANNOS................................... 2 0.90% +SQLITE_MASTER..................................... 1 0.45% +SQLITE_SEQUENCE................................... 1 0.45% +SQLITE_STAT1...................................... 1 0.45% + +*** Page counts for all tables and indices separately ************************* + +MOZ_PLACES........................................ 63 28.5% +MOZ_PLACES_URL_UNIQUEINDEX........................ 37 16.7% +MOZ_HISTORYVISITS................................. 13 5.9% +MOZ_FAVICONS...................................... 12 5.4% +MOZ_HISTORYVISITS_PLACEDATEINDEX.................. 12 5.4% +MOZ_PLACES_HOSTINDEX.............................. 11 5.0% +MOZ_HISTORYVISITS_DATEINDEX....................... 10 4.5% +MOZ_PLACES_GUID_UNIQUEINDEX....................... 9 4.1% +MOZ_PLACES_LASTVISITDATEINDEX..................... 7 3.2% +MOZ_HISTORYVISITS_FROMINDEX....................... 6 2.7% +MOZ_PLACES_FAVICONINDEX........................... 5 2.3% +MOZ_PLACES_FRECENCYINDEX.......................... 5 2.3% +MOZ_PLACES_VISITCOUNT............................. 5 2.3% +SQLITE_AUTOINDEX_MOZ_FAVICONS_1................... 3 1.4% +MOZ_ANNO_ATTRIBUTES............................... 1 0.45% +MOZ_ANNOS......................................... 1 0.45% +MOZ_ANNOS_PLACEATTRIBUTEINDEX..................... 1 0.45% +MOZ_BOOKMARKS..................................... 1 0.45% +MOZ_BOOKMARKS_GUID_UNIQUEINDEX.................... 1 0.45% +MOZ_BOOKMARKS_ITEMINDEX........................... 1 0.45% +MOZ_BOOKMARKS_ITEMLASTMODIFIEDINDEX............... 1 0.45% +MOZ_BOOKMARKS_PARENTINDEX......................... 1 0.45% +MOZ_BOOKMARKS_ROOTS............................... 1 0.45% +MOZ_HOSTS......................................... 1 0.45% +MOZ_INPUTHISTORY.................................. 1 0.45% +MOZ_ITEMS_ANNOS................................... 1 0.45% +MOZ_ITEMS_ANNOS_ITEMATTRIBUTEINDEX................ 1 0.45% +MOZ_KEYWORDS...................................... 1 0.45% +MOZ_KEYWORDS_PLACEPOSTDATA_UNIQUEINDEX............ 1 0.45% +SQLITE_AUTOINDEX_MOZ_ANNO_ATTRIBUTES_1............ 1 0.45% +SQLITE_AUTOINDEX_MOZ_BOOKMARKS_ROOTS_1............ 1 0.45% +SQLITE_AUTOINDEX_MOZ_HOSTS_1...................... 1 0.45% +SQLITE_AUTOINDEX_MOZ_INPUTHISTORY_1............... 1 0.45% +SQLITE_AUTOINDEX_MOZ_KEYWORDS_1................... 1 0.45% +SQLITE_MASTER..................................... 1 0.45% +SQLITE_SEQUENCE................................... 1 0.45% +SQLITE_STAT1...................................... 1 0.45% + +*** All tables and indices **************************************************** + +Percentage of total database...................... 100.0% +Number of entries................................. 154969 +Bytes of storage consumed......................... 7241728 +Bytes of payload.................................. 4969404 68.6% +Average payload per entry......................... 32.07 +Average unused bytes per entry.................... 11.15 +Average fanout.................................... 14.00 +Maximum payload per entry......................... 7640 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 14 +Primary pages used................................ 207 +Overflow pages used............................... 0 +Total pages used.................................. 221 +Unused bytes on index pages....................... 448010 97.7% +Unused bytes on primary pages..................... 1280642 18.9% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 1728652 23.9% + +*** All tables **************************************************************** + +Percentage of total database...................... 44.8% +Number of entries................................. 28530 +Bytes of storage consumed......................... 3244032 +Bytes of payload.................................. 2508257 77.3% +Average payload per entry......................... 87.92 +Average unused bytes per entry.................... 20.13 +Average fanout.................................... 28.00 +Maximum payload per entry......................... 7640 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 3 +Primary pages used................................ 96 +Overflow pages used............................... 0 +Total pages used.................................. 99 +Unused bytes on index pages....................... 97551 99.23% +Unused bytes on primary pages..................... 476741 15.2% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 574292 17.7% + +*** All indices *************************************************************** + +Percentage of total database...................... 55.2% +Number of entries................................. 126439 +Bytes of storage consumed......................... 3997696 +Bytes of payload.................................. 2461147 61.6% +Average payload per entry......................... 19.47 +Average unused bytes per entry.................... 9.13 +Average fanout.................................... 11.00 +Maximum payload per entry......................... 7259 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 11 +Primary pages used................................ 111 +Overflow pages used............................... 0 +Total pages used.................................. 122 +Unused bytes on index pages....................... 350459 97.2% +Unused bytes on primary pages..................... 803901 22.1% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 1154360 28.9% + +*** Table MOZ_ANNO_ATTRIBUTES and all its indices ***************************** + +Percentage of total database...................... 0.90% +Number of entries................................. 24 +Bytes of storage consumed......................... 65536 +Bytes of payload.................................. 721 1.1% +Average payload per entry......................... 30.04 +Average unused bytes per entry.................... 2696.46 +Maximum payload per entry......................... 43 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 2 +Overflow pages used............................... 0 +Total pages used.................................. 2 +Unused bytes on primary pages..................... 64715 98.7% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 64715 98.7% + +*** Table MOZ_ANNO_ATTRIBUTES w/o any indices ********************************* + +Percentage of total database...................... 0.45% +Number of entries................................. 12 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 355 1.1% +B-tree depth...................................... 1 +Average payload per entry......................... 29.58 +Average unused bytes per entry.................... 2696.42 +Maximum payload per entry......................... 42 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 32357 98.7% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 32357 98.7% + +*** Index SQLITE_AUTOINDEX_MOZ_ANNO_ATTRIBUTES_1 of table MOZ_ANNO_ATTRIBUTES * + +Percentage of total database...................... 0.45% +Number of entries................................. 12 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 366 1.1% +B-tree depth...................................... 1 +Average payload per entry......................... 30.50 +Average unused bytes per entry.................... 2696.50 +Maximum payload per entry......................... 43 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 32358 98.7% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 32358 98.7% + +*** Table MOZ_ANNOS and all its indices *************************************** + +Percentage of total database...................... 0.90% +Number of entries................................. 390 +Bytes of storage consumed......................... 65536 +Bytes of payload.................................. 13986 21.3% +Average payload per entry......................... 35.86 +Average unused bytes per entry.................... 128.22 +Maximum payload per entry......................... 127 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 2 +Overflow pages used............................... 0 +Total pages used.................................. 2 +Unused bytes on primary pages..................... 50006 76.3% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 50006 76.3% + +*** Table MOZ_ANNOS w/o any indices ******************************************* + +Percentage of total database...................... 0.45% +Number of entries................................. 195 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 12115 37.0% +B-tree depth...................................... 1 +Average payload per entry......................... 62.13 +Average unused bytes per entry.................... 101.04 +Maximum payload per entry......................... 127 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 19702 60.1% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 19702 60.1% + +*** Index MOZ_ANNOS_PLACEATTRIBUTEINDEX of table MOZ_ANNOS ******************** + +Percentage of total database...................... 0.45% +Number of entries................................. 195 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 1871 5.7% +B-tree depth...................................... 1 +Average payload per entry......................... 9.59 +Average unused bytes per entry.................... 155.41 +Maximum payload per entry......................... 10 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 30304 92.5% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 30304 92.5% + +*** Table MOZ_BOOKMARKS and all its indices *********************************** + +Percentage of total database...................... 2.3% +Number of entries................................. 1565 +Bytes of storage consumed......................... 163840 +Bytes of payload.................................. 37104 22.6% +Average payload per entry......................... 23.71 +Average unused bytes per entry.................... 77.62 +Maximum payload per entry......................... 518 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 5 +Overflow pages used............................... 0 +Total pages used.................................. 5 +Unused bytes on primary pages..................... 121475 74.1% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 121475 74.1% + +*** Table MOZ_BOOKMARKS w/o any indices *************************************** + +Percentage of total database...................... 0.45% +Number of entries................................. 313 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 21937 66.9% +B-tree depth...................................... 1 +Average payload per entry......................... 70.09 +Average unused bytes per entry.................... 29.90 +Maximum payload per entry......................... 518 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 9358 28.6% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 9358 28.6% + +*** Indices of table MOZ_BOOKMARKS ******************************************** + +Percentage of total database...................... 1.8% +Number of entries................................. 1252 +Bytes of storage consumed......................... 131072 +Bytes of payload.................................. 15167 11.6% +Average payload per entry......................... 12.11 +Average unused bytes per entry.................... 89.55 +Maximum payload per entry......................... 17 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 4 +Overflow pages used............................... 0 +Total pages used.................................. 4 +Unused bytes on primary pages..................... 112117 85.5% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 112117 85.5% + +*** Index MOZ_BOOKMARKS_GUID_UNIQUEINDEX of table MOZ_BOOKMARKS *************** + +Percentage of total database...................... 0.45% +Number of entries................................. 313 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 5207 15.9% +B-tree depth...................................... 1 +Average payload per entry......................... 16.64 +Average unused bytes per entry.................... 85.03 +Maximum payload per entry......................... 17 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 26614 81.2% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 26614 81.2% + +*** Index MOZ_BOOKMARKS_ITEMINDEX of table MOZ_BOOKMARKS ********************** + +Percentage of total database...................... 0.45% +Number of entries................................. 313 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 2547 7.8% +B-tree depth...................................... 1 +Average payload per entry......................... 8.14 +Average unused bytes per entry.................... 93.53 +Maximum payload per entry......................... 9 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 29274 89.3% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 29274 89.3% + +*** Index MOZ_BOOKMARKS_ITEMLASTMODIFIEDINDEX of table MOZ_BOOKMARKS ********** + +Percentage of total database...................... 0.45% +Number of entries................................. 313 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 5020 15.3% +B-tree depth...................................... 1 +Average payload per entry......................... 16.04 +Average unused bytes per entry.................... 85.63 +Maximum payload per entry......................... 17 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 26801 81.8% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 26801 81.8% + +*** Index MOZ_BOOKMARKS_PARENTINDEX of table MOZ_BOOKMARKS ******************** + +Percentage of total database...................... 0.45% +Number of entries................................. 313 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 2393 7.3% +B-tree depth...................................... 1 +Average payload per entry......................... 7.65 +Average unused bytes per entry.................... 94.02 +Maximum payload per entry......................... 9 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 29428 89.8% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 29428 89.8% + +*** Table MOZ_BOOKMARKS_ROOTS and all its indices ***************************** + +Percentage of total database...................... 0.90% +Number of entries................................. 10 +Bytes of storage consumed......................... 65536 +Bytes of payload.................................. 94 0.14% +Average payload per entry......................... 9.40 +Average unused bytes per entry.................... 6539.10 +Maximum payload per entry......................... 11 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 2 +Overflow pages used............................... 0 +Total pages used.................................. 2 +Unused bytes on primary pages..................... 65391 99.78% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 65391 99.78% + +*** Table MOZ_BOOKMARKS_ROOTS w/o any indices ********************************* + +Percentage of total database...................... 0.45% +Number of entries................................. 5 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 47 0.14% +B-tree depth...................................... 1 +Average payload per entry......................... 9.40 +Average unused bytes per entry.................... 6538.60 +Maximum payload per entry......................... 11 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 32693 99.77% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 32693 99.77% + +*** Index SQLITE_AUTOINDEX_MOZ_BOOKMARKS_ROOTS_1 of table MOZ_BOOKMARKS_ROOTS * + +Percentage of total database...................... 0.45% +Number of entries................................. 5 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 47 0.14% +B-tree depth...................................... 1 +Average payload per entry......................... 9.40 +Average unused bytes per entry.................... 6539.60 +Maximum payload per entry......................... 11 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 32698 99.79% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 32698 99.79% + +*** Table MOZ_FAVICONS and all its indices ************************************ + +Percentage of total database...................... 6.8% +Number of entries................................. 941 +Bytes of storage consumed......................... 491520 +Bytes of payload.................................. 332765 67.7% +Average payload per entry......................... 353.63 +Average unused bytes per entry.................... 164.00 +Average fanout.................................... 7.00 +Maximum payload per entry......................... 7640 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 2 +Primary pages used................................ 13 +Overflow pages used............................... 0 +Total pages used.................................. 15 +Unused bytes on index pages....................... 65340 99.70% +Unused bytes on primary pages..................... 88980 20.9% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 154320 31.4% + +*** Table MOZ_FAVICONS w/o any indices **************************************** + +Percentage of total database...................... 5.4% +Number of entries................................. 471 +Bytes of storage consumed......................... 393216 +Bytes of payload.................................. 297630 75.7% +B-tree depth...................................... 2 +Average payload per entry......................... 631.91 +Average unused bytes per entry.................... 196.60 +Average fanout.................................... 11.00 +Non-sequential pages.............................. 6 54.5% +Maximum payload per entry......................... 7640 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 1 +Primary pages used................................ 11 +Overflow pages used............................... 0 +Total pages used.................................. 12 +Unused bytes on index pages....................... 32676 99.72% +Unused bytes on primary pages..................... 59923 16.6% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 92599 23.5% + +*** Index SQLITE_AUTOINDEX_MOZ_FAVICONS_1 of table MOZ_FAVICONS *************** + +Percentage of total database...................... 1.4% +Number of entries................................. 470 +Bytes of storage consumed......................... 98304 +Bytes of payload.................................. 35135 35.7% +B-tree depth...................................... 2 +Average payload per entry......................... 74.76 +Average unused bytes per entry.................... 131.32 +Average fanout.................................... 3.00 +Non-sequential pages.............................. 1 50.0% +Maximum payload per entry......................... 7259 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 1 +Primary pages used................................ 2 +Overflow pages used............................... 0 +Total pages used.................................. 3 +Unused bytes on index pages....................... 32664 99.68% +Unused bytes on primary pages..................... 29057 44.3% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 61721 62.8% + +*** Table MOZ_HISTORYVISITS and all its indices ******************************* + +Percentage of total database...................... 18.6% +Number of entries................................. 63470 +Bytes of storage consumed......................... 1343488 +Bytes of payload.................................. 882233 65.7% +Average payload per entry......................... 13.90 +Average unused bytes per entry.................... 3.76 +Average fanout.................................... 10.00 +Maximum payload per entry......................... 21 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 4 +Primary pages used................................ 37 +Overflow pages used............................... 0 +Total pages used.................................. 41 +Unused bytes on index pages....................... 130482 99.55% +Unused bytes on primary pages..................... 108158 8.9% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 238640 17.8% + +*** Table MOZ_HISTORYVISITS w/o any indices *********************************** + +Percentage of total database...................... 5.9% +Number of entries................................. 15873 +Bytes of storage consumed......................... 425984 +Bytes of payload.................................. 308447 72.4% +B-tree depth...................................... 2 +Average payload per entry......................... 19.43 +Average unused bytes per entry.................... 2.40 +Average fanout.................................... 12.00 +Non-sequential pages.............................. 8 66.7% +Maximum payload per entry......................... 21 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 1 +Primary pages used................................ 12 +Overflow pages used............................... 0 +Total pages used.................................. 13 +Unused bytes on index pages....................... 32668 99.69% +Unused bytes on primary pages..................... 5435 1.4% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 38103 8.9% + +*** Indices of table MOZ_HISTORYVISITS **************************************** + +Percentage of total database...................... 12.7% +Number of entries................................. 47597 +Bytes of storage consumed......................... 917504 +Bytes of payload.................................. 573786 62.5% +Average payload per entry......................... 12.06 +Average unused bytes per entry.................... 4.21 +Average fanout.................................... 9.00 +Maximum payload per entry......................... 17 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 3 +Primary pages used................................ 25 +Overflow pages used............................... 0 +Total pages used.................................. 28 +Unused bytes on index pages....................... 97814 99.50% +Unused bytes on primary pages..................... 102723 12.5% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 200537 21.9% + +*** Index MOZ_HISTORYVISITS_DATEINDEX of table MOZ_HISTORYVISITS ************** + +Percentage of total database...................... 4.5% +Number of entries................................. 15865 +Bytes of storage consumed......................... 327680 +Bytes of payload.................................. 206221 62.9% +B-tree depth...................................... 2 +Average payload per entry......................... 13.00 +Average unused bytes per entry.................... 4.65 +Average fanout.................................... 10.00 +Non-sequential pages.............................. 6 66.7% +Maximum payload per entry......................... 13 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 1 +Primary pages used................................ 9 +Overflow pages used............................... 0 +Total pages used.................................. 10 +Unused bytes on index pages....................... 32596 99.48% +Unused bytes on primary pages..................... 41128 13.9% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 73724 22.5% + +*** Index MOZ_HISTORYVISITS_FROMINDEX of table MOZ_HISTORYVISITS ************** + +Percentage of total database...................... 2.7% +Number of entries................................. 15869 +Bytes of storage consumed......................... 196608 +Bytes of payload.................................. 100292 51.0% +B-tree depth...................................... 2 +Average payload per entry......................... 6.32 +Average unused bytes per entry.................... 3.06 +Average fanout.................................... 6.00 +Non-sequential pages.............................. 4 80.0% +Maximum payload per entry......................... 7 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 1 +Primary pages used................................ 5 +Overflow pages used............................... 0 +Total pages used.................................. 6 +Unused bytes on index pages....................... 32702 99.80% +Unused bytes on primary pages..................... 15927 9.7% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 48629 24.7% + +*** Index MOZ_HISTORYVISITS_PLACEDATEINDEX of table MOZ_HISTORYVISITS ********* + +Percentage of total database...................... 5.4% +Number of entries................................. 15863 +Bytes of storage consumed......................... 393216 +Bytes of payload.................................. 267273 68.0% +B-tree depth...................................... 2 +Average payload per entry......................... 16.85 +Average unused bytes per entry.................... 4.93 +Average fanout.................................... 12.00 +Non-sequential pages.............................. 8 72.7% +Maximum payload per entry......................... 17 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 1 +Primary pages used................................ 11 +Overflow pages used............................... 0 +Total pages used.................................. 12 +Unused bytes on index pages....................... 32516 99.23% +Unused bytes on primary pages..................... 45668 12.7% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 78184 19.9% + +*** Table MOZ_HOSTS and all its indices *************************************** + +Percentage of total database...................... 0.90% +Number of entries................................. 1256 +Bytes of storage consumed......................... 65536 +Bytes of payload.................................. 27640 42.2% +Average payload per entry......................... 22.01 +Average unused bytes per entry.................... 26.18 +Maximum payload per entry......................... 49 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 2 +Overflow pages used............................... 0 +Total pages used.................................. 2 +Unused bytes on primary pages..................... 32888 50.2% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 32888 50.2% + +*** Table MOZ_HOSTS w/o any indices ******************************************* + +Percentage of total database...................... 0.45% +Number of entries................................. 628 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 14640 44.7% +B-tree depth...................................... 1 +Average payload per entry......................... 23.31 +Average unused bytes per entry.................... 23.90 +Maximum payload per entry......................... 49 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 15012 45.8% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 15012 45.8% + +*** Index SQLITE_AUTOINDEX_MOZ_HOSTS_1 of table MOZ_HOSTS ********************* + +Percentage of total database...................... 0.45% +Number of entries................................. 628 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 13000 39.7% +B-tree depth...................................... 1 +Average payload per entry......................... 20.70 +Average unused bytes per entry.................... 28.46 +Maximum payload per entry......................... 47 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 17876 54.6% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 17876 54.6% + +*** Table MOZ_INPUTHISTORY and all its indices ******************************** + +Percentage of total database...................... 0.90% +Number of entries................................. 16 +Bytes of storage consumed......................... 65536 +Bytes of payload.................................. 642 0.98% +Average payload per entry......................... 40.12 +Average unused bytes per entry.................... 4050.88 +Maximum payload per entry......................... 71 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 2 +Overflow pages used............................... 0 +Total pages used.................................. 2 +Unused bytes on primary pages..................... 64814 98.9% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 64814 98.9% + +*** Table MOZ_INPUTHISTORY w/o any indices ************************************ + +Percentage of total database...................... 0.45% +Number of entries................................. 8 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 341 1.0% +B-tree depth...................................... 1 +Average payload per entry......................... 42.62 +Average unused bytes per entry.................... 4047.38 +Maximum payload per entry......................... 71 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 32379 98.8% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 32379 98.8% + +*** Index SQLITE_AUTOINDEX_MOZ_INPUTHISTORY_1 of table MOZ_INPUTHISTORY ******* + +Percentage of total database...................... 0.45% +Number of entries................................. 8 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 301 0.92% +B-tree depth...................................... 1 +Average payload per entry......................... 37.62 +Average unused bytes per entry.................... 4054.38 +Maximum payload per entry......................... 65 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 32435 99.0% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 32435 99.0% + +*** Table MOZ_ITEMS_ANNOS and all its indices ********************************* + +Percentage of total database...................... 0.90% +Number of entries................................. 158 +Bytes of storage consumed......................... 65536 +Bytes of payload.................................. 9211 14.1% +Average payload per entry......................... 58.30 +Average unused bytes per entry.................... 352.56 +Maximum payload per entry......................... 384 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 2 +Overflow pages used............................... 0 +Total pages used.................................. 2 +Unused bytes on primary pages..................... 55704 85.0% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 55704 85.0% + +*** Table MOZ_ITEMS_ANNOS w/o any indices ************************************* + +Percentage of total database...................... 0.45% +Number of entries................................. 79 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 8649 26.4% +B-tree depth...................................... 1 +Average payload per entry......................... 109.48 +Average unused bytes per entry.................... 300.54 +Maximum payload per entry......................... 384 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 23743 72.5% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 23743 72.5% + +*** Index MOZ_ITEMS_ANNOS_ITEMATTRIBUTEINDEX of table MOZ_ITEMS_ANNOS ********* + +Percentage of total database...................... 0.45% +Number of entries................................. 79 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 562 1.7% +B-tree depth...................................... 1 +Average payload per entry......................... 7.11 +Average unused bytes per entry.................... 404.57 +Maximum payload per entry......................... 9 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 31961 97.5% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 31961 97.5% + +*** Table MOZ_KEYWORDS and all its indices ************************************ + +Percentage of total database...................... 1.4% +Number of entries................................. 0 +Bytes of storage consumed......................... 98304 +Bytes of payload.................................. 0 0.0% +Average payload per entry......................... 0.0 +Average unused bytes per entry.................... 0.0 +Maximum payload per entry......................... 0 +Entries that use overflow......................... 0 +Primary pages used................................ 3 +Overflow pages used............................... 0 +Total pages used.................................. 3 +Unused bytes on primary pages..................... 98280 99.976% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 98280 99.976% + +*** Table MOZ_KEYWORDS w/o any indices **************************************** + +Percentage of total database...................... 0.45% +Number of entries................................. 0 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 0 0.0% +B-tree depth...................................... 1 +Average payload per entry......................... 0.0 +Average unused bytes per entry.................... 0.0 +Maximum payload per entry......................... 0 +Entries that use overflow......................... 0 +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 32760 99.976% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 32760 99.976% + +*** Indices of table MOZ_KEYWORDS ********************************************* + +Percentage of total database...................... 0.90% +Number of entries................................. 0 +Bytes of storage consumed......................... 65536 +Bytes of payload.................................. 0 0.0% +Average payload per entry......................... 0.0 +Average unused bytes per entry.................... 0.0 +Maximum payload per entry......................... 0 +Entries that use overflow......................... 0 +Primary pages used................................ 2 +Overflow pages used............................... 0 +Total pages used.................................. 2 +Unused bytes on primary pages..................... 65520 99.976% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 65520 99.976% + +*** Index MOZ_KEYWORDS_PLACEPOSTDATA_UNIQUEINDEX of table MOZ_KEYWORDS ******** + +Percentage of total database...................... 0.45% +Number of entries................................. 0 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 0 0.0% +B-tree depth...................................... 1 +Average payload per entry......................... 0.0 +Average unused bytes per entry.................... 0.0 +Maximum payload per entry......................... 0 +Entries that use overflow......................... 0 +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 32760 99.976% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 32760 99.976% + +*** Index SQLITE_AUTOINDEX_MOZ_KEYWORDS_1 of table MOZ_KEYWORDS *************** + +Percentage of total database...................... 0.45% +Number of entries................................. 0 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 0 0.0% +B-tree depth...................................... 1 +Average payload per entry......................... 0.0 +Average unused bytes per entry.................... 0.0 +Maximum payload per entry......................... 0 +Entries that use overflow......................... 0 +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 32760 99.976% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 32760 99.976% + +*** Table MOZ_PLACES and all its indices ************************************** + +Percentage of total database...................... 64.3% +Number of entries................................. 87087 +Bytes of storage consumed......................... 4653056 +Bytes of payload.................................. 3659043 78.6% +Average payload per entry......................... 42.02 +Average unused bytes per entry.................... 7.93 +Average fanout.................................... 17.00 +Maximum payload per entry......................... 1867 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 8 +Primary pages used................................ 134 +Overflow pages used............................... 0 +Total pages used.................................. 142 +Unused bytes on index pages....................... 252188 96.2% +Unused bytes on primary pages..................... 438258 10.0% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 690446 14.8% + +*** Table MOZ_PLACES w/o any indices ****************************************** + +Percentage of total database...................... 28.5% +Number of entries................................. 10894 +Bytes of storage consumed......................... 2064384 +Bytes of payload.................................. 1838131 89.0% +B-tree depth...................................... 2 +Average payload per entry......................... 168.73 +Average unused bytes per entry.................... 14.10 +Average fanout.................................... 62.00 +Non-sequential pages.............................. 30 48.4% +Maximum payload per entry......................... 1867 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 1 +Primary pages used................................ 62 +Overflow pages used............................... 0 +Total pages used.................................. 63 +Unused bytes on index pages....................... 32207 98.3% +Unused bytes on primary pages..................... 121406 6.0% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 153613 7.4% + +*** Indices of table MOZ_PLACES *********************************************** + +Percentage of total database...................... 35.7% +Number of entries................................. 76193 +Bytes of storage consumed......................... 2588672 +Bytes of payload.................................. 1820912 70.3% +Average payload per entry......................... 23.90 +Average unused bytes per entry.................... 7.05 +Average fanout.................................... 11.00 +Maximum payload per entry......................... 1823 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 7 +Primary pages used................................ 72 +Overflow pages used............................... 0 +Total pages used.................................. 79 +Unused bytes on index pages....................... 219981 95.9% +Unused bytes on primary pages..................... 316852 13.4% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 536833 20.7% + +*** Index MOZ_PLACES_FAVICONINDEX of table MOZ_PLACES ************************* + +Percentage of total database...................... 2.3% +Number of entries................................. 10891 +Bytes of storage consumed......................... 163840 +Bytes of payload.................................. 83178 50.8% +B-tree depth...................................... 2 +Average payload per entry......................... 7.64 +Average unused bytes per entry.................... 4.40 +Average fanout.................................... 5.00 +Non-sequential pages.............................. 3 75.0% +Maximum payload per entry......................... 8 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 1 +Primary pages used................................ 4 +Overflow pages used............................... 0 +Total pages used.................................. 5 +Unused bytes on index pages....................... 32711 99.83% +Unused bytes on primary pages..................... 15213 11.6% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 47924 29.3% + +*** Index MOZ_PLACES_FRECENCYINDEX of table MOZ_PLACES ************************ + +Percentage of total database...................... 2.3% +Number of entries................................. 10891 +Bytes of storage consumed......................... 163840 +Bytes of payload.................................. 76772 46.9% +B-tree depth...................................... 2 +Average payload per entry......................... 7.05 +Average unused bytes per entry.................... 4.99 +Average fanout.................................... 5.00 +Non-sequential pages.............................. 3 75.0% +Maximum payload per entry......................... 9 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 1 +Primary pages used................................ 4 +Overflow pages used............................... 0 +Total pages used.................................. 5 +Unused bytes on index pages....................... 32714 99.84% +Unused bytes on primary pages..................... 21616 16.5% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 54330 33.2% + +*** Index MOZ_PLACES_GUID_UNIQUEINDEX of table MOZ_PLACES ********************* + +Percentage of total database...................... 4.1% +Number of entries................................. 10887 +Bytes of storage consumed......................... 294912 +Bytes of payload.................................. 196000 66.5% +B-tree depth...................................... 2 +Average payload per entry......................... 18.00 +Average unused bytes per entry.................... 6.07 +Average fanout.................................... 9.00 +Non-sequential pages.............................. 5 62.5% +Maximum payload per entry......................... 18 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 1 +Primary pages used................................ 8 +Overflow pages used............................... 0 +Total pages used.................................. 9 +Unused bytes on index pages....................... 32581 99.43% +Unused bytes on primary pages..................... 33545 12.8% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 66126 22.4% + +*** Index MOZ_PLACES_HOSTINDEX of table MOZ_PLACES **************************** + +Percentage of total database...................... 5.0% +Number of entries................................. 10885 +Bytes of storage consumed......................... 360448 +Bytes of payload.................................. 237383 65.9% +B-tree depth...................................... 2 +Average payload per entry......................... 21.81 +Average unused bytes per entry.................... 8.29 +Average fanout.................................... 11.00 +Non-sequential pages.............................. 7 70.0% +Maximum payload per entry......................... 49 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 1 +Primary pages used................................ 10 +Overflow pages used............................... 0 +Total pages used.................................. 11 +Unused bytes on index pages....................... 32473 99.10% +Unused bytes on primary pages..................... 57782 17.6% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 90255 25.0% + +*** Index MOZ_PLACES_LASTVISITDATEINDEX of table MOZ_PLACES ******************* + +Percentage of total database...................... 3.2% +Number of entries................................. 10889 +Bytes of storage consumed......................... 229376 +Bytes of payload.................................. 150784 65.7% +B-tree depth...................................... 2 +Average payload per entry......................... 13.85 +Average unused bytes per entry.................... 4.21 +Average fanout.................................... 7.00 +Non-sequential pages.............................. 4 66.7% +Maximum payload per entry......................... 14 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 1 +Primary pages used................................ 6 +Overflow pages used............................... 0 +Total pages used.................................. 7 +Unused bytes on index pages....................... 32651 99.64% +Unused bytes on primary pages..................... 13179 6.7% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 45830 20.0% + +*** Index MOZ_PLACES_URL_UNIQUEINDEX of table MOZ_PLACES ********************** + +Percentage of total database...................... 16.7% +Number of entries................................. 10859 +Bytes of storage consumed......................... 1212416 +Bytes of payload.................................. 1010666 83.4% +B-tree depth...................................... 2 +Average payload per entry......................... 93.07 +Average unused bytes per entry.................... 15.42 +Average fanout.................................... 37.00 +Non-sequential pages.............................. 16 44.4% +Maximum payload per entry......................... 1823 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 1 +Primary pages used................................ 36 +Overflow pages used............................... 0 +Total pages used.................................. 37 +Unused bytes on index pages....................... 24134 73.7% +Unused bytes on primary pages..................... 143261 12.1% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 167395 13.8% + +*** Index MOZ_PLACES_VISITCOUNT of table MOZ_PLACES *************************** + +Percentage of total database...................... 2.3% +Number of entries................................. 10891 +Bytes of storage consumed......................... 163840 +Bytes of payload.................................. 66129 40.4% +B-tree depth...................................... 2 +Average payload per entry......................... 6.07 +Average unused bytes per entry.................... 5.97 +Average fanout.................................... 5.00 +Non-sequential pages.............................. 3 75.0% +Maximum payload per entry......................... 8 +Entries that use overflow......................... 0 0.0% +Index pages used.................................. 1 +Primary pages used................................ 4 +Overflow pages used............................... 0 +Total pages used.................................. 5 +Unused bytes on index pages....................... 32717 99.84% +Unused bytes on primary pages..................... 32256 24.6% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 64973 39.7% + +*** Table SQLITE_MASTER ******************************************************* + +Percentage of total database...................... 0.45% +Number of entries................................. 36 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 5188 15.8% +B-tree depth...................................... 1 +Average payload per entry......................... 144.11 +Average unused bytes per entry.................... 758.58 +Maximum payload per entry......................... 379 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 27309 83.3% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 27309 83.3% + +*** Table SQLITE_SEQUENCE ***************************************************** + +Percentage of total database...................... 0.45% +Number of entries................................. 1 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 15 0.046% +B-tree depth...................................... 1 +Average payload per entry......................... 15.00 +Average unused bytes per entry.................... 32741.00 +Maximum payload per entry......................... 15 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 32741 99.918% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 32741 99.918% + +*** Table SQLITE_STAT1 ******************************************************** + +Percentage of total database...................... 0.45% +Number of entries................................. 15 +Bytes of storage consumed......................... 32768 +Bytes of payload.................................. 762 2.3% +B-tree depth...................................... 1 +Average payload per entry......................... 50.80 +Average unused bytes per entry.................... 2128.20 +Maximum payload per entry......................... 62 +Entries that use overflow......................... 0 0.0% +Primary pages used................................ 1 +Overflow pages used............................... 0 +Total pages used.................................. 1 +Unused bytes on primary pages..................... 31923 97.4% +Unused bytes on overflow pages.................... 0 +Unused bytes on all pages......................... 31923 97.4% + +*** Definitions *************************************************************** + +Page size in bytes + + The number of bytes in a single page of the database file. + Usually 1024. + +Number of pages in the whole file + + The number of 32768-byte pages that go into forming the complete + database + +Pages that store data + + The number of pages that store data, either as primary B*Tree pages or + as overflow pages. The number at the right is the data pages divided by + the total number of pages in the file. + +Pages on the freelist + + The number of pages that are not currently in use but are reserved for + future use. The percentage at the right is the number of freelist pages + divided by the total number of pages in the file. + +Pages of auto-vacuum overhead + + The number of pages that store data used by the database to facilitate + auto-vacuum. This is zero for databases that do not support auto-vacuum. + +Number of tables in the database + + The number of tables in the database, including the SQLITE_MASTER table + used to store schema information. + +Number of indices + + The total number of indices in the database. + +Number of defined indices + + The number of indices created using an explicit CREATE INDEX statement. + +Number of implied indices + + The number of indices used to implement PRIMARY KEY or UNIQUE constraints + on tables. + +Size of the file in bytes + + The total amount of disk space used by the entire database files. + +Bytes of user payload stored + + The total number of bytes of user payload stored in the database. The + schema information in the SQLITE_MASTER table is not counted when + computing this number. The percentage at the right shows the payload + divided by the total file size. + +Percentage of total database + + The amount of the complete database file that is devoted to storing + information described by this category. + +Number of entries + + The total number of B-Tree key/value pairs stored under this category. + +Bytes of storage consumed + + The total amount of disk space required to store all B-Tree entries + under this category. The is the total number of pages used times + the pages size. + +Bytes of payload + + The amount of payload stored under this category. Payload is the data + part of table entries and the key part of index entries. The percentage + at the right is the bytes of payload divided by the bytes of storage + consumed. + +Average payload per entry + + The average amount of payload on each entry. This is just the bytes of + payload divided by the number of entries. + +Average unused bytes per entry + + The average amount of free space remaining on all pages under this + category on a per-entry basis. This is the number of unused bytes on + all pages divided by the number of entries. + +Non-sequential pages + + The number of pages in the table or index that are out of sequence. + Many filesystems are optimized for sequential file access so a small + number of non-sequential pages might result in faster queries, + especially for larger database files that do not fit in the disk cache. + Note that after running VACUUM, the root page of each table or index is + at the beginning of the database file and all other pages are in a + separate part of the database file, resulting in a single non- + sequential page. + +Maximum payload per entry + + The largest payload size of any entry. + +Entries that use overflow + + The number of entries that user one or more overflow pages. + +Total pages used + + This is the number of pages used to hold all information in the current + category. This is the sum of index, primary, and overflow pages. + +Index pages used + + This is the number of pages in a table B-tree that hold only key (rowid) + information and no data. + +Primary pages used + + This is the number of B-tree pages that hold both key and data. + +Overflow pages used + + The total number of overflow pages used for this category. + +Unused bytes on index pages + + The total number of bytes of unused space on all index pages. The + percentage at the right is the number of unused bytes divided by the + total number of bytes on index pages. + +Unused bytes on primary pages + + The total number of bytes of unused space on all primary pages. The + percentage at the right is the number of unused bytes divided by the + total number of bytes on primary pages. + +Unused bytes on overflow pages + + The total number of bytes of unused space on all overflow pages. The + percentage at the right is the number of unused bytes divided by the + total number of bytes on overflow pages. + +Unused bytes on all pages + + The total number of bytes of unused space on all primary and overflow + pages. The percentage at the right is the number of unused bytes + divided by the total number of bytes. + +******************************************************************************* +The entire text of this report can be sourced into any SQL database +engine for further analysis. All of the text above is an SQL comment. +The data used to generate this report follows: +*/ +BEGIN; +CREATE TABLE space_used( + name clob, -- Name of a table or index in the database file + tblname clob, -- Name of associated table + is_index boolean, -- TRUE if it is an index, false for a table + nentry int, -- Number of entries in the BTree + leaf_entries int, -- Number of leaf entries + depth int, -- Depth of the b-tree + payload int, -- Total amount of data stored in this table or index + ovfl_payload int, -- Total amount of data stored on overflow pages + ovfl_cnt int, -- Number of entries that use overflow + mx_payload int, -- Maximum payload size + int_pages int, -- Number of interior pages used + leaf_pages int, -- Number of leaf pages used + ovfl_pages int, -- Number of overflow pages used + int_unused int, -- Number of unused bytes on interior pages + leaf_unused int, -- Number of unused bytes on primary pages + ovfl_unused int, -- Number of unused bytes on overflow pages + gap_cnt int, -- Number of gaps in the page layout + compressed_size int -- Total bytes stored on disk +); +INSERT INTO space_used VALUES('sqlite_master','sqlite_master',0,36,36,1,5188,0,0,379,0,1,0,0,27309,0,0,32768); +INSERT INTO space_used VALUES('moz_places','moz_places',0,10955,10894,2,1838131,0,0,1867,1,62,0,32207,121406,0,30,2064384); +INSERT INTO space_used VALUES('moz_historyvisits','moz_historyvisits',0,15884,15873,2,308447,0,0,21,1,12,0,32668,5435,0,8,425984); +INSERT INTO space_used VALUES('moz_inputhistory','moz_inputhistory',0,8,8,1,341,0,0,71,0,1,0,0,32379,0,0,32768); +INSERT INTO space_used VALUES('sqlite_autoindex_moz_inputhistory_1','moz_inputhistory',1,8,8,1,301,0,0,65,0,1,0,0,32435,0,0,32768); +INSERT INTO space_used VALUES('moz_hosts','moz_hosts',0,628,628,1,14640,0,0,49,0,1,0,0,15012,0,0,32768); +INSERT INTO space_used VALUES('sqlite_autoindex_moz_hosts_1','moz_hosts',1,628,628,1,13000,0,0,47,0,1,0,0,17876,0,0,32768); +INSERT INTO space_used VALUES('moz_bookmarks','moz_bookmarks',0,313,313,1,21937,0,0,518,0,1,0,0,9358,0,0,32768); +INSERT INTO space_used VALUES('moz_bookmarks_roots','moz_bookmarks_roots',0,5,5,1,47,0,0,11,0,1,0,0,32693,0,0,32768); +INSERT INTO space_used VALUES('sqlite_autoindex_moz_bookmarks_roots_1','moz_bookmarks_roots',1,5,5,1,47,0,0,11,0,1,0,0,32698,0,0,32768); +INSERT INTO space_used VALUES('moz_keywords','moz_keywords',0,0,0,1,0,0,0,0,0,1,0,0,32760,0,0,32768); +INSERT INTO space_used VALUES('sqlite_autoindex_moz_keywords_1','moz_keywords',1,0,0,1,0,0,0,0,0,1,0,0,32760,0,0,32768); +INSERT INTO space_used VALUES('sqlite_sequence','sqlite_sequence',0,1,1,1,15,0,0,15,0,1,0,0,32741,0,0,32768); +INSERT INTO space_used VALUES('moz_favicons','moz_favicons',0,481,471,2,297630,0,0,7640,1,11,0,32676,59923,0,6,393216); +INSERT INTO space_used VALUES('sqlite_autoindex_moz_favicons_1','moz_favicons',1,471,470,2,35135,0,0,7259,1,2,0,32664,29057,0,1,98304); +INSERT INTO space_used VALUES('moz_anno_attributes','moz_anno_attributes',0,12,12,1,355,0,0,42,0,1,0,0,32357,0,0,32768); +INSERT INTO space_used VALUES('sqlite_autoindex_moz_anno_attributes_1','moz_anno_attributes',1,12,12,1,366,0,0,43,0,1,0,0,32358,0,0,32768); +INSERT INTO space_used VALUES('moz_annos','moz_annos',0,195,195,1,12115,0,0,127,0,1,0,0,19702,0,0,32768); +INSERT INTO space_used VALUES('moz_items_annos','moz_items_annos',0,79,79,1,8649,0,0,384,0,1,0,0,23743,0,0,32768); +INSERT INTO space_used VALUES('sqlite_stat1','sqlite_stat1',0,15,15,1,762,0,0,62,0,1,0,0,31923,0,0,32768); +INSERT INTO space_used VALUES('moz_places_faviconindex','moz_places',1,10894,10891,2,83178,0,0,8,1,4,0,32711,15213,0,3,163840); +INSERT INTO space_used VALUES('moz_places_hostindex','moz_places',1,10894,10885,2,237383,0,0,49,1,10,0,32473,57782,0,7,360448); +INSERT INTO space_used VALUES('moz_places_visitcount','moz_places',1,10894,10891,2,66129,0,0,8,1,4,0,32717,32256,0,3,163840); +INSERT INTO space_used VALUES('moz_places_frecencyindex','moz_places',1,10894,10891,2,76772,0,0,9,1,4,0,32714,21616,0,3,163840); +INSERT INTO space_used VALUES('moz_places_lastvisitdateindex','moz_places',1,10894,10889,2,150784,0,0,14,1,6,0,32651,13179,0,4,229376); +INSERT INTO space_used VALUES('moz_historyvisits_placedateindex','moz_historyvisits',1,15873,15863,2,267273,0,0,17,1,11,0,32516,45668,0,8,393216); +INSERT INTO space_used VALUES('moz_historyvisits_fromindex','moz_historyvisits',1,15873,15869,2,100292,0,0,7,1,5,0,32702,15927,0,4,196608); +INSERT INTO space_used VALUES('moz_historyvisits_dateindex','moz_historyvisits',1,15873,15865,2,206221,0,0,13,1,9,0,32596,41128,0,6,327680); +INSERT INTO space_used VALUES('moz_bookmarks_itemindex','moz_bookmarks',1,313,313,1,2547,0,0,9,0,1,0,0,29274,0,0,32768); +INSERT INTO space_used VALUES('moz_bookmarks_parentindex','moz_bookmarks',1,313,313,1,2393,0,0,9,0,1,0,0,29428,0,0,32768); +INSERT INTO space_used VALUES('moz_bookmarks_itemlastmodifiedindex','moz_bookmarks',1,313,313,1,5020,0,0,17,0,1,0,0,26801,0,0,32768); +INSERT INTO space_used VALUES('moz_places_url_uniqueindex','moz_places',1,10894,10859,2,1010666,0,0,1823,1,36,0,24134,143261,0,16,1212416); +INSERT INTO space_used VALUES('moz_places_guid_uniqueindex','moz_places',1,10894,10887,2,196000,0,0,18,1,8,0,32581,33545,0,5,294912); +INSERT INTO space_used VALUES('moz_bookmarks_guid_uniqueindex','moz_bookmarks',1,313,313,1,5207,0,0,17,0,1,0,0,26614,0,0,32768); +INSERT INTO space_used VALUES('moz_annos_placeattributeindex','moz_annos',1,195,195,1,1871,0,0,10,0,1,0,0,30304,0,0,32768); +INSERT INTO space_used VALUES('moz_items_annos_itemattributeindex','moz_items_annos',1,79,79,1,562,0,0,9,0,1,0,0,31961,0,0,32768); +INSERT INTO space_used VALUES('moz_keywords_placepostdata_uniqueindex','moz_keywords',1,0,0,1,0,0,0,0,0,1,0,0,32760,0,0,32768); +COMMIT; +Index: pages/sqldiff.in ================================================================== --- pages/sqldiff.in +++ pages/sqldiff.in @@ -1,11 +1,11 @@
-The sqldiff.exe is a command-line utility program that +The sqldiff.exe binary is a command-line utility program that displays the differences between SQLite databases. Example usage:
-sqldiff [options] database1.sqlite database2.sqlite Index: pages/tclsqlite.in ================================================================== --- pages/tclsqlite.in +++ pages/tclsqlite.in @@ -79,11 +79,11 @@- @@ -100,20 +100,12 @@
If true, then open the database file read-only. If false, then the database is opened for both reading and writing if filesystem permissions allow, or for reading only if filesystem write permission is denied by the operating system. The default setting is "false". Note that -if the previous process to have the database did not exits cleanly +if the previous process to have the database did not exit cleanly and left behind a [hot journal], then the write permission is required to recover the database after opening, and the database cannot be opened read-only.
-Once an SQLite database is open, it can be controlled using -methods of the dbcmd. There are currently 22 methods -defined.
- --
+Once an SQLite database is open, it can be controlled using
+methods of the dbcmd.
+
| \n
|
The use of each of these methods will be explained in the sequel, though not in the order shown above.
dbcmd eval sql - ?array-name ? ?script? + ?array-name? ?script?
The job of the eval method is to execute the SQL statement or statements given in the second argument. For example, to create a new table in @@ -281,11 +295,11 @@
If the $bigstring variable has both a string and a "bytearray" representation, then TCL inserts the value as a string. If it has only a "bytearray" representation, then the value is inserted as a BLOB. To force a value to be inserted as a BLOB even if it also has a text representation, -us a "@" character to in place of the "$". Like this: +use a "@" character to in place of the "$". Like this:
db1 eval {INSERT INTO t1 VALUES(5,@bigstring)}@@ -366,11 +380,11 @@ The syntax looks like this:
dbcmd transaction ?transaction-type? - SCRIPT, + script
The transaction-type can be one of deferred, @@ -434,11 +448,11 @@ The syntax of the copy method looks like this:
dbcmd copy conflict-algorithm table-name file-name - ?column-separator ? + ?column-separator? ?null-indicator?
Conflict-algorithm must be one of the SQLite conflict algorithms for the INSERT statement: rollback, abort, @@ -461,21 +475,10 @@ is specified, a column-separator argument must be specified and precede the null-indicator argument.
The copy method implements similar functionality to the .import SQLite shell command. -The SQLite 2.x COPY statement -(using the PostgreSQL COPY file format) -can be implemented with this method as:
- --dbcmd copy $conflictalgo - $tablename $filename - \t - \\N -- } ############################################################################## METHOD timeout { @@ -782,11 +785,11 @@
This method opens a TCL channel that can be used to read or write into a preexisting BLOB in the database. The syntax is like this:
-dbcmd incrblob ?-readonly?? +dbcmd incrblob ?-readonly? ?DB? TABLE COLUMN ROWID
The command returns a new TCL channel for reading or writing to the BLOB. @@ -836,11 +839,11 @@ } ############################################################################## METHOD restore { -
The "restore" method copies the content a separate database file +
The "restore" method copies the content from a separate database file into the current database connection, overwriting any preexisting content. The command syntax is like this:
dbcmd restore ?target-database? source-filename