]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Merge all changes from index_xinfo, including the move of the pragma table
authordrh <drh@noemail.net>
Wed, 4 Feb 2015 23:51:59 +0000 (23:51 +0000)
committerdrh <drh@noemail.net>
Wed, 4 Feb 2015 23:51:59 +0000 (23:51 +0000)
into the separate pragma.h file.

FossilOrigin-Name: 21e95d28a51e56b45a9d4166475972535e53f954

1  2 
main.mk
manifest
manifest.uuid
src/pragma.c
src/pragma.h
tool/mkpragmatab.tcl

diff --cc main.mk
Simple merge
diff --cc manifest
index bbae196aaa35da5eb71c034280baca95df439109,a971e309c7ebb2608c73d0f27c560de1f8d4d61f..6512a12554d2e8a8e1ba40c1ba38ae57a36448eb
+++ b/manifest
@@@ -1,9 -1,9 +1,9 @@@
- C Fix\sthe\serror\smessages\sreturned\sby\sota\sif\san\supdate\sviolates\sa\sunique\sconstraint.
- D 2015-02-04T19:20:42.631
 -C Merge\sall\srecent\strunk\schanges,\sincluding\sthe\smovement\sof\sthe\spragma\ntable\sinto\sthe\sseparate\spragma.h\sheader\sfile.
 -D 2015-02-04T23:13:48.687
++C Merge\sall\schanges\sfrom\sindex_xinfo,\sincluding\sthe\smove\sof\sthe\spragma\stable\ninto\sthe\sseparate\spragma.h\sfile.
++D 2015-02-04T23:51:59.867
  F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
- F Makefile.in 5407a688f4d77a05c18a8142be8ae5a2829dd610
+ F Makefile.in 6b9e7677829aa94b9f30949656e27312aefb9a46
  F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
- F Makefile.msc 1edfd7dd45d98a04f9a2fa81a01c49faeb628578
+ F Makefile.msc fc6b0b233b5621f3e56298e4d6a0b3f6c936c520
  F Makefile.vxworks e1b65dea203f054e71653415bd8f96dcaed47858
  F README.md d58e3bebc0a4145e0f2a87994015fdb575a8e866
  F VERSION d846487aff892625eb8e75960234e7285f0462fe
@@@ -167,7 -152,7 +167,7 @@@ F ext/userauth/userauth.c 5fa3bdb492f48
  F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895 x
  F ltmain.sh 3ff0879076df340d2e23ae905484d8c15d5fdea8
  F magic.txt 8273bf49ba3b0c8559cb2774495390c31fd61c60
- F main.mk 9d3b0b164e5e1eda8af9ac60520c315699dccbc3
 -F main.mk 0bae136db3f3ce451079ae335124b46163d37020
++F main.mk 1de9f345052b7cf631e3323b42bd35064cdfcf0a
  F mkopcodec.awk c2ff431854d702cdd2d779c9c0d1f58fa16fa4ea
  F mkopcodeh.awk c6b3fa301db6ef7ac916b14c60868aeaec1337b5
  F mkso.sh fd21c06b063bb16a5d25deea1752c2da6ac3ed83
@@@ -238,7 -223,8 +238,8 @@@ F src/parse.y c5d0d964f9ac023e8154cad51
  F src/pcache.c d210cf90d04365a74f85d21374dded65af67b0cb
  F src/pcache.h b44658c9c932d203510279439d891a2a83e12ba8
  F src/pcache1.c 1e77432b40b7d3288327d9cdf399dcdfd2b6d3bf
- F src/pragma.c e39954ff47e287f88bdf9e9adb123da029e83d9f
 -F src/pragma.c ea0be138a99784b14e87bd4522fea40e7b979e9c
 -F src/pragma.h 09c89bca58e9a44de2116cc8272b8d454657129f
++F src/pragma.c 6e376554d9574416559101369fad2207c1e73299
++F src/pragma.h d2f776d719d156544638fe3f87f9627d8e16222f
  F src/prepare.c 173a5a499138451b2561614ecb87d78f9f4644b9
  F src/printf.c 05edc41450d0eb2c05ef7db113bf32742ae65325
  F src/random.c ba2679f80ec82c4190062d756f22d0c358180696
