Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Change the TEMP_STORE preprocessor symbol to SQLITE_TEMP_STORE. (CVS 5312) |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
1e3b8308021107d983d2152663f62b36 |
User & Date: | danielk1977 2008-06-26 10:54:12.000 |
Context
2008-06-26
| ||
15:04 | Document the rules for when an sqlite3_blob object expires. (CVS 5313) (check-in: e1de2287fd user: drh tags: trunk) | |
10:54 | Change the TEMP_STORE preprocessor symbol to SQLITE_TEMP_STORE. (CVS 5312) (check-in: 1e3b830802 user: danielk1977 tags: trunk) | |
10:41 | Change the OS_XXX pre-processor symbols to SQLITE_OS_XXX. Symbols "OS_UNIX", "OS_WIN", "OS_WINCE", "OS_OS2" and "OS_OTHER" are now "SQLITE_OS_UNIX", "SQLITE_OS_WIN", "SQLITE_OS_WINCE", "SQLITE_OS_OS2" and "SQLITE_OS_OTHER", respectively. (CVS 5311) (check-in: cdd4cf4ce2 user: danielk1977 tags: trunk) | |
Changes
Changes to Makefile.in.
︙ | ︙ | |||
65 66 67 68 69 70 71 | # Any target libraries which libsqlite must be linked against # TLIBS = @LIBS@ # Flags controlling use of the in memory btree implementation # | | | | 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 | # Any target libraries which libsqlite must be linked against # TLIBS = @LIBS@ # Flags controlling use of the in memory btree implementation # # SQLITE_TEMP_STORE is 0 to force temporary tables to be in a file, 1 to # default to file, 2 to default to memory, and 3 to force temporary # tables to always be in memory. # TEMP_STORE = -DSQLITE_TEMP_STORE=@TEMP_STORE@ # Enable/disable loadable extensions based on configuration TCC += @LOADEXTENSION_FLAGS@ # Version numbers and release number for the SQLite being compiled. # VERSION = @VERSION@ |
︙ | ︙ |
Changes to src/main.c.
︙ | ︙ | |||
10 11 12 13 14 15 16 | ** ************************************************************************* ** Main file for the SQLite library. The routines in this file ** implement the programmer interface to the library. Routines in ** other files are for internal use by SQLite and should not be ** accessed by users of the library. ** | | | 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | ** ************************************************************************* ** Main file for the SQLite library. The routines in this file ** implement the programmer interface to the library. Routines in ** other files are for internal use by SQLite and should not be ** accessed by users of the library. ** ** $Id: main.c,v 1.465 2008/06/26 10:54:12 danielk1977 Exp $ */ #include "sqliteInt.h" #include <ctype.h> #ifdef SQLITE_ENABLE_FTS3 # include "fts3.h" #endif |
︙ | ︙ | |||
915 916 917 918 919 920 921 | ** the database is stored in memory (and is thus forgotten as soon as ** the connection is closed.) If zFilename is NULL then the database ** is a "virtual" database for transient use only and is deleted as ** soon as the connection is closed. ** ** A virtual database can be either a disk file (that is automatically ** deleted when the file is closed) or it an be held entirely in memory, | | | | | | | | | | | | | 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 | ** the database is stored in memory (and is thus forgotten as soon as ** the connection is closed.) If zFilename is NULL then the database ** is a "virtual" database for transient use only and is deleted as ** soon as the connection is closed. ** ** A virtual database can be either a disk file (that is automatically ** deleted when the file is closed) or it an be held entirely in memory, ** depending on the values of the SQLITE_TEMP_STORE compile-time macro and the ** db->temp_store variable, according to the following chart: ** ** SQLITE_TEMP_STORE db->temp_store Location of temporary database ** ----------------- -------------- ------------------------------ ** 0 any file ** 1 1 file ** 1 2 memory ** 1 0 file ** 2 1 file ** 2 2 memory ** 2 0 memory ** 3 any memory */ int sqlite3BtreeFactory( const sqlite3 *db, /* Main database when opening aux otherwise 0 */ const char *zFilename, /* Name of the file containing the BTree database */ int omitJournal, /* if TRUE then do not journal this file */ int nCache, /* How many pages in the page cache */ int vfsFlags, /* Flags passed through to vfsOpen */ |
︙ | ︙ | |||
949 950 951 952 953 954 955 | if( omitJournal ){ btFlags |= BTREE_OMIT_JOURNAL; } if( db->flags & SQLITE_NoReadlock ){ btFlags |= BTREE_NO_READLOCK; } if( zFilename==0 ){ | | | | | | 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 | if( omitJournal ){ btFlags |= BTREE_OMIT_JOURNAL; } if( db->flags & SQLITE_NoReadlock ){ btFlags |= BTREE_NO_READLOCK; } if( zFilename==0 ){ #if SQLITE_TEMP_STORE==0 /* Do nothing */ #endif #ifndef SQLITE_OMIT_MEMORYDB #if SQLITE_TEMP_STORE==1 if( db->temp_store==2 ) zFilename = ":memory:"; #endif #if SQLITE_TEMP_STORE==2 if( db->temp_store!=1 ) zFilename = ":memory:"; #endif #if SQLITE_TEMP_STORE==3 zFilename = ":memory:"; #endif #endif /* SQLITE_OMIT_MEMORYDB */ } if( (vfsFlags & SQLITE_OPEN_MAIN_DB)!=0 && (zFilename==0 || *zFilename==0) ){ vfsFlags = (vfsFlags & ~SQLITE_OPEN_MAIN_DB) | SQLITE_OPEN_TEMP_DB; |
︙ | ︙ |
Changes to src/pragma.c.
1 2 3 4 5 6 7 8 9 10 11 12 13 | /* ** 2003 April 6 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** This file contains code used to implement the PRAGMA command. ** | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | /* ** 2003 April 6 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** This file contains code used to implement the PRAGMA command. ** ** $Id: pragma.c,v 1.181 2008/06/26 10:54:12 danielk1977 Exp $ */ #include "sqliteInt.h" #include <ctype.h> /* Ignore this whole file if pragmas are disabled */ #if !defined(SQLITE_OMIT_PRAGMA) && !defined(SQLITE_OMIT_PARSER) |
︙ | ︙ | |||
123 124 125 126 127 128 129 | return SQLITE_OK; } #endif /* SQLITE_PAGER_PRAGMAS */ #ifndef SQLITE_OMIT_PAGER_PRAGMAS /* ** If the TEMP database is open, close it and mark the database schema | | | 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 | return SQLITE_OK; } #endif /* SQLITE_PAGER_PRAGMAS */ #ifndef SQLITE_OMIT_PAGER_PRAGMAS /* ** If the TEMP database is open, close it and mark the database schema ** as needing reloading. This must be done when using the SQLITE_TEMP_STORE ** or DEFAULT_TEMP_STORE pragmas. */ static int changeTempStorage(Parse *pParse, const char *zStorageType){ int ts = getTempStore(zStorageType); sqlite3 *db = pParse->db; if( db->temp_store==ts ) return SQLITE_OK; if( invalidateTempStorage( pParse ) != SQLITE_OK ){ |
︙ | ︙ | |||
670 671 672 673 674 675 676 | int res; sqlite3OsAccess(db->pVfs, zRight, SQLITE_ACCESS_READWRITE, &res); if( res==0 ){ sqlite3ErrorMsg(pParse, "not a writable directory"); goto pragma_out; } } | | | | | 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 | int res; sqlite3OsAccess(db->pVfs, zRight, SQLITE_ACCESS_READWRITE, &res); if( res==0 ){ sqlite3ErrorMsg(pParse, "not a writable directory"); goto pragma_out; } } if( SQLITE_TEMP_STORE==0 || (SQLITE_TEMP_STORE==1 && db->temp_store<=1) || (SQLITE_TEMP_STORE==2 && db->temp_store==1) ){ invalidateTempStorage(pParse); } sqlite3_free(sqlite3_temp_directory); if( zRight[0] ){ sqlite3_temp_directory = zRight; zRight = 0; |
︙ | ︙ |
Changes to src/sqliteInt.h.
1 2 3 4 5 6 7 8 9 10 11 12 13 | /* ** 2001 September 15 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** Internal interface definitions for SQLite. ** | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | /* ** 2001 September 15 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** Internal interface definitions for SQLite. ** ** @(#) $Id: sqliteInt.h,v 1.731 2008/06/26 10:54:12 danielk1977 Exp $ */ #ifndef _SQLITEINT_H_ #define _SQLITEINT_H_ /* ** Include the configuration header output by 'configure' if we're using the ** autoconf-based build |
︙ | ︙ | |||
245 246 247 248 249 250 251 | */ #define SQLITE_MAX_FILE_FORMAT 4 #ifndef SQLITE_DEFAULT_FILE_FORMAT # define SQLITE_DEFAULT_FILE_FORMAT 1 #endif /* | | | | | 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 | */ #define SQLITE_MAX_FILE_FORMAT 4 #ifndef SQLITE_DEFAULT_FILE_FORMAT # define SQLITE_DEFAULT_FILE_FORMAT 1 #endif /* ** Provide a default value for SQLITE_TEMP_STORE in case it is not specified ** on the command-line */ #ifndef SQLITE_TEMP_STORE # define SQLITE_TEMP_STORE 1 #endif /* ** GCC does not define the offsetof() macro so we'll have to do it ** ourselves. */ #ifndef offsetof |
︙ | ︙ |
Changes to src/test_config.c.
︙ | ︙ | |||
12 13 14 15 16 17 18 | ** ** This file contains code used for testing the SQLite system. ** None of the code in this file goes into a deliverable build. ** ** The focus of this file is providing the TCL testing layer ** access to compile-time constants. ** | | | 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | ** ** This file contains code used for testing the SQLite system. ** None of the code in this file goes into a deliverable build. ** ** The focus of this file is providing the TCL testing layer ** access to compile-time constants. ** ** $Id: test_config.c,v 1.30 2008/06/26 10:54:12 danielk1977 Exp $ */ #include "sqliteLimit.h" #include "sqliteInt.h" #include "tcl.h" #include <stdlib.h> |
︙ | ︙ | |||
456 457 458 459 460 461 462 | LINKVAR( DEFAULT_TEMP_CACHE_SIZE ); LINKVAR( DEFAULT_CACHE_SIZE ); LINKVAR( DEFAULT_PAGE_SIZE ); LINKVAR( DEFAULT_FILE_FORMAT ); LINKVAR( MAX_ATTACHED ); { | | | 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 | LINKVAR( DEFAULT_TEMP_CACHE_SIZE ); LINKVAR( DEFAULT_CACHE_SIZE ); LINKVAR( DEFAULT_PAGE_SIZE ); LINKVAR( DEFAULT_FILE_FORMAT ); LINKVAR( MAX_ATTACHED ); { static const int cv_TEMP_STORE = SQLITE_TEMP_STORE; Tcl_LinkVar(interp, "TEMP_STORE", (char *)&(cv_TEMP_STORE), TCL_LINK_INT | TCL_LINK_READ_ONLY); } } /* ** Register commands with the TCL interpreter. */ int Sqliteconfig_Init(Tcl_Interp *interp){ set_options(interp); return TCL_OK; } |
Changes to src/test_onefile.c.
1 2 3 4 5 6 7 8 9 10 11 12 | /* ** 2007 September 14 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | /* ** 2007 September 14 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** ** $Id: test_onefile.c,v 1.9 2008/06/26 10:54:12 danielk1977 Exp $ ** ** OVERVIEW: ** ** This file contains some example code demonstrating how the SQLite ** vfs feature can be used to have SQLite operate directly on an ** embedded media, without using an intermediate file system. ** ** Because this is only a demo designed to run on a workstation, the ** underlying media is simulated using a regular file-system file. The ** size of the file is fixed when it is first created (default size 10 MB). ** From SQLite's point of view, this space is used to store a single ** database file and the journal file. ** ** Any statement journal created is stored in volatile memory obtained ** from sqlite3_malloc(). Any attempt to create a temporary database file ** will fail (SQLITE_IOERR). To prevent SQLite from attempting this, ** it should be configured to store all temporary database files in ** main memory (see pragma "temp_store" or the SQLITE_TEMP_STORE compile ** time option). ** ** ASSUMPTIONS: ** ** After it has been created, the blob file is accessed using the ** following three functions only: ** ** mediaRead(); - Read a 512 byte block from the file. |
︙ | ︙ |
Changes to tool/soak1.tcl.
︙ | ︙ | |||
74 75 76 77 78 79 80 | SQLITE_ENABLE_MEMORY_MANAGEMENT=1 SQLITE_ENABLE_COLUMN_METADATA=1 SQLITE_ENABLE_LOAD_EXTENSION=1 HAVE_DLOPEN=1 SQLITE_ENABLE_MEMORY_MANAGEMENT=1 } scenario 3 {Customer-1} { SQLITE_DEBUG=1 SQLITE_MEMDEBUG=1 | | | | | | 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 | SQLITE_ENABLE_MEMORY_MANAGEMENT=1 SQLITE_ENABLE_COLUMN_METADATA=1 SQLITE_ENABLE_LOAD_EXTENSION=1 HAVE_DLOPEN=1 SQLITE_ENABLE_MEMORY_MANAGEMENT=1 } scenario 3 {Customer-1} { SQLITE_DEBUG=1 SQLITE_MEMDEBUG=1 SQLITE_THREADSAFE=1 SQLITE_OS_UNIX=1 SQLITE_DISABLE_LFS=1 SQLITE_DEFAULT_AUTOVACUUM=1 SQLITE_DEFAULT_PAGE_SIZE=1024 SQLITE_MAX_PAGE_SIZE=4096 SQLITE_DEFAULT_CACHE_SIZE=64 SQLITE_DEFAULT_TEMP_CACHE_SIZE=32 SQLITE_TEMP_STORE=3 SQLITE_OMIT_PROGRESS_CALLBACK=1 SQLITE_OMIT_LOAD_EXTENSION=1 SQLITE_OMIT_VIRTUALTABLE=1 SQLITE_ENABLE_IOTRACE=1 } scenario 4 {Small-Cache} { SQLITE_DEBUG=1 SQLITE_MEMDEBUG=1 SQLITE_THREADSAFE=1 SQLITE_OS_UNIX=1 SQLITE_DEFAULT_AUTOVACUUM=1 SQLITE_DEFAULT_PAGE_SIZE=1024 SQLITE_MAX_PAGE_SIZE=2048 SQLITE_DEFAULT_CACHE_SIZE=13 SQLITE_DEFAULT_TEMP_CACHE_SIZE=11 SQLITE_TEMP_STORE=1 } |