Documentation Source Text

Check-in [5557403d9c]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Update compile.html with SQLITE_MAX_SCHEMA_RETRY and SQLITE_OMIT_MERGE_SORT.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 5557403d9cdfd2973fb0803b906a65315debd48c
User & Date: drh 2011-09-19 16:41:21.831
Context
2011-09-19
17:31
Changes prior to release. (check-in: 7cd488eca0 user: drh tags: trunk)
16:41
Update compile.html with SQLITE_MAX_SCHEMA_RETRY and SQLITE_OMIT_MERGE_SORT. (check-in: 5557403d9c user: drh tags: trunk)
15:42
Add the new database footprint page and populate it with statistics for SQLite version 3.7.8. (check-in: c3a816983f user: drh tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to pages/compile.in.
122
123
124
125
126
127
128













129
130
131
132
133
134
135
}

COMPILE_OPTION {SQLITE_DEFAULT_WAL_AUTOCHECKPOINT=<i>&lt;pages&gt;</i>} {
  This macro sets the default page count for the [WAL]
  [checkpointing | automatic checkpointing] feature.  If unspecified,
  the default page count is 1000.
}














COMPILE_OPTION {YYSTACKDEPTH=<i>&lt;max_depth&gt;</i>} {
  This macro sets the maximum depth of the LALR(1) stack used by
  the SQL parser within SQLite.  The default value is 100.  A typical
  application will use less than about 20 levels of the stack.
  Developers whose applications contain SQL statements that 
  need more than 100 LALR(1) stack entries should seriously







>
>
>
>
>
>
>
>
>
>
>
>
>







122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
}

COMPILE_OPTION {SQLITE_DEFAULT_WAL_AUTOCHECKPOINT=<i>&lt;pages&gt;</i>} {
  This macro sets the default page count for the [WAL]
  [checkpointing | automatic checkpointing] feature.  If unspecified,
  the default page count is 1000.
}

COMPILE_OPTION {SQLITE_MAX_SCHEMA_RETRY=<i>N</i>} {
  Whenever the database schema changes, prepared statements are automatically
  reprepared to accommodate the new schema.  There is a race condition here
  in that if one thread is constantly changing the schema, another thread
  might spin on reparses and repreparations of a prepared statement and
  never get any real work done.  This parameter prevents an infinite loop
  by forcing the spinning thread to give up after a fixed number of attempts
  at recompiling the prepared statement.  The default setting is 5 which is
  more than adequate for most applications.  But in some obscure cases, it
  is useful to raise this parameter to 100 or more to prevent spurious
  [SQLITE_SCHEMA] errors when running [sqlite3_step()].
}

COMPILE_OPTION {YYSTACKDEPTH=<i>&lt;max_depth&gt;</i>} {
  This macro sets the maximum depth of the LALR(1) stack used by
  the SQL parser within SQLite.  The default value is 100.  A typical
  application will use less than about 20 levels of the stack.
  Developers whose applications contain SQL statements that 
  need more than 100 LALR(1) stack entries should seriously
801
802
803
804
805
806
807











808
809
810
811
812
813
814
COMPILE_OPTION {SQLITE_OMIT_MEMORYDB} {
  When this is defined, the library does not respect the special database
  name ":memory:" (normally used to create an [in-memory database]). If 
  ":memory:" is passed to [sqlite3_open()], [sqlite3_open16()], or
  [sqlite3_open_v2()], a file with this name will be 
  opened or created.
}












COMPILE_OPTION {SQLITE_OMIT_OR_OPTIMIZATION} {
  This option disables the ability of SQLite to use an index together
  with terms of a WHERE clause connected by the OR operator.
}

COMPILE_OPTION {SQLITE_OMIT_PAGER_PRAGMAS} {







>
>
>
>
>
>
>
>
>
>
>







814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
COMPILE_OPTION {SQLITE_OMIT_MEMORYDB} {
  When this is defined, the library does not respect the special database
  name ":memory:" (normally used to create an [in-memory database]). If 
  ":memory:" is passed to [sqlite3_open()], [sqlite3_open16()], or
  [sqlite3_open_v2()], a file with this name will be 
  opened or created.
}

COMPILE_OPTION {SQLITE_OMIT_MERGE_SORT} {
  Beginning with SQLite [version 3.7.8], large sort operations such as
  used by [CREATE INDEX] commands are implemented using an external
  merge sort rather than insertions into a B-Tree.  This results in better
  cache locality and an order-of-magnitude speed improvement for sorts that
  are larger than the filesystem cache.  On the other hand, the merge sort
  logic uses some code space and is slightly (1%) slower for [CREATE INDEX]
  on small tables.  The external merge sort can be disabled using this
  compile-time option.
}

COMPILE_OPTION {SQLITE_OMIT_OR_OPTIMIZATION} {
  This option disables the ability of SQLite to use an index together
  with terms of a WHERE clause connected by the OR operator.
}

COMPILE_OPTION {SQLITE_OMIT_PAGER_PRAGMAS} {