@@@ -1218,10 -1203,10 +1219,10 @@@ F tool/logest.c eef612f8adf4d0993dafed0
  F tool/mkautoconfamal.sh d1a2da0e15b2ed33d60af35c7e9d483f13a8eb9f
  F tool/mkkeywordhash.c dfff09dbbfaf950e89af294f48f902181b144670
  F tool/mkopts.tcl 66ac10d240cc6e86abd37dc908d50382f84ff46e
- F tool/mkpragmatab.tcl aea392b69f8e72715760629cd50411d37bc85de4
 -F tool/mkpragmatab.tcl 94f196c9961e0ca3513e29f57125a3197808be2d
++F tool/mkpragmatab.tcl a5cb9b20ad7abb2ffd519c85f1f8f99bcbfa6823
  F tool/mkspeedsql.tcl a1a334d288f7adfe6e996f2e712becf076745c97
  F tool/mksqlite3c-noext.tcl 9ef48e1748dce7b844f67e2450ff9dfeb0fb4ab5
- F tool/mksqlite3c.tcl cfde806851c413db7689b9cb74a4eeb92539c601
+ F tool/mksqlite3c.tcl 6b8e572a90eb4e0086e3ba90d88b76c085919863
  F tool/mksqlite3h.tcl ba24038056f51fde07c0079c41885ab85e2cff12
  F tool/mksqlite3internalh.tcl eb994013e833359137eb53a55acdad0b5ae1049b
  F tool/mkvsix.tcl 52a4c613707ac34ae9c226e5ccc69cb948556105
@@@ -1254,7 -1239,7 +1255,7 @@@ F tool/vdbe_profile.tcl 67746953071a9f8
  F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
  F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32
  F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
- P 1db198ccca1e5c5a922cefe3daeff8d2e5d3a7f7
- R d14aafac71cb07666d32346674c8200d
- U dan
- Z f2b3565f17adbd359615b6fecd58bae9
 -P 30f51d7b3b292191e8351223242e708bb7f3dfa6 71691c4be54b9ac6a35e35013f939b7d6fd4e6b8
 -R 378ae50354305236538b7809f97882cb
++P c4845a3b591723ff60b7b1da198f44908c12bdfc 3af19f84446ba5fc1ed754d0d73f6a6d7fb2f365
++R f8693fbefe5770ef46252d8013588714
+ U drh
 -Z 0caaf9e8578eb01b04939eddfffb5b67
++Z 86d4960217df24559dfd1328c13955b1
diff --cc manifest.uuid
index a3e199e74c1d8716cd402f3ae545d655727df521,28c1161b98dfc82c276e643304255854679596b6..f5ba861c450b2357c4f90658b42b88aecbaa6f94
@@@ -1,1 -1,1 +1,1 @@@
- c4845a3b591723ff60b7b1da198f44908c12bdfc
 -3af19f84446ba5fc1ed754d0d73f6a6d7fb2f365
++21e95d28a51e56b45a9d4166475972535e53f954
diff --cc src/pragma.c
Simple merge
diff --cc src/pragma.h
index 0000000000000000000000000000000000000000,c9ae8e6eb8e94e4857b5029b69e4fe333c6201ce..b2cf43911bdcd0e94da58f000304030636d4b5cb
mode 000000,100644..100644
--- /dev/null
@@@ -1,0 -1,459 +1,466 @@@
 -#define PragTyp_SECURE_DELETE                 25
 -#define PragTyp_SHRINK_MEMORY                 26
 -#define PragTyp_SOFT_HEAP_LIMIT               27
 -#define PragTyp_STATS                         28
 -#define PragTyp_SYNCHRONOUS                   29
 -#define PragTyp_TABLE_INFO                    30
 -#define PragTyp_TEMP_STORE                    31
 -#define PragTyp_TEMP_STORE_DIRECTORY          32
 -#define PragTyp_THREADS                       33
 -#define PragTyp_WAL_AUTOCHECKPOINT            34
 -#define PragTyp_WAL_CHECKPOINT                35
 -#define PragTyp_ACTIVATE_EXTENSIONS           36
 -#define PragTyp_HEXKEY                        37
 -#define PragTyp_KEY                           38
 -#define PragTyp_REKEY                         39
 -#define PragTyp_LOCK_STATUS                   40
 -#define PragTyp_PARSER_TRACE                  41
