]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Move the sqlite3SharedCacheEnabled global and the inProgress static variable (functio...
authordanielk1977 <danielk1977@noemail.net>
Tue, 2 Sep 2008 14:07:24 +0000 (14:07 +0000)
committerdanielk1977 <danielk1977@noemail.net>
Tue, 2 Sep 2008 14:07:24 +0000 (14:07 +0000)
FossilOrigin-Name: 88c82759946910b5ffdd5febc17356403f986c2e

manifest
manifest.uuid
src/btree.c
src/main.c
src/sqliteInt.h
src/test1.c

index 7e781ed99bb3cd68d70d79c9a61e1268bbc2ddf5..41be8607d19afddd5075fd85beb789befc756255 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Add\sa\s'const'\sto\sthe\sopcodeProperty\sarray\sin\svdbe.c.\s(CVS\s5661)
-D 2008-09-02T11:05:02
+C Move\sthe\ssqlite3SharedCacheEnabled\sglobal\sand\sthe\sinProgress\sstatic\svariable\s(function\ssqlite3_initialize())\sinto\sthe\sglobal\ssqlite3Config\sstructure.\sThis\sis\srequired\sfor\sthe\sOMIT_WSD\sfeature\sto\swork\son\ssome\splatforms.\s(CVS\s5662)
+D 2008-09-02T14:07:24
 F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
 F Makefile.in 689e14735f862a5553bceef206d8c13e29504e44
 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
@@ -97,7 +97,7 @@ F src/attach.c db3f4a60538733c1e4dcb9d0217a6e0d6ccd615b
 F src/auth.c c8b2ab5c8bad4bd90ed7c294694f48269162c627
 F src/bitvec.c 95c86bd18d8fedf0533f5af196192546e10a7e7d
 F src/btmutex.c 709cad2cdca0afd013f0f612363810e53f59ec53
-F src/btree.c 3c251cac0dbf763020e43aa66afa4a79356c4482
+F src/btree.c 70706ed6c15a2b6f37b84454386d80fe8ff3a58a
 F src/btree.h 6371c5e599fab391a150c96afbc10062b276d107
 F src/btreeInt.h ab18c7b4980314e9e4b402e5dcde09f3c2545576
 F src/build.c 160c71acca8f643f436ed6c1ee2f684c88df4dfe
@@ -116,7 +116,7 @@ F src/insert.c 110cca7845ed5a66c08fdd413b02e706ae34455f
 F src/journal.c cffd2cd214e58c0e99c3ff632b3bee6c7cbb260e
 F src/legacy.c aac57bd984e666059011ea01ec4383892a253be3
 F src/loadext.c 6581a5bbc4d74fcd46dbbcfd695a6a5417f778a2
-F src/main.c 756541b024aeaedee0c803f33e06bf16aef19ab6
+F src/main.c bebdb97ae38f9d552b302f11a8b1ec80a4d3b9e4
 F src/malloc.c fb23bfbcc5c93180b787bd746c7387289028d482
 F src/mem1.c 5a529ff121c55ab067be14de00f86f6dcc4f4fb9
 F src/mem2.c f87e681d0d1ed8436870d089332ed0d27d885b5c
@@ -149,12 +149,12 @@ F src/select.c eec7c5f28a0c75fdd8500630435af176bba73219
 F src/shell.c d83b578a8ccdd3e0e7fef4388a0887ce9f810967
 F src/sqlite.h.in 81c37dcbd5bb1b1a5f6cdd96a67e82e6a0c3d1da
 F src/sqlite3ext.h 1e3887c9bd3ae66cb599e922824b04cd0d0f2c3e
-F src/sqliteInt.h 796e1b04a34462a451cd1672b68a1820c2b9c70a
+F src/sqliteInt.h 4e81ab61bc9a942f0dafdb8c2cec7825f6eba2f5
 F src/sqliteLimit.h f435e728c6b620ef7312814d660a81f9356eb5c8
 F src/status.c 237b193efae0cf6ac3f0817a208de6c6c6ef6d76
 F src/table.c 22744786199c9195720c15a7a42cb97b2e2728d8
 F src/tclsqlite.c 01312c2af41189ff20335d6ac64e3dbda57e627b
-F src/test1.c 07f56e5495a2abc3ed1cec74836dedd5f829eb00
+F src/test1.c 349606445a5a938e9fa9b5e410413632c6c25f87
 F src/test2.c eaa77124786649eedf47d3c5e94d8070c0da228f
 F src/test3.c e85b7ce5c28c3ce7fbdbf7f98e1467b19786c62b
 F src/test4.c 41056378671e7b00e6305fa9ac6fa27e6f96f406
@@ -630,7 +630,7 @@ F tool/speedtest16.c c8a9c793df96db7e4933f0852abb7a03d48f2e81
 F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
 F tool/speedtest8.c 1dbced29de5f59ba2ebf877edcadf171540374d1
 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
-P 46acaf58e11ebe69e4fb5f171d3ee29f056d8e68
-R 509902146f627322a8ff8638644cae64
+P 29c9a80294398a349bc7cf0fb84cd4ef8a9e2f60
+R 8d35d3261ce4d6b4c41025ca53bd27df
 U danielk1977
-Z 9cbec7a0d066203372160256f057c075
+Z e602fc4ab77bd0708d41bbe674d74574
index 0284c79433d53ffad51e0410beb7569d61857d66..2926a3a20f3edbff2fbd0bb28be18b4f206ff721 100644 (file)
@@ -1 +1 @@
-29c9a80294398a349bc7cf0fb84cd4ef8a9e2f60
\ No newline at end of file
+88c82759946910b5ffdd5febc17356403f986c2e
\ No newline at end of file
index 3dcd4c181fa0ba63a1b25d340a15ade328c1da65..941ee0d31091d029e91821cfad7cbd61b3ef62db 100644 (file)
@@ -9,7 +9,7 @@
 **    May you share freely, never taking more than you give.
 **
 *************************************************************************
-** $Id: btree.c,v 1.507 2008/09/02 09:38:07 danielk1977 Exp $
+** $Id: btree.c,v 1.508 2008/09/02 14:07:24 danielk1977 Exp $
 **
 ** This file implements a external (disk-based) database using BTrees.
 ** See the header comment on "btreeInt.h" for additional information.
@@ -38,18 +38,15 @@ int sqlite3BtreeTrace=0;  /* True to enable tracing */
 
 #ifndef SQLITE_OMIT_SHARED_CACHE
 /*
-** A flag to indicate whether or not shared cache is enabled.  Also,
-** a list of BtShared objects that are eligible for participation
-** in shared cache.  The variables have file scope during normal builds,
-** but the test harness needs to access these variables so we make them
-** global for test builds.
+** A list of BtShared objects that are eligible for participation
+** in shared cache.  This variable has file scope during normal builds,
+** but the test harness needs to access it so we make it global for 
+** test builds.
 */
 #ifdef SQLITE_TEST
 BtShared *SQLITE_WSD sqlite3SharedCacheList = 0;
-SQLITE_WSD int sqlite3SharedCacheEnabled = 0;
 #else
 static BtShared *SQLITE_WSD sqlite3SharedCacheList = 0;
-static SQLITE_WSD int sqlite3SharedCacheEnabled = 0;
 #endif
 #endif /* SQLITE_OMIT_SHARED_CACHE */
 
@@ -62,7 +59,7 @@ static SQLITE_WSD int sqlite3SharedCacheEnabled = 0;
 ** sqlite3_open(), sqlite3_open16(), or sqlite3_open_v2().
 */
 int sqlite3_enable_shared_cache(int enable){
-  GLOBAL(int, sqlite3SharedCacheEnabled) = enable;
+  sqlite3GlobalConfig.sharedCacheEnabled = enable;
   return SQLITE_OK;
 }
 #endif
@@ -1232,7 +1229,7 @@ int sqlite3BtreeOpen(
    && (db->flags & SQLITE_Vtab)==0
    && zFilename && zFilename[0]
   ){
-    if( GLOBAL(int,sqlite3SharedCacheEnabled) ){
+    if( sqlite3GlobalConfig.sharedCacheEnabled ){
       int nFullPathname = pVfs->mxPathname+1;
       char *zFullPathname = sqlite3Malloc(nFullPathname);
       sqlite3_mutex *mutexShared;
index 664f4a313d42b4e81b4f855991691d92e0de0d64..6af3752c2c150a1ee91f6da7cec9fbbe66ee8026 100644 (file)
@@ -14,7 +14,7 @@
 ** other files are for internal use by SQLite and should not be
 ** accessed by users of the library.
 **
-** $Id: main.c,v 1.496 2008/09/02 09:38:07 danielk1977 Exp $
+** $Id: main.c,v 1.497 2008/09/02 14:07:24 danielk1977 Exp $
 */
 #include "sqliteInt.h"
 #include <ctype.h>
@@ -85,7 +85,6 @@ char *sqlite3_temp_directory = 0;
 **       without blocking.
 */
 int sqlite3_initialize(void){
-  SQLITE_WSD static int inProgress = 0;        /* Prevent recursion */
   sqlite3_mutex *pMaster;                      /* The main static mutex */
   int rc;                                      /* Result code */
 
@@ -152,9 +151,9 @@ int sqlite3_initialize(void){
   ** recursive calls might also be possible.
   */
   sqlite3_mutex_enter(sqlite3GlobalConfig.pInitMutex);
-  if( sqlite3GlobalConfig.isInit==0 && GLOBAL(int, inProgress)==0 ){
+  if( sqlite3GlobalConfig.isInit==0 && sqlite3GlobalConfig.inProgress==0 ){
     FuncDefHash *pHash = &GLOBAL(FuncDefHash, sqlite3GlobalFunctions);
-    GLOBAL(int, inProgress) = 1;
+    sqlite3GlobalConfig.inProgress = 1;
     memset(pHash, 0, sizeof(sqlite3GlobalFunctions));
     sqlite3RegisterGlobalFunctions();
     rc = sqlite3_os_init();
@@ -163,7 +162,7 @@ int sqlite3_initialize(void){
       sqlite3PCacheBufferSetup( sqlite3GlobalConfig.pPage, 
           sqlite3GlobalConfig.szPage, sqlite3GlobalConfig.nPage);
     }
-    GLOBAL(int, inProgress) = 0;
+    sqlite3GlobalConfig.inProgress = 0;
     sqlite3GlobalConfig.isInit = (rc==SQLITE_OK ? 1 : 0);
   }
   sqlite3_mutex_leave(sqlite3GlobalConfig.pInitMutex);
index fa46ce461dda848129ffdc3c9f678299a0a79d48..3f8529d8f2c2f1ea57441dafeb35c6494dfefc13 100644 (file)
@@ -11,7 +11,7 @@
 *************************************************************************
 ** Internal interface definitions for SQLite.
 **
-** @(#) $Id: sqliteInt.h,v 1.768 2008/09/02 00:52:52 drh Exp $
+** @(#) $Id: sqliteInt.h,v 1.769 2008/09/02 14:07:24 danielk1977 Exp $
 */
 #ifndef _SQLITEINT_H_
 #define _SQLITEINT_H_
@@ -1949,11 +1949,13 @@ struct Sqlite3Config {
   int szPage;                       /* Size of each page in pPage[] */
   int nPage;                        /* Number of pages in pPage[] */
   int isInit;                       /* True after initialization has finished */
+  int inProgress;                   /* True while initialization in progress */
   int isMallocInit;                 /* True after malloc is initialized */
   sqlite3_mutex *pInitMutex;        /* Mutex used by sqlite3_initialize() */
   int nRefInitMutex;                /* Number of users of pInitMutex */
   int nSmall;                       /* alloc size threshold used by mem6.c */
   int mxParserStack;                /* maximum depth of the parser stack */
+  int sharedCacheEnabled;           /* true if shared-cache mode enabled */
 };
 
 /*
index c51b1e141ec21160b13ce0631c82b6d217ddcbfb..1c76e7d51ab79eabb6fa9115c225c5d65a11e0fc 100644 (file)
@@ -13,7 +13,7 @@
 ** is not included in the SQLite library.  It is used for automated
 ** testing of the SQLite library.
 **
-** $Id: test1.c,v 1.323 2008/09/02 00:52:52 drh Exp $
+** $Id: test1.c,v 1.324 2008/09/02 14:07:24 danielk1977 Exp $
 */
 #include "sqliteInt.h"
 #include "tcl.h"
@@ -1381,13 +1381,12 @@ static int test_enable_shared(
   int rc;
   int enable;
   int ret = 0;
-  extern int sqlite3SharedCacheEnabled;
 
   if( objc!=2 && objc!=1 ){
     Tcl_WrongNumArgs(interp, 1, objv, "?BOOLEAN?");
     return TCL_ERROR;
   }
-  ret = GLOBAL(int, sqlite3SharedCacheEnabled);
+  ret = sqlite3GlobalConfig.sharedCacheEnabled;
 
   if( objc==2 ){
     if( Tcl_GetBooleanFromObj(interp, objv[1], &enable) ){