Fossil SCM

Update the built-in SQLite version to 3.6.14.2.

drh 2009-05-25 14:25 trunk
Commit d21b90e365b5eb98b9c78b07bf5bba4f250bbe4d
2 files changed +21 -5 +1 -1
+21 -5
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -1,8 +1,8 @@
11
/******************************************************************************
22
** This file is an amalgamation of many separate C source files from SQLite
3
-** version 3.6.14.1. By combining all the individual C code files into this
3
+** version 3.6.14.2. By combining all the individual C code files into this
44
** single large file, the entire code can be compiled as a one translation
55
** unit. This allows many compilers to do optimizations that would not be
66
** possible if the files were compiled separately. Performance improvements
77
** of 5% are more are commonly seen when SQLite is compiled as a single
88
** translation unit.
@@ -15,11 +15,11 @@
1515
** needed if you want a wrapper to interface SQLite with your choice of
1616
** programming language. The code for the "sqlite3" command-line shell
1717
** is also in a separate file. This file contains only code for the core
1818
** SQLite library.
1919
**
20
-** This amalgamation was generated on 2009-05-18 17:12:46 UTC.
20
+** This amalgamation was generated on 2009-05-25 12:34:31 UTC.
2121
*/
2222
#define SQLITE_CORE 1
2323
#define SQLITE_AMALGAMATION 1
2424
#ifndef SQLITE_PRIVATE
2525
# define SQLITE_PRIVATE static
@@ -599,11 +599,11 @@
599599
**
600600
** See also: [sqlite3_libversion()] and [sqlite3_libversion_number()].
601601
**
602602
** Requirements: [H10011] [H10014]
603603
*/
604
-#define SQLITE_VERSION "3.6.14.1"
604
+#define SQLITE_VERSION "3.6.14.2"
605605
#define SQLITE_VERSION_NUMBER 3006014
606606
607607
/*
608608
** CAPI3REF: Run-Time Library Version Numbers {H10020} <S60100>
609609
** KEYWORDS: sqlite3_version
@@ -57681,11 +57681,11 @@
5768157681
**
5768257682
*************************************************************************
5768357683
** This file contains routines used for analyzing expressions and
5768457684
** for generating VDBE code that evaluates expressions in SQLite.
5768557685
**
57686
-** $Id: expr.c,v 1.432 2009/05/06 18:57:10 shane Exp $
57686
+** $Id: expr.c,v 1.432.2.1 2009/05/25 12:02:24 drh Exp $
5768757687
*/
5768857688
5768957689
/*
5769057690
** Return the 'affinity' of the expression pExpr if any.
5769157691
**
@@ -59469,10 +59469,26 @@
5946959469
cacheEntryClear(pParse, p);
5947059470
p->iReg = 0;
5947159471
}
5947259472
}
5947359473
}
59474
+
59475
+/*
59476
+** When a cached column is reused, make sure that its register is
59477
+** no longer available as a temp register. ticket #3879: that same
59478
+** register might be in the cache in multiple places, so be sure to
59479
+** get them all.
59480
+*/
59481
+static void sqlite3ExprCachePinRegister(Parse *pParse, int iReg){
59482
+ int i;
59483
+ struct yColCache *p;
59484
+ for(i=0, p=pParse->aColCache; i<SQLITE_N_COLCACHE; i++, p++){
59485
+ if( p->iReg==iReg ){
59486
+ p->tempReg = 0;
59487
+ }
59488
+ }
59489
+}
5947459490
5947559491
/*
5947659492
** Generate code that will extract the iColumn-th column from
5947759493
** table pTab and store the column value in a register. An effort
5947859494
** is made to store the column value in register iReg, but this is
@@ -59505,11 +59521,11 @@
5950559521
#if 0
5950659522
sqlite3VdbeAddOp0(v, OP_Noop);
5950759523
VdbeComment((v, "OPT: tab%d.col%d -> r%d", iTable, iColumn, p->iReg));
5950859524
#endif
5950959525
p->lru = pParse->iCacheCnt++;
59510
- p->tempReg = 0; /* This pins the register, but also leaks it */
59526
+ sqlite3ExprCachePinRegister(pParse, p->iReg);
5951159527
return p->iReg;
5951259528
}
5951359529
}
5951459530
assert( v!=0 );
5951559531
if( iColumn<0 ){
5951659532
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -1,8 +1,8 @@
1 /******************************************************************************
2 ** This file is an amalgamation of many separate C source files from SQLite
3 ** version 3.6.14.1. By combining all the individual C code files into this
4 ** single large file, the entire code can be compiled as a one translation
5 ** unit. This allows many compilers to do optimizations that would not be
6 ** possible if the files were compiled separately. Performance improvements
7 ** of 5% are more are commonly seen when SQLite is compiled as a single
8 ** translation unit.
@@ -15,11 +15,11 @@
15 ** needed if you want a wrapper to interface SQLite with your choice of
16 ** programming language. The code for the "sqlite3" command-line shell
17 ** is also in a separate file. This file contains only code for the core
18 ** SQLite library.
19 **
20 ** This amalgamation was generated on 2009-05-18 17:12:46 UTC.
21 */
22 #define SQLITE_CORE 1
23 #define SQLITE_AMALGAMATION 1
24 #ifndef SQLITE_PRIVATE
25 # define SQLITE_PRIVATE static
@@ -599,11 +599,11 @@
599 **
600 ** See also: [sqlite3_libversion()] and [sqlite3_libversion_number()].
601 **
602 ** Requirements: [H10011] [H10014]
603 */
604 #define SQLITE_VERSION "3.6.14.1"
605 #define SQLITE_VERSION_NUMBER 3006014
606
607 /*
608 ** CAPI3REF: Run-Time Library Version Numbers {H10020} <S60100>
609 ** KEYWORDS: sqlite3_version
@@ -57681,11 +57681,11 @@
57681 **
57682 *************************************************************************
57683 ** This file contains routines used for analyzing expressions and
57684 ** for generating VDBE code that evaluates expressions in SQLite.
57685 **
57686 ** $Id: expr.c,v 1.432 2009/05/06 18:57:10 shane Exp $
57687 */
57688
57689 /*
57690 ** Return the 'affinity' of the expression pExpr if any.
57691 **
@@ -59469,10 +59469,26 @@
59469 cacheEntryClear(pParse, p);
59470 p->iReg = 0;
59471 }
59472 }
59473 }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
59474
59475 /*
59476 ** Generate code that will extract the iColumn-th column from
59477 ** table pTab and store the column value in a register. An effort
59478 ** is made to store the column value in register iReg, but this is
@@ -59505,11 +59521,11 @@
59505 #if 0
59506 sqlite3VdbeAddOp0(v, OP_Noop);
59507 VdbeComment((v, "OPT: tab%d.col%d -> r%d", iTable, iColumn, p->iReg));
59508 #endif
59509 p->lru = pParse->iCacheCnt++;
59510 p->tempReg = 0; /* This pins the register, but also leaks it */
59511 return p->iReg;
59512 }
59513 }
59514 assert( v!=0 );
59515 if( iColumn<0 ){
59516
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -1,8 +1,8 @@
1 /******************************************************************************
2 ** This file is an amalgamation of many separate C source files from SQLite
3 ** version 3.6.14.2. By combining all the individual C code files into this
4 ** single large file, the entire code can be compiled as a one translation
5 ** unit. This allows many compilers to do optimizations that would not be
6 ** possible if the files were compiled separately. Performance improvements
7 ** of 5% are more are commonly seen when SQLite is compiled as a single
8 ** translation unit.
@@ -15,11 +15,11 @@
15 ** needed if you want a wrapper to interface SQLite with your choice of
16 ** programming language. The code for the "sqlite3" command-line shell
17 ** is also in a separate file. This file contains only code for the core
18 ** SQLite library.
19 **
20 ** This amalgamation was generated on 2009-05-25 12:34:31 UTC.
21 */
22 #define SQLITE_CORE 1
23 #define SQLITE_AMALGAMATION 1
24 #ifndef SQLITE_PRIVATE
25 # define SQLITE_PRIVATE static
@@ -599,11 +599,11 @@
599 **
600 ** See also: [sqlite3_libversion()] and [sqlite3_libversion_number()].
601 **
602 ** Requirements: [H10011] [H10014]
603 */
604 #define SQLITE_VERSION "3.6.14.2"
605 #define SQLITE_VERSION_NUMBER 3006014
606
607 /*
608 ** CAPI3REF: Run-Time Library Version Numbers {H10020} <S60100>
609 ** KEYWORDS: sqlite3_version
@@ -57681,11 +57681,11 @@
57681 **
57682 *************************************************************************
57683 ** This file contains routines used for analyzing expressions and
57684 ** for generating VDBE code that evaluates expressions in SQLite.
57685 **
57686 ** $Id: expr.c,v 1.432.2.1 2009/05/25 12:02:24 drh Exp $
57687 */
57688
57689 /*
57690 ** Return the 'affinity' of the expression pExpr if any.
57691 **
@@ -59469,10 +59469,26 @@
59469 cacheEntryClear(pParse, p);
59470 p->iReg = 0;
59471 }
59472 }
59473 }
59474
59475 /*
59476 ** When a cached column is reused, make sure that its register is
59477 ** no longer available as a temp register. ticket #3879: that same
59478 ** register might be in the cache in multiple places, so be sure to
59479 ** get them all.
59480 */
59481 static void sqlite3ExprCachePinRegister(Parse *pParse, int iReg){
59482 int i;
59483 struct yColCache *p;
59484 for(i=0, p=pParse->aColCache; i<SQLITE_N_COLCACHE; i++, p++){
59485 if( p->iReg==iReg ){
59486 p->tempReg = 0;
59487 }
59488 }
59489 }
59490
59491 /*
59492 ** Generate code that will extract the iColumn-th column from
59493 ** table pTab and store the column value in a register. An effort
59494 ** is made to store the column value in register iReg, but this is
@@ -59505,11 +59521,11 @@
59521 #if 0
59522 sqlite3VdbeAddOp0(v, OP_Noop);
59523 VdbeComment((v, "OPT: tab%d.col%d -> r%d", iTable, iColumn, p->iReg));
59524 #endif
59525 p->lru = pParse->iCacheCnt++;
59526 sqlite3ExprCachePinRegister(pParse, p->iReg);
59527 return p->iReg;
59528 }
59529 }
59530 assert( v!=0 );
59531 if( iColumn<0 ){
59532
+1 -1
--- src/sqlite3.h
+++ src/sqlite3.h
@@ -97,11 +97,11 @@
9797
**
9898
** See also: [sqlite3_libversion()] and [sqlite3_libversion_number()].
9999
**
100100
** Requirements: [H10011] [H10014]
101101
*/
102
-#define SQLITE_VERSION "3.6.14.1"
102
+#define SQLITE_VERSION "3.6.14.2"
103103
#define SQLITE_VERSION_NUMBER 3006014
104104
105105
/*
106106
** CAPI3REF: Run-Time Library Version Numbers {H10020} <S60100>
107107
** KEYWORDS: sqlite3_version
108108
--- src/sqlite3.h
+++ src/sqlite3.h
@@ -97,11 +97,11 @@
97 **
98 ** See also: [sqlite3_libversion()] and [sqlite3_libversion_number()].
99 **
100 ** Requirements: [H10011] [H10014]
101 */
102 #define SQLITE_VERSION "3.6.14.1"
103 #define SQLITE_VERSION_NUMBER 3006014
104
105 /*
106 ** CAPI3REF: Run-Time Library Version Numbers {H10020} <S60100>
107 ** KEYWORDS: sqlite3_version
108
--- src/sqlite3.h
+++ src/sqlite3.h
@@ -97,11 +97,11 @@
97 **
98 ** See also: [sqlite3_libversion()] and [sqlite3_libversion_number()].
99 **
100 ** Requirements: [H10011] [H10014]
101 */
102 #define SQLITE_VERSION "3.6.14.2"
103 #define SQLITE_VERSION_NUMBER 3006014
104
105 /*
106 ** CAPI3REF: Run-Time Library Version Numbers {H10020} <S60100>
107 ** KEYWORDS: sqlite3_version
108

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button