+ /* DO NOT EDIT!
+ ** This file is automatically generated by the script at
+ ** ../tool/mkpragmatab.tcl.  To update the set of pragmas, edit
+ ** that script and rerun it.
+ */
+ #define PragTyp_HEADER_VALUE                   0
+ #define PragTyp_AUTO_VACUUM                    1
+ #define PragTyp_FLAG                           2
+ #define PragTyp_BUSY_TIMEOUT                   3
+ #define PragTyp_CACHE_SIZE                     4
+ #define PragTyp_CASE_SENSITIVE_LIKE            5
+ #define PragTyp_COLLATION_LIST                 6
+ #define PragTyp_COMPILE_OPTIONS                7
+ #define PragTyp_DATA_STORE_DIRECTORY           8
+ #define PragTyp_DATABASE_LIST                  9
+ #define PragTyp_DEFAULT_CACHE_SIZE            10
+ #define PragTyp_ENCODING                      11
+ #define PragTyp_FOREIGN_KEY_CHECK             12
+ #define PragTyp_FOREIGN_KEY_LIST              13
+ #define PragTyp_INCREMENTAL_VACUUM            14
+ #define PragTyp_INDEX_INFO                    15
+ #define PragTyp_INDEX_LIST                    16
+ #define PragTyp_INTEGRITY_CHECK               17
+ #define PragTyp_JOURNAL_MODE                  18
+ #define PragTyp_JOURNAL_SIZE_LIMIT            19
+ #define PragTyp_LOCK_PROXY_FILE               20
+ #define PragTyp_LOCKING_MODE                  21
+ #define PragTyp_PAGE_COUNT                    22
+ #define PragTyp_MMAP_SIZE                     23
+ #define PragTyp_PAGE_SIZE                     24
 -/* Number of pragmas: 59 on by default, 72 total. */
