mirror of
https://github.com/sqlite/sqlite.git
synced 2025-08-08 14:02:16 +03:00
Merge changes for 3.12.0.
FossilOrigin-Name: ed22eb653f2809446ace6a27e7ea3926ac6db30c
This commit is contained in:
30
manifest
30
manifest
@@ -1,5 +1,5 @@
|
|||||||
C Merge\sthe\sbeta\schanges\sinto\ssessions.
|
C Merge\schanges\sfor\s3.12.0.
|
||||||
D 2016-03-24T14:34:26.863
|
D 2016-03-29T10:19:29.541
|
||||||
F Makefile.in e812bb732d7af01baa09f1278bd4f4a2e3a09449
|
F Makefile.in e812bb732d7af01baa09f1278bd4f4a2e3a09449
|
||||||
F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
|
F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
|
||||||
F Makefile.msc e6ee58b849c116d5554024f524cbf61f064f6f01
|
F Makefile.msc e6ee58b849c116d5554024f524cbf61f064f6f01
|
||||||
@@ -320,7 +320,7 @@ F src/btmutex.c bc87dd3b062cc26edfe79918de2200ccb8d41e73
|
|||||||
F src/btree.c 577fb5674e2f0aa0a38246afc19e1885a0b8c9b0
|
F src/btree.c 577fb5674e2f0aa0a38246afc19e1885a0b8c9b0
|
||||||
F src/btree.h a5008b9afe56e8e54ade6c436a910f112defcca9
|
F src/btree.h a5008b9afe56e8e54ade6c436a910f112defcca9
|
||||||
F src/btreeInt.h c18b7d2a3494695133e4e60ee36061d37f45d9a5
|
F src/btreeInt.h c18b7d2a3494695133e4e60ee36061d37f45d9a5
|
||||||
F src/build.c 7d1a5e64fcd10110edc8ce9ffb710d06af0a59f5
|
F src/build.c 39faaaeecb77eb3936d4bd5024e865e3836ca323
|
||||||
F src/callback.c 2e76147783386374bf01b227f752c81ec872d730
|
F src/callback.c 2e76147783386374bf01b227f752c81ec872d730
|
||||||
F src/complete.c a3634ab1e687055cd002e11b8f43eb75c17da23e
|
F src/complete.c a3634ab1e687055cd002e11b8f43eb75c17da23e
|
||||||
F src/ctime.c 60e135af364d777a9ab41c97e5e89cd224da6198
|
F src/ctime.c 60e135af364d777a9ab41c97e5e89cd224da6198
|
||||||
@@ -358,7 +358,7 @@ F src/os.h 91ff889115ecd01f436d3611f7f5ea4dc12d92f1
|
|||||||
F src/os_common.h b2f4707a603e36811d9b1a13278bffd757857b85
|
F src/os_common.h b2f4707a603e36811d9b1a13278bffd757857b85
|
||||||
F src/os_setup.h c9d4553b5aaa6f73391448b265b89bed0b890faa
|
F src/os_setup.h c9d4553b5aaa6f73391448b265b89bed0b890faa
|
||||||
F src/os_unix.c b1ccb273771f41dbdbe0ba7c1ad63c38ad5972ec
|
F src/os_unix.c b1ccb273771f41dbdbe0ba7c1ad63c38ad5972ec
|
||||||
F src/os_win.c 17493f12b0b023c2d5a349b6860009f0d45e08d6
|
F src/os_win.c ff870d89f4cb088a04cbf5ea0cbd9ff1b089ff4a
|
||||||
F src/os_win.h eb7a47aa17b26b77eb97e4823f20a00b8bda12ca
|
F src/os_win.h eb7a47aa17b26b77eb97e4823f20a00b8bda12ca
|
||||||
F src/pager.c 38718a019ca762ba4f6795425d5a54db70d1790d
|
F src/pager.c 38718a019ca762ba4f6795425d5a54db70d1790d
|
||||||
F src/pager.h e1d38a2f14849e219df0f91f8323504d134c8a56
|
F src/pager.h e1d38a2f14849e219df0f91f8323504d134c8a56
|
||||||
@@ -410,7 +410,7 @@ F src/test_intarray.h 9dc57417fb65bc7835cc18548852cc08cc062202
|
|||||||
F src/test_journal.c 5360fbe1d1e4416ca36290562fd5a2e3f70f32aa
|
F src/test_journal.c 5360fbe1d1e4416ca36290562fd5a2e3f70f32aa
|
||||||
F src/test_loadext.c 337056bae59f80b9eb00ba82088b39d0f4fe6dfd
|
F src/test_loadext.c 337056bae59f80b9eb00ba82088b39d0f4fe6dfd
|
||||||
F src/test_malloc.c 96df9381a1ff1f6d3805ff7231b9baf1386aaabf
|
F src/test_malloc.c 96df9381a1ff1f6d3805ff7231b9baf1386aaabf
|
||||||
F src/test_multiplex.c 6a088d8d9d4aad4bec45dd8878af11b15900702d
|
F src/test_multiplex.c 6a9de820fcaaf506c59aa14bc8693822333cea48
|
||||||
F src/test_multiplex.h c08e4e8f8651f0c5e0509b138ff4d5b43ed1f5d3
|
F src/test_multiplex.h c08e4e8f8651f0c5e0509b138ff4d5b43ed1f5d3
|
||||||
F src/test_mutex.c dbdfaff8580071f2212a0deae3325a93a737819c
|
F src/test_mutex.c dbdfaff8580071f2212a0deae3325a93a737819c
|
||||||
F src/test_onefile.c 38f7cbe79d5bafe95bde683cc3a53b8ca16daf10
|
F src/test_onefile.c 38f7cbe79d5bafe95bde683cc3a53b8ca16daf10
|
||||||
@@ -439,7 +439,7 @@ F src/update.c 14c6916d0194a7f25ad429292f4831b8c31e93d9
|
|||||||
F src/utf.c 699001c79f28e48e9bcdf8a463da029ea660540c
|
F src/utf.c 699001c79f28e48e9bcdf8a463da029ea660540c
|
||||||
F src/util.c 8873d696c9ccc4206058c402e09e101f1b81561a
|
F src/util.c 8873d696c9ccc4206058c402e09e101f1b81561a
|
||||||
F src/vacuum.c feb1eabb20987983d9350cad98299b21fa811f52
|
F src/vacuum.c feb1eabb20987983d9350cad98299b21fa811f52
|
||||||
F src/vdbe.c 399bb1d353da8ce2e52e5182aabca18da0296749
|
F src/vdbe.c da8f4d04fb134d7e64fd34d519b0eba4883ed779
|
||||||
F src/vdbe.h c16ba943d407baa1c7085eefea73a063fc631863
|
F src/vdbe.h c16ba943d407baa1c7085eefea73a063fc631863
|
||||||
F src/vdbeInt.h 9b704336a69f62ba189eafb06a46171e3463d27b
|
F src/vdbeInt.h 9b704336a69f62ba189eafb06a46171e3463d27b
|
||||||
F src/vdbeapi.c ba85b78fe08dc4a9ce747e62c89a2b4a4547e74c
|
F src/vdbeapi.c ba85b78fe08dc4a9ce747e62c89a2b4a4547e74c
|
||||||
@@ -912,7 +912,7 @@ F test/manydb.test 28385ae2087967aa05c38624cec7d96ec74feb3e
|
|||||||
F test/mem5.test c6460fba403c5703141348cd90de1c294188c68f
|
F test/mem5.test c6460fba403c5703141348cd90de1c294188c68f
|
||||||
F test/memdb.test c1f2a343ad14398d5d6debda6ea33e80d0dafcc7
|
F test/memdb.test c1f2a343ad14398d5d6debda6ea33e80d0dafcc7
|
||||||
F test/memleak.test 10b9c6c57e19fc68c32941495e9ba1c50123f6e2
|
F test/memleak.test 10b9c6c57e19fc68c32941495e9ba1c50123f6e2
|
||||||
F test/memsubsys1.test 69924593856040e266fdd9aa1ecb4d5a0888eb12
|
F test/memsubsys1.test 6d268d0ae90f8d61a2356a1838665654d83de518
|
||||||
F test/memsubsys2.test 3e4a8d0c05fd3e5fa92017c64666730a520c7e08
|
F test/memsubsys2.test 3e4a8d0c05fd3e5fa92017c64666730a520c7e08
|
||||||
F test/minmax.test 42fbad0e81afaa6e0de41c960329f2b2c3526efd
|
F test/minmax.test 42fbad0e81afaa6e0de41c960329f2b2c3526efd
|
||||||
F test/minmax2.test b44bae787fc7b227597b01b0ca5575c7cb54d3bc
|
F test/minmax2.test b44bae787fc7b227597b01b0ca5575c7cb54d3bc
|
||||||
@@ -1049,9 +1049,9 @@ F test/sharedA.test 0cdf1a76dfa00e6beee66af5b534b1e8df2720f5
|
|||||||
F test/sharedB.test 16cc7178e20965d75278f410943109b77b2e645e
|
F test/sharedB.test 16cc7178e20965d75278f410943109b77b2e645e
|
||||||
F test/shared_err.test 2f2aee20db294b9924e81f6ccbe60f19e21e8506
|
F test/shared_err.test 2f2aee20db294b9924e81f6ccbe60f19e21e8506
|
||||||
F test/sharedlock.test 5ede3c37439067c43b0198f580fd374ebf15d304
|
F test/sharedlock.test 5ede3c37439067c43b0198f580fd374ebf15d304
|
||||||
F test/shell1.test e7dac9830b7d80432be9cebfae06eff9c18675f5
|
F test/shell1.test dff5b20ad989770aface6d714491121172dfe8b0
|
||||||
F test/shell2.test 2e7a32c9ee03c6398478637d72416d5b9ebd9777
|
F test/shell2.test e242a9912f44f4c23c3d1d802a83e934e84c853b
|
||||||
F test/shell3.test c39453d3012a39ffec944566eca8a6bda10a2284
|
F test/shell3.test da513d522ef6f01cee8475dcf8332bff8982b3dd
|
||||||
F test/shell4.test 69995ee1cc278eb149aa8746ce1f935f4eaf98b9
|
F test/shell4.test 69995ee1cc278eb149aa8746ce1f935f4eaf98b9
|
||||||
F test/shell5.test 50a732c1c2158b1cd62cf53975ce1ea7ce6b9dc9
|
F test/shell5.test 50a732c1c2158b1cd62cf53975ce1ea7ce6b9dc9
|
||||||
F test/shortread1.test bb591ef20f0fd9ed26d0d12e80eee6d7ac8897a3
|
F test/shortread1.test bb591ef20f0fd9ed26d0d12e80eee6d7ac8897a3
|
||||||
@@ -1063,8 +1063,8 @@ F test/skipscan2.test d1d1450952b7275f0b0a3a981f0230532743951a
|
|||||||
F test/skipscan3.test ec5bab3f81c7038b43450e7b3062e04a198bdbb5
|
F test/skipscan3.test ec5bab3f81c7038b43450e7b3062e04a198bdbb5
|
||||||
F test/skipscan5.test 67817a4b6857c47e0e33ba3e506da6f23ef68de2
|
F test/skipscan5.test 67817a4b6857c47e0e33ba3e506da6f23ef68de2
|
||||||
F test/skipscan6.test 5866039d03a56f5bd0b3d172a012074a1d90a15b
|
F test/skipscan6.test 5866039d03a56f5bd0b3d172a012074a1d90a15b
|
||||||
F test/snapshot.test c03eb5ba1602df33c1edc1d12393d6ca7a282a46
|
F test/snapshot.test 9ed24c792fb05382814258daf68b2256f23de57f
|
||||||
F test/snapshot_fault.test 25973aeb1b86a280800e0bcf1eb5ce70e9ef57ab
|
F test/snapshot_fault.test 062ff0438a074978d45e9f9a92e7ad459b74ee73
|
||||||
F test/soak.test 0b5b6375c9f4110c828070b826b3b4b0bb65cd5f
|
F test/soak.test 0b5b6375c9f4110c828070b826b3b4b0bb65cd5f
|
||||||
F test/softheap1.test 843cd84db9891b2d01b9ab64cef3e9020f98d087
|
F test/softheap1.test 843cd84db9891b2d01b9ab64cef3e9020f98d087
|
||||||
F test/sort.test c2adc635c2564241fefec0b3a68391ef6868fd3b
|
F test/sort.test c2adc635c2564241fefec0b3a68391ef6868fd3b
|
||||||
@@ -1480,7 +1480,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
|
|||||||
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
|
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
|
||||||
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
|
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
|
||||||
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
|
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
|
||||||
P 3296a0ceedef43c2790f0b36471f91138a575243 a1fd14694c1adc54e5c443ebfdef38e38637f5c5
|
P beb5ea1439995fb8ab112451a8ffcc08fe42d0c4 e9bb4cf40f4971974a74468ef922bdee481c988b
|
||||||
R 6a48044d31c7e4e91715fbb78d5dfd9f
|
R 491d941731d06e3edceeb8f36a9265ac
|
||||||
U drh
|
U drh
|
||||||
Z be6e3e57ab02c83f1495f1c79794042e
|
Z 3f9fc483108428866f896f452f439d76
|
||||||
|
@@ -1 +1 @@
|
|||||||
beb5ea1439995fb8ab112451a8ffcc08fe42d0c4
|
ed22eb653f2809446ace6a27e7ea3926ac6db30c
|
@@ -1056,9 +1056,6 @@ void sqlite3AddColumn(Parse *pParse, Token *pName, Token *pType){
|
|||||||
memcpy(z, pName->z, pName->n);
|
memcpy(z, pName->z, pName->n);
|
||||||
z[pName->n] = 0;
|
z[pName->n] = 0;
|
||||||
sqlite3Dequote(z);
|
sqlite3Dequote(z);
|
||||||
zType = z + sqlite3Strlen30(z) + 1;
|
|
||||||
memcpy(zType, pType->z, pType->n);
|
|
||||||
zType[pType->n] = 0;
|
|
||||||
for(i=0; i<p->nCol; i++){
|
for(i=0; i<p->nCol; i++){
|
||||||
if( sqlite3_stricmp(z, p->aCol[i].zName)==0 ){
|
if( sqlite3_stricmp(z, p->aCol[i].zName)==0 ){
|
||||||
sqlite3ErrorMsg(pParse, "duplicate column name: %s", z);
|
sqlite3ErrorMsg(pParse, "duplicate column name: %s", z);
|
||||||
@@ -1086,6 +1083,9 @@ void sqlite3AddColumn(Parse *pParse, Token *pName, Token *pType){
|
|||||||
pCol->affinity = SQLITE_AFF_BLOB;
|
pCol->affinity = SQLITE_AFF_BLOB;
|
||||||
pCol->szEst = 1;
|
pCol->szEst = 1;
|
||||||
}else{
|
}else{
|
||||||
|
zType = z + sqlite3Strlen30(z) + 1;
|
||||||
|
memcpy(zType, pType->z, pType->n);
|
||||||
|
zType[pType->n] = 0;
|
||||||
pCol->affinity = sqlite3AffinityType(zType, &pCol->szEst);
|
pCol->affinity = sqlite3AffinityType(zType, &pCol->szEst);
|
||||||
pCol->colFlags |= COLFLAG_HASTYPE;
|
pCol->colFlags |= COLFLAG_HASTYPE;
|
||||||
}
|
}
|
||||||
|
16
src/os_win.c
16
src/os_win.c
@@ -344,11 +344,23 @@ struct winFile {
|
|||||||
# define SQLITE_WIN32_HEAP_CREATE (TRUE)
|
# define SQLITE_WIN32_HEAP_CREATE (TRUE)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* This is cache size used in the calculation of the initial size of the
|
||||||
|
* Win32-specific heap. It cannot be negative.
|
||||||
|
*/
|
||||||
|
#ifndef SQLITE_WIN32_CACHE_SIZE
|
||||||
|
# if SQLITE_DEFAULT_CACHE_SIZE>=0
|
||||||
|
# define SQLITE_WIN32_CACHE_SIZE (SQLITE_DEFAULT_CACHE_SIZE)
|
||||||
|
# else
|
||||||
|
# define SQLITE_WIN32_CACHE_SIZE (-(SQLITE_DEFAULT_CACHE_SIZE))
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The initial size of the Win32-specific heap. This value may be zero.
|
* The initial size of the Win32-specific heap. This value may be zero.
|
||||||
*/
|
*/
|
||||||
#ifndef SQLITE_WIN32_HEAP_INIT_SIZE
|
#ifndef SQLITE_WIN32_HEAP_INIT_SIZE
|
||||||
# define SQLITE_WIN32_HEAP_INIT_SIZE ((SQLITE_DEFAULT_CACHE_SIZE) * \
|
# define SQLITE_WIN32_HEAP_INIT_SIZE ((SQLITE_WIN32_CACHE_SIZE) * \
|
||||||
(SQLITE_DEFAULT_PAGE_SIZE) + 4194304)
|
(SQLITE_DEFAULT_PAGE_SIZE) + 4194304)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -5424,7 +5436,7 @@ static int winRandomness(sqlite3_vfs *pVfs, int nBuf, char *zBuf){
|
|||||||
EntropyGatherer e;
|
EntropyGatherer e;
|
||||||
UNUSED_PARAMETER(pVfs);
|
UNUSED_PARAMETER(pVfs);
|
||||||
memset(zBuf, 0, nBuf);
|
memset(zBuf, 0, nBuf);
|
||||||
#if defined(_MSC_VER) && _MSC_VER>=1400
|
#if defined(_MSC_VER) && _MSC_VER>=1400 && !SQLITE_OS_WINCE
|
||||||
rand_s((unsigned int*)zBuf); /* rand_s() is not available with MinGW */
|
rand_s((unsigned int*)zBuf); /* rand_s() is not available with MinGW */
|
||||||
#endif /* defined(_MSC_VER) && _MSC_VER>=1400 */
|
#endif /* defined(_MSC_VER) && _MSC_VER>=1400 */
|
||||||
e.a = (unsigned char*)zBuf;
|
e.a = (unsigned char*)zBuf;
|
||||||
|
@@ -717,7 +717,11 @@ static int multiplexCurrentTime(sqlite3_vfs *a, double *b){
|
|||||||
return gMultiplex.pOrigVfs->xCurrentTime(gMultiplex.pOrigVfs, b);
|
return gMultiplex.pOrigVfs->xCurrentTime(gMultiplex.pOrigVfs, b);
|
||||||
}
|
}
|
||||||
static int multiplexGetLastError(sqlite3_vfs *a, int b, char *c){
|
static int multiplexGetLastError(sqlite3_vfs *a, int b, char *c){
|
||||||
|
if( gMultiplex.pOrigVfs->xGetLastError ){
|
||||||
return gMultiplex.pOrigVfs->xGetLastError(gMultiplex.pOrigVfs, b, c);
|
return gMultiplex.pOrigVfs->xGetLastError(gMultiplex.pOrigVfs, b, c);
|
||||||
|
}else{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
static int multiplexCurrentTimeInt64(sqlite3_vfs *a, sqlite3_int64 *b){
|
static int multiplexCurrentTimeInt64(sqlite3_vfs *a, sqlite3_int64 *b){
|
||||||
return gMultiplex.pOrigVfs->xCurrentTimeInt64(gMultiplex.pOrigVfs, b);
|
return gMultiplex.pOrigVfs->xCurrentTimeInt64(gMultiplex.pOrigVfs, b);
|
||||||
|
@@ -2534,7 +2534,6 @@ case OP_Column: {
|
|||||||
}while( i<=p2 && zHdr<zEndHdr );
|
}while( i<=p2 && zHdr<zEndHdr );
|
||||||
pC->nHdrParsed = i;
|
pC->nHdrParsed = i;
|
||||||
pC->iHdrOffset = (u32)(zHdr - zData);
|
pC->iHdrOffset = (u32)(zHdr - zData);
|
||||||
if( pC->aRow==0 ) sqlite3VdbeMemRelease(&sMem);
|
|
||||||
|
|
||||||
/* The record is corrupt if any of the following are true:
|
/* The record is corrupt if any of the following are true:
|
||||||
** (1) the bytes of the header extend past the declared header size
|
** (1) the bytes of the header extend past the declared header size
|
||||||
@@ -2544,9 +2543,12 @@ case OP_Column: {
|
|||||||
if( (zHdr>=zEndHdr && (zHdr>zEndHdr || offset64!=pC->payloadSize))
|
if( (zHdr>=zEndHdr && (zHdr>zEndHdr || offset64!=pC->payloadSize))
|
||||||
|| (offset64 > pC->payloadSize)
|
|| (offset64 > pC->payloadSize)
|
||||||
){
|
){
|
||||||
|
if( pC->aRow==0 ) sqlite3VdbeMemRelease(&sMem);
|
||||||
rc = SQLITE_CORRUPT_BKPT;
|
rc = SQLITE_CORRUPT_BKPT;
|
||||||
goto abort_due_to_error;
|
goto abort_due_to_error;
|
||||||
}
|
}
|
||||||
|
if( pC->aRow==0 ) sqlite3VdbeMemRelease(&sMem);
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
t = 0;
|
t = 0;
|
||||||
}
|
}
|
||||||
|
@@ -257,7 +257,7 @@ do_test memsubsys1-7.4 {
|
|||||||
} 0
|
} 0
|
||||||
do_test memsubsys1-7.5 {
|
do_test memsubsys1-7.5 {
|
||||||
set maxreq [lindex [sqlite3_status SQLITE_STATUS_MALLOC_SIZE 0] 2]
|
set maxreq [lindex [sqlite3_status SQLITE_STATUS_MALLOC_SIZE 0] 2]
|
||||||
expr {$maxreq<4100 + 4200*[nonzero_reserved_bytes]}
|
expr {$maxreq<(4100 + 8200*[nonzero_reserved_bytes])}
|
||||||
} 1
|
} 1
|
||||||
do_test memsubsys1-7.6 {
|
do_test memsubsys1-7.6 {
|
||||||
set s_used [lindex [sqlite3_status SQLITE_STATUS_SCRATCH_USED 0] 2]
|
set s_used [lindex [sqlite3_status SQLITE_STATUS_SCRATCH_USED 0] 2]
|
||||||
|
@@ -45,7 +45,7 @@ do_test shell1-1.1.1b {
|
|||||||
} {1 1}
|
} {1 1}
|
||||||
# error on extra options
|
# error on extra options
|
||||||
do_test shell1-1.1.2 {
|
do_test shell1-1.1.2 {
|
||||||
catchcmd "test.db \"select 3\" \"select 4\"" ""
|
catchcmd "test.db \"select+3\" \"select+4\"" ""
|
||||||
} {0 {3
|
} {0 {3
|
||||||
4}}
|
4}}
|
||||||
# error on extra options
|
# error on extra options
|
||||||
@@ -276,11 +276,11 @@ do_test shell1-3.2.4 {
|
|||||||
# .databases List names and files of attached databases
|
# .databases List names and files of attached databases
|
||||||
do_test shell1-3.3.1 {
|
do_test shell1-3.3.1 {
|
||||||
catchcmd "-csv test.db" ".databases"
|
catchcmd "-csv test.db" ".databases"
|
||||||
} "/0 +.*main +[string map {/ .} [string range [get_pwd] 0 10]].*/"
|
} "/0.+main.+[string map {/ ".{1,2}"} [string range [get_pwd] 0 10]].*/"
|
||||||
do_test shell1-3.3.2 {
|
do_test shell1-3.3.2 {
|
||||||
# extra arguments ignored
|
# extra arguments ignored
|
||||||
catchcmd "test.db" ".databases BAD"
|
catchcmd "test.db" ".databases BAD"
|
||||||
} "/0 +.*main +[string map {/ .} [string range [get_pwd] 0 10]].*/"
|
} "/0.+main.+[string map {/ ".{1,2}"} [string range [get_pwd] 0 10]].*/"
|
||||||
|
|
||||||
# .dump ?TABLE? ... Dump the database in an SQL text format
|
# .dump ?TABLE? ... Dump the database in an SQL text format
|
||||||
# If TABLE specified, only dump tables matching
|
# If TABLE specified, only dump tables matching
|
||||||
|
@@ -43,7 +43,7 @@ do_test shell2-1.1.1 {
|
|||||||
# Shell silently ignores extra parameters.
|
# Shell silently ignores extra parameters.
|
||||||
# Ticket [f5cb008a65].
|
# Ticket [f5cb008a65].
|
||||||
do_test shell2-1.2.1 {
|
do_test shell2-1.2.1 {
|
||||||
set rc [catch { eval exec $CLI \":memory:\" \"select 3\" \"select 4\" } msg]
|
set rc [catch { eval exec $CLI \":memory:\" \"select+3\" \"select+4\" } msg]
|
||||||
list $rc $msg
|
list $rc $msg
|
||||||
} {0 {3
|
} {0 {3
|
||||||
4}}
|
4}}
|
||||||
|
@@ -26,6 +26,18 @@ db close
|
|||||||
forcedelete test.db test.db-journal test.db-wal
|
forcedelete test.db test.db-journal test.db-wal
|
||||||
sqlite3 db test.db
|
sqlite3 db test.db
|
||||||
|
|
||||||
|
# There are inconsistencies in command-line argument quoting on Windows.
|
||||||
|
# In particular, individual applications are responsible for command-line
|
||||||
|
# parsing in Windows, not the shell. Depending on whether the sqlite3.exe
|
||||||
|
# program is compiled with MinGW or MSVC, the command-line parsing is
|
||||||
|
# different. This causes problems for the tests below. To avoid
|
||||||
|
# issues, these tests are disabled for windows.
|
||||||
|
#
|
||||||
|
if {$::tcl_platform(platform)=="windows"} {
|
||||||
|
finish_test
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
#----------------------------------------------------------------------------
|
#----------------------------------------------------------------------------
|
||||||
# shell3-1.*: Basic tests for running SQL statments from command line.
|
# shell3-1.*: Basic tests for running SQL statments from command line.
|
||||||
#
|
#
|
||||||
|
@@ -17,6 +17,15 @@ source $testdir/tester.tcl
|
|||||||
ifcapable !snapshot {finish_test; return}
|
ifcapable !snapshot {finish_test; return}
|
||||||
set testprefix snapshot
|
set testprefix snapshot
|
||||||
|
|
||||||
|
# This test does not work with the inmemory_journal permutation. The reason
|
||||||
|
# is that each connection opened as part of this permutation executes
|
||||||
|
# "PRAGMA journal_mode=memory", which fails if the database is in wal mode
|
||||||
|
# and there are one or more existing connections.
|
||||||
|
if {[permutation]=="inmemory_journal"} {
|
||||||
|
finish_test
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
# Check some error conditions in snapshot_get(). It is an error if:
|
# Check some error conditions in snapshot_get(). It is an error if:
|
||||||
#
|
#
|
||||||
|
@@ -146,7 +146,7 @@ do_faultsim_test 3.0 -prep {
|
|||||||
error $msg
|
error $msg
|
||||||
}
|
}
|
||||||
} -test {
|
} -test {
|
||||||
faultsim_test_result {0 {}} {1 SQLITE_IOERR} \
|
faultsim_test_result {0 {}} {1 SQLITE_IOERR} {1 SQLITE_NOMEM} \
|
||||||
{1 SQLITE_IOERR_NOMEM} {1 SQLITE_IOERR_READ}
|
{1 SQLITE_IOERR_NOMEM} {1 SQLITE_IOERR_READ}
|
||||||
if {$testrc==0} {
|
if {$testrc==0} {
|
||||||
set res [db eval {
|
set res [db eval {
|
||||||
|
Reference in New Issue
Block a user