++#define PragTyp_PAGER_OTA_MODE                25
++#define PragTyp_SECURE_DELETE                 26
++#define PragTyp_SHRINK_MEMORY                 27
++#define PragTyp_SOFT_HEAP_LIMIT               28
++#define PragTyp_STATS                         29
++#define PragTyp_SYNCHRONOUS                   30
++#define PragTyp_TABLE_INFO                    31
++#define PragTyp_TEMP_STORE                    32
++#define PragTyp_TEMP_STORE_DIRECTORY          33
++#define PragTyp_THREADS                       34
++#define PragTyp_WAL_AUTOCHECKPOINT            35
++#define PragTyp_WAL_CHECKPOINT                36
++#define PragTyp_ACTIVATE_EXTENSIONS           37
++#define PragTyp_HEXKEY                        38
++#define PragTyp_KEY                           39
++#define PragTyp_REKEY                         40
++#define PragTyp_LOCK_STATUS                   41
++#define PragTyp_PARSER_TRACE                  42
+ #define PragFlag_NeedSchema           0x01
+ #define PragFlag_ReadOnly             0x02
+ static const struct sPragmaNames {
+   const char *const zName;  /* Name of pragma */
+   u8 ePragTyp;              /* PragTyp_XXX value */
+   u8 mPragFlag;             /* Zero or more PragFlag_XXX values */
+   u32 iArg;                 /* Extra argument */
+ } aPragmaNames[] = {
+ #if defined(SQLITE_HAS_CODEC) || defined(SQLITE_ENABLE_CEROD)
+   { /* zName:     */ "activate_extensions",
+     /* ePragTyp:  */ PragTyp_ACTIVATE_EXTENSIONS,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS)
+   { /* zName:     */ "application_id",
+     /* ePragTyp:  */ PragTyp_HEADER_VALUE,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ BTREE_APPLICATION_ID },
+ #endif
+ #if !defined(SQLITE_OMIT_AUTOVACUUM)
+   { /* zName:     */ "auto_vacuum",
+     /* ePragTyp:  */ PragTyp_AUTO_VACUUM,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
+ #if !defined(SQLITE_OMIT_AUTOMATIC_INDEX)
+   { /* zName:     */ "automatic_index",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_AutoIndex },
+ #endif
+ #endif
+   { /* zName:     */ "busy_timeout",
+     /* ePragTyp:  */ PragTyp_BUSY_TIMEOUT,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
+   { /* zName:     */ "cache_size",
+     /* ePragTyp:  */ PragTyp_CACHE_SIZE,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
+   { /* zName:     */ "cache_spill",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_CacheSpill },
+ #endif
+   { /* zName:     */ "case_sensitive_like",
+     /* ePragTyp:  */ PragTyp_CASE_SENSITIVE_LIKE,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
+   { /* zName:     */ "checkpoint_fullfsync",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_CkptFullFSync },
+ #endif
+ #if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
+   { /* zName:     */ "collation_list",
+     /* ePragTyp:  */ PragTyp_COLLATION_LIST,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_COMPILEOPTION_DIAGS)
+   { /* zName:     */ "compile_options",
+     /* ePragTyp:  */ PragTyp_COMPILE_OPTIONS,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
+   { /* zName:     */ "count_changes",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_CountRows },
+ #endif
+ #if !defined(SQLITE_OMIT_PAGER_PRAGMAS) && SQLITE_OS_WIN
+   { /* zName:     */ "data_store_directory",
+     /* ePragTyp:  */ PragTyp_DATA_STORE_DIRECTORY,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS)
+   { /* zName:     */ "data_version",
+     /* ePragTyp:  */ PragTyp_HEADER_VALUE,
+     /* ePragFlag: */ PragFlag_ReadOnly,
+     /* iArg:      */ BTREE_DATA_VERSION },
+ #endif
+ #if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
+   { /* zName:     */ "database_list",
+     /* ePragTyp:  */ PragTyp_DATABASE_LIST,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_PAGER_PRAGMAS) && !defined(SQLITE_OMIT_DEPRECATED)
+   { /* zName:     */ "default_cache_size",
+     /* ePragTyp:  */ PragTyp_DEFAULT_CACHE_SIZE,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
+ #if !defined(SQLITE_OMIT_FOREIGN_KEY) && !defined(SQLITE_OMIT_TRIGGER)
+   { /* zName:     */ "defer_foreign_keys",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_DeferFKs },
+ #endif
+ #endif
+ #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
+   { /* zName:     */ "empty_result_callbacks",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_NullCallback },
+ #endif
+ #if !defined(SQLITE_OMIT_UTF16)
+   { /* zName:     */ "encoding",
+     /* ePragTyp:  */ PragTyp_ENCODING,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_FOREIGN_KEY) && !defined(SQLITE_OMIT_TRIGGER)
+   { /* zName:     */ "foreign_key_check",
+     /* ePragTyp:  */ PragTyp_FOREIGN_KEY_CHECK,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_FOREIGN_KEY)
+   { /* zName:     */ "foreign_key_list",
+     /* ePragTyp:  */ PragTyp_FOREIGN_KEY_LIST,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
+ #if !defined(SQLITE_OMIT_FOREIGN_KEY) && !defined(SQLITE_OMIT_TRIGGER)
+   { /* zName:     */ "foreign_keys",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_ForeignKeys },
+ #endif
+ #endif
+ #if !defined(SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS)
+   { /* zName:     */ "freelist_count",
+     /* ePragTyp:  */ PragTyp_HEADER_VALUE,
+     /* ePragFlag: */ PragFlag_ReadOnly,
+     /* iArg:      */ BTREE_FREE_PAGE_COUNT },
+ #endif
+ #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
+   { /* zName:     */ "full_column_names",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_FullColNames },
+   { /* zName:     */ "fullfsync",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_FullFSync },
+ #endif
+ #if defined(SQLITE_HAS_CODEC)
+   { /* zName:     */ "hexkey",
+     /* ePragTyp:  */ PragTyp_HEXKEY,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+   { /* zName:     */ "hexrekey",
+     /* ePragTyp:  */ PragTyp_HEXKEY,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
+ #if !defined(SQLITE_OMIT_CHECK)
+   { /* zName:     */ "ignore_check_constraints",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_IgnoreChecks },
+ #endif
+ #endif
+ #if !defined(SQLITE_OMIT_AUTOVACUUM)
+   { /* zName:     */ "incremental_vacuum",
+     /* ePragTyp:  */ PragTyp_INCREMENTAL_VACUUM,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
+   { /* zName:     */ "index_info",
+     /* ePragTyp:  */ PragTyp_INDEX_INFO,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+   { /* zName:     */ "index_list",
+     /* ePragTyp:  */ PragTyp_INDEX_LIST,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+   { /* zName:     */ "index_xinfo",
+     /* ePragTyp:  */ PragTyp_INDEX_INFO,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 1 },
+ #endif
+ #if !defined(SQLITE_OMIT_INTEGRITY_CHECK)
+   { /* zName:     */ "integrity_check",
+     /* ePragTyp:  */ PragTyp_INTEGRITY_CHECK,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
+   { /* zName:     */ "journal_mode",
+     /* ePragTyp:  */ PragTyp_JOURNAL_MODE,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+   { /* zName:     */ "journal_size_limit",
+     /* ePragTyp:  */ PragTyp_JOURNAL_SIZE_LIMIT,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #endif
+ #if defined(SQLITE_HAS_CODEC)
+   { /* zName:     */ "key",
+     /* ePragTyp:  */ PragTyp_KEY,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
+   { /* zName:     */ "legacy_file_format",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_LegacyFileFmt },
+ #endif
+ #if !defined(SQLITE_OMIT_PAGER_PRAGMAS) && SQLITE_ENABLE_LOCKING_STYLE
+   { /* zName:     */ "lock_proxy_file",
+     /* ePragTyp:  */ PragTyp_LOCK_PROXY_FILE,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #endif
+ #if defined(SQLITE_DEBUG) || defined(SQLITE_TEST)
+   { /* zName:     */ "lock_status",
+     /* ePragTyp:  */ PragTyp_LOCK_STATUS,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
+   { /* zName:     */ "locking_mode",
+     /* ePragTyp:  */ PragTyp_LOCKING_MODE,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+   { /* zName:     */ "max_page_count",
+     /* ePragTyp:  */ PragTyp_PAGE_COUNT,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+   { /* zName:     */ "mmap_size",
+     /* ePragTyp:  */ PragTyp_MMAP_SIZE,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+   { /* zName:     */ "page_count",
+     /* ePragTyp:  */ PragTyp_PAGE_COUNT,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+   { /* zName:     */ "page_size",
+     /* ePragTyp:  */ PragTyp_PAGE_SIZE,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #endif
++#if defined(SQLITE_ENABLE_OTA)
++  { /* zName:     */ "pager_ota_mode",
++    /* ePragTyp:  */ PragTyp_PAGER_OTA_MODE,
++    /* ePragFlag: */ 0,
++    /* iArg:      */ 0 },
++#endif
+ #if defined(SQLITE_DEBUG)
+   { /* zName:     */ "parser_trace",
+     /* ePragTyp:  */ PragTyp_PARSER_TRACE,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
+   { /* zName:     */ "query_only",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_QueryOnly },
+ #endif
+ #if !defined(SQLITE_OMIT_INTEGRITY_CHECK)
+   { /* zName:     */ "quick_check",
+     /* ePragTyp:  */ PragTyp_INTEGRITY_CHECK,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
+   { /* zName:     */ "read_uncommitted",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_ReadUncommitted },
+   { /* zName:     */ "recursive_triggers",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_RecTriggers },
+ #endif
+ #if defined(SQLITE_HAS_CODEC)
+   { /* zName:     */ "rekey",
+     /* ePragTyp:  */ PragTyp_REKEY,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
+   { /* zName:     */ "reverse_unordered_selects",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_ReverseOrder },
+ #endif
+ #if !defined(SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS)
+   { /* zName:     */ "schema_version",
+     /* ePragTyp:  */ PragTyp_HEADER_VALUE,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ BTREE_SCHEMA_VERSION },
+ #endif
+ #if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
+   { /* zName:     */ "secure_delete",
+     /* ePragTyp:  */ PragTyp_SECURE_DELETE,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
+   { /* zName:     */ "short_column_names",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_ShortColNames },
+ #endif
+   { /* zName:     */ "shrink_memory",
+     /* ePragTyp:  */ PragTyp_SHRINK_MEMORY,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+   { /* zName:     */ "soft_heap_limit",
+     /* ePragTyp:  */ PragTyp_SOFT_HEAP_LIMIT,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
+ #if defined(SQLITE_DEBUG)
+   { /* zName:     */ "sql_trace",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_SqlTrace },
+ #endif
+ #endif
+ #if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
+   { /* zName:     */ "stats",
+     /* ePragTyp:  */ PragTyp_STATS,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
+   { /* zName:     */ "synchronous",
+     /* ePragTyp:  */ PragTyp_SYNCHRONOUS,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_SCHEMA_PRAGMAS)
+   { /* zName:     */ "table_info",
+     /* ePragTyp:  */ PragTyp_TABLE_INFO,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_PAGER_PRAGMAS)
+   { /* zName:     */ "temp_store",
+     /* ePragTyp:  */ PragTyp_TEMP_STORE,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+   { /* zName:     */ "temp_store_directory",
+     /* ePragTyp:  */ PragTyp_TEMP_STORE_DIRECTORY,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #endif
+   { /* zName:     */ "threads",
+     /* ePragTyp:  */ PragTyp_THREADS,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+ #if !defined(SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS)
+   { /* zName:     */ "user_version",
+     /* ePragTyp:  */ PragTyp_HEADER_VALUE,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ BTREE_USER_VERSION },
+ #endif
+ #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
+ #if defined(SQLITE_DEBUG)
+   { /* zName:     */ "vdbe_addoptrace",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_VdbeAddopTrace },
+   { /* zName:     */ "vdbe_debug",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_SqlTrace|SQLITE_VdbeListing|SQLITE_VdbeTrace },
+   { /* zName:     */ "vdbe_eqp",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_VdbeEQP },
+   { /* zName:     */ "vdbe_listing",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_VdbeListing },
+   { /* zName:     */ "vdbe_trace",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_VdbeTrace },
+ #endif
+ #endif
+ #if !defined(SQLITE_OMIT_WAL)
+   { /* zName:     */ "wal_autocheckpoint",
+     /* ePragTyp:  */ PragTyp_WAL_AUTOCHECKPOINT,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ 0 },
+   { /* zName:     */ "wal_checkpoint",
+     /* ePragTyp:  */ PragTyp_WAL_CHECKPOINT,
+     /* ePragFlag: */ PragFlag_NeedSchema,
+     /* iArg:      */ 0 },
+ #endif
+ #if !defined(SQLITE_OMIT_FLAG_PRAGMAS)
+   { /* zName:     */ "writable_schema",
+     /* ePragTyp:  */ PragTyp_FLAG,
+     /* ePragFlag: */ 0,
+     /* iArg:      */ SQLITE_WriteSchema|SQLITE_RecoveryMode },
+ #endif
+ };
++/* Number of pragmas: 59 on by default, 73 total. */
index 0d93704d70f100afa0bb85e3dd39b52acf6e7204,964946e788021fac4af805929d8453075137f9c0..5627a19d354f3acbd2a271550e486c641f068461
@@@ -315,11 -315,21 +315,24 @@@ set pragma_def 
    NAME: soft_heap_limit
  
    NAME: threads
 +
 +  NAME: pager_ota_mode
 +  IF:   defined(SQLITE_ENABLE_OTA)
  }
- fconfigure stdout -translation lf
+ # Open the output file
+ #
+ set destfile "[file dir [file dir [file normal $argv0]]]/src/pragma.h"
+ puts "Overwriting $destfile with new pragma table..."
+ set fd [open $destfile wb]
+ puts $fd {/* DO NOT EDIT!
+ ** This file is automatically generated by the script at
+ ** ../tool/mkpragmatab.tcl.  To update the set of pragmas, edit
+ ** that script and rerun it.
+ */}
+ # Parse the PRAGMA table above.
+ #
  set name {}
  set type {}
  set if {}