From 74587e5567060d18e59fb6391f45c040b57a8aff Mon Sep 17 00:00:00 2001
From: drh
Date: Tue, 13 Aug 2002 00:01:16 +0000
Subject: [PATCH] Updates prior to release 2.6.3. (CVS 706)
FossilOrigin-Name: 34c4149eea7a48927e36867f4e25ff7fac40c66e
---
Makefile.template | 1 +
VERSION | 2 +-
manifest | 26 ++++++++---------
manifest.uuid | 2 +-
src/btree.c | 9 ++----
src/pager.c | 20 ++++++-------
test/trans.test | 3 +-
test/trigger2.test | 1 -
www/changes.tcl | 9 ++++++
www/index.tcl | 71 ++++++++++++++++++++++------------------------
10 files changed, 74 insertions(+), 70 deletions(-)
diff --git a/Makefile.template b/Makefile.template
index 99c9451fdb..351ebf8850 100644
--- a/Makefile.template
+++ b/Makefile.template
@@ -157,6 +157,7 @@ SRC = \
#
TESTSRC = \
$(TOP)/src/btree.c \
+ $(TOP)/src/func.c \
$(TOP)/src/os.c \
$(TOP)/src/pager.c \
$(TOP)/src/test1.c \
diff --git a/VERSION b/VERSION
index 097a15a2af..ec1cf33c3f 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2.6.2
+2.6.3
diff --git a/manifest b/manifest
index 7722b2620a..9af0afc54a 100644
--- a/manifest
+++ b/manifest
@@ -1,9 +1,9 @@
-C Fix\sfor\sticket\s#9\s(again).\s\sThe\srollback\sjournal\sfiles\sshould\snow\salso\sbe\nbyte-order\sindependent.\s(CVS\s705)
-D 2002-08-12T12:29:57
+C Updates\sprior\sto\srelease\s2.6.3.\s(CVS\s706)
+D 2002-08-13T00:01:17
F Makefile.in 6291a33b87d2a395aafd7646ee1ed562c6f2c28c
-F Makefile.template 4e11752e0b5c7a043ca50af4296ec562857ba495
+F Makefile.template 0f288908fb6b1186b1594d753f79dc06c32b1dd7
F README a4c0ba11354ef6ba0776b400d057c59da47a4cc0
-F VERSION 8a5fcfd7c610c6d019b77b799ad1db89103ed2bf
+F VERSION f860323f95b110e5af69b3754d006f39304390a0
F aclocal.m4 11faa843caa38fd451bc6aeb43e248d1723a269d
F config.guess f38b1e93d1e0fa6f5a6913e9e7b12774b9232588
F config.sub f14b07d544ca26b5d698259045136b783e18fc7f
@@ -18,7 +18,7 @@ F publish.sh 29f86624db9253353ae159a9e015f81e16f9dd5b
F spec.template 238f7db425a78dc1bb7682e56e3834c7270a3f5e
F sqlite.1 83f4a9d37bdf2b7ef079a82d54eaf2e3509ee6ea
F src/TODO af7f3cab0228e34149cf98e073aa83d45878e7e6
-F src/btree.c c7669b179d452999dc39bf8a931e29a5d7151f96
+F src/btree.c 16d1712321e91e77562ffc673ed97b0b1a791db4
F src/btree.h 0ca6c2631338df62e4f7894252d9347ae234eda9
F src/build.c 0d661e653e02ce8037917c35403d9f0ff4418e6e
F src/delete.c c9f59ee217e062eb9de7b64b76b5cfff42b2f028
@@ -32,7 +32,7 @@ F src/main.c 0f5d0f6f27333a851d848bfdd7bfa67a37cea12b
F src/md5.c 0ae1f3e2cac92d06fc6246d1b4b8f61a2fe66d3b
F src/os.c 9665974085ebe1d40d56d1145045b3d64f12cbce
F src/os.h 4a361fccfbc4e7609b3e1557f604f94c1e96ad10
-F src/pager.c ca54e21cad43270027b6872ffe3b6e86a5099dfb
+F src/pager.c 4b0169e91b34f6ff91e8feb57545c43e4d6eb370
F src/pager.h 6991c9c2dc5e4c7f2df4d4ba47d1c6458f763a32
F src/parse.y 66e7da55b34b57f81ca07e50d1dcc430b1c1bf74
F src/printf.c 06f4c8725063e0faf0e34824ab70feace7146bf7
@@ -100,9 +100,9 @@ F test/tableapi.test 3c80421a889e1d106df16e5800fa787f0d2914a6
F test/tclsqlite.test 6f4b9760681c7dbca52a18d0ab46a1679cdc79b9
F test/temptable.test 9ed7ec0288f887e132de66d90c428ad109105f67
F test/tester.tcl 6f603d90881bd835ea27c568a7fecaa57dce91cc
-F test/trans.test b8a51e9f61d55d0185a813695a55a7fad8fe8ab7
+F test/trans.test 5dccfa3115d4601f7cfc6b49c3a3fd8676a98522
F test/trigger1.test bb63749fa8a395a60541100607d86381604b7194
-F test/trigger2.test f739876942a26c63d42387321a89b75ec93af48a
+F test/trigger2.test 19070bdb7cdcb2b163170d864fc2fd289b2d73ef
F test/trigger3.test 7dfe798d7e72c13720394685fe353112e3f31adf
F test/trigger4.test 9a5c1406344d743020c2753ae8d6dfe6eb75f818
F test/unique.test 572aa791327c1e8d797932263e9d67f176cfdb44
@@ -128,14 +128,14 @@ F www/arch.png 82ef36db1143828a7abc88b1e308a5f55d4336f4
F www/arch.tcl 679a0c48817f71bc91d5911ef386e5ef35d4f178
F www/audit.tcl 90e09d580f79c7efec0c7d6f447b7ec5c2dce5c0
F www/c_interface.tcl fb87b825b9032b9aa941694c5c9c5aee9424467e
-F www/changes.tcl 170d01bd2c877a494f9eb041c68b10a7007e4a75
+F www/changes.tcl 73451195af83332eff90feea6a61639ff9908155
F www/conflict.tcl 81dd21f9a679e60aae049e9dd8ab53d59570cda2
F www/crosscompile.tcl 3622ebbe518927a3854a12de51344673eb2dd060
F www/download.tcl 29aa6679ca29621d10613f60ebbbda18f4b91c49
F www/dynload.tcl 02eb8273aa78cfa9070dd4501dca937fb22b466c
F www/faq.tcl 5e3f71ced26a6dc863bd8d7afd711bf16c99acf6
F www/formatchng.tcl 502847353450adaf76d187d87374bce20dd07e0e
-F www/index.tcl 6c9b78fa8cb117fa5af2ccff56a47eef798f39a4
+F www/index.tcl 4ee3750153a5eaaabc3e5d9b1e96cfbe78c62086
F www/lang.tcl 8c3d0bda030f110c754b5edbad75eddf5dbe2ed1
F www/mingw.tcl f1c7c0a7f53387dd9bb4f8c7e8571b7561510ebc
F www/opcode.tcl 33c5f2061a05c5d227c72b84c080b3bf74c74f8b
@@ -143,7 +143,7 @@ F www/speed.tcl 7fc83f1b018e1ecc451838449542c3079ed12425
F www/sqlite.tcl ae3dcfb077e53833b59d4fcc94d8a12c50a44098
F www/tclsqlite.tcl 1db15abeb446aad0caf0b95b8b9579720e4ea331
F www/vdbe.tcl 2013852c27a02a091d39a766bc87cff329f21218
-P ce4b943bf68c160445a58ffccfbabbbd30d9829b
-R eceb789f2b856b82ace2f266f575aef0
+P 2fb3fdcdf06c1206bf14da640c2f9e599455f0eb
+R b96ce82652418ef9a905306828af0c0e
U drh
-Z 583bd24d9680709c13934b197d486934
+Z deb07850c800510c6c72c2a0a0ce1719
diff --git a/manifest.uuid b/manifest.uuid
index 436f1e8a77..d8a394d531 100644
--- a/manifest.uuid
+++ b/manifest.uuid
@@ -1 +1 @@
-2fb3fdcdf06c1206bf14da640c2f9e599455f0eb
\ No newline at end of file
+34c4149eea7a48927e36867f4e25ff7fac40c66e
\ No newline at end of file
diff --git a/src/btree.c b/src/btree.c
index 935e527662..a52878cbe5 100644
--- a/src/btree.c
+++ b/src/btree.c
@@ -9,7 +9,7 @@
** May you share freely, never taking more than you give.
**
*************************************************************************
-** $Id: btree.c,v 1.69 2002/08/11 20:10:47 drh Exp $
+** $Id: btree.c,v 1.70 2002/08/13 00:01:17 drh Exp $
**
** This file implements a external (disk-based) database using BTrees.
** For a detailed discussion of BTrees, refer to
@@ -76,6 +76,8 @@
*/
#ifdef SQLITE_TEST
int btree_native_byte_order = 1;
+#else
+# define btree_native_byte_order 1
#endif
/*
@@ -793,7 +795,6 @@ static int newDatabase(Btree *pBt){
return rc;
}
strcpy(pP1->zMagic, zMagicHeader);
-#ifdef SQLITE_TEST
if( btree_native_byte_order ){
pP1->iMagic = MAGIC;
pBt->needSwab = 0;
@@ -801,10 +802,6 @@ static int newDatabase(Btree *pBt){
pP1->iMagic = swab32(MAGIC);
pBt->needSwab = 1;
}
-#else
- pP1->iMagic = MAGIC;
- pBt->needSwab = 0;
-#endif
zeroPage(pBt, pRoot);
sqlitepager_unref(pRoot);
return SQLITE_OK;
diff --git a/src/pager.c b/src/pager.c
index dafdfb6182..3f80d15d8c 100644
--- a/src/pager.c
+++ b/src/pager.c
@@ -18,7 +18,7 @@
** file simultaneously, or one process from reading the database while
** another is writing.
**
-** @(#) $Id: pager.c,v 1.50 2002/08/12 12:29:57 drh Exp $
+** @(#) $Id: pager.c,v 1.51 2002/08/13 00:01:17 drh Exp $
*/
#include "sqliteInt.h"
#include "pager.h"
@@ -177,6 +177,8 @@ static const unsigned char aJournalMagic[] = {
*/
#ifdef SQLITE_TEST
int pager_old_format = 0;
+#else
+# define pager_old_format 0
#endif
/*
@@ -187,7 +189,7 @@ int pager_old_format = 0;
/*
** Enable reference count tracking here:
*/
-#if SQLITE_TEST
+#ifdef SQLITE_TEST
int pager_refinfo_enable = 0;
static void pager_refinfo(PgHdr *p){
static int cnt = 0;
@@ -225,11 +227,9 @@ static int read32bits(Pager *pPager, OsFile *fd, u32 *pRes){
*/
static int write32bits(OsFile *fd, u32 val){
unsigned char ac[4];
-#ifdef SQLITE_TEST
if( pager_old_format ){
return sqliteOsWrite(fd, &val, 4);
}
-#endif
ac[0] = (val>>24) & 0xff;
ac[1] = (val>>16) & 0xff;
ac[2] = (val>>8) & 0xff;
@@ -482,7 +482,11 @@ static int pager_ckpt_playback(Pager *pPager){
/* Copy original pages out of the checkpoint journal and back into the
** database file.
*/
- pPager->journalFormat = SQLITE_NEW_JOURNAL_FORMAT;
+ if( pager_old_format ){
+ pPager->journalFormat = SQLITE_OLD_JOURNAL_FORMAT;
+ }else{
+ pPager->journalFormat = SQLITE_NEW_JOURNAL_FORMAT;
+ }
for(i=nRec-1; i>=0; i--){
rc = pager_playback_one_page(pPager, &pPager->cpfd);
if( rc!=SQLITE_OK ) goto end_ckpt_playback;
@@ -1140,16 +1144,12 @@ int sqlitepager_begin(void *pData){
pPager->state = SQLITE_WRITELOCK;
sqlitepager_pagecount(pPager);
pPager->origDbSize = pPager->dbSize;
-#ifdef SQLITE_TEST
if( pager_old_format ){
rc = sqliteOsWrite(&pPager->jfd, aOldJournalMagic,
sizeof(aOldJournalMagic));
}else{
rc = sqliteOsWrite(&pPager->jfd, aJournalMagic, sizeof(aJournalMagic));
}
-#else
- rc = sqliteOsWrite(&pPager->jfd, aJournalMagic, sizeof(aJournalMagic));
-#endif
if( rc==SQLITE_OK ){
rc = write32bits(&pPager->jfd, pPager->dbSize);
}
@@ -1532,7 +1532,7 @@ int sqlitepager_ckpt_rollback(Pager *pPager){
return rc;
}
-#if SQLITE_TEST
+#ifdef SQLITE_TEST
/*
** Print a listing of all referenced pages and their ref count.
*/
diff --git a/test/trans.test b/test/trans.test
index 7e36e6a541..de75b79cad 100644
--- a/test/trans.test
+++ b/test/trans.test
@@ -11,7 +11,7 @@
# This file implements regression tests for SQLite library. The
# focus of this script is database locks.
#
-# $Id: trans.test,v 1.14 2002/08/12 12:29:57 drh Exp $
+# $Id: trans.test,v 1.15 2002/08/13 00:01:18 drh Exp $
set testdir [file dirname $argv0]
@@ -886,6 +886,7 @@ for {set i 2} {$i<=$limit} {incr i} {
}
} {}
}
+ set ::pager_old_format 0
}
finish_test
diff --git a/test/trigger2.test b/test/trigger2.test
index 6f861cfef5..39bc778b5e 100644
--- a/test/trigger2.test
+++ b/test/trigger2.test
@@ -430,7 +430,6 @@ execsql {
DROP TABLE tbl;
}
-
# Handling of ON CONFLICT by INSERT statements inside triggers
execsql {
CREATE TABLE tbl (a primary key, b, c);
diff --git a/www/changes.tcl b/www/changes.tcl
index eb817afa62..584c0ade6a 100644
--- a/www/changes.tcl
+++ b/www/changes.tcl
@@ -25,6 +25,15 @@ proc chng {date desc} {
puts "
"
}
+chng {2002 Aug 12 (2.6.3)} {
+Add the ability to read both little-endian and big-endian databases.
+ So database created under SunOS or MacOSX can be read and written
+ under Linux or Windows and vice versa.
+Convert to the new website: http://www.sqlite.org/
+Allow transactions to span Linux Threads
+Bug fix in the processing of the ORDER BY clause for GROUP BY queries
+}
+
chng {2002 Jly 30 (2.6.2)} {
Text files read by the COPY command can now have line terminators
of LF, CRLF, or CR.
diff --git a/www/index.tcl b/www/index.tcl
index c4efd04f10..120bf2ee0c 100644
--- a/www/index.tcl
+++ b/www/index.tcl
@@ -1,7 +1,7 @@
#
# Run this TCL script to generate HTML for the index.html file.
#
-set rcsid {$Id: index.tcl,v 1.62 2002/08/12 12:29:58 drh Exp $}
+set rcsid {$Id: index.tcl,v 1.63 2002/08/13 00:01:18 drh Exp $}
puts {
SQLite: An SQL Database Engine In A C Library
@@ -49,15 +49,18 @@ puts {Features
- Implements most of SQL92.
- A complete database (with multiple tables and indices) is
- stored in a single byte-order independent disk file.
+ stored in a single disk file.
- Atomic commit and rollback protect data integrity.
-- Small memory footprint: less than 20K lines of C code.
+- Database files can be freely shared between machines with
+ different byte orders.
+- Small memory footprint: less than 25K lines of C code.
- Four times faster than PostgreSQL.
Twice as fast as SQLite 1.0.
- Very simple
C/C++ interface requires the use of only
three functions and one opaque structure.
- TCL bindings included.
+- Simple, well-commented source code.
- A TCL-based test suite provides near 100% code coverage.
- Self-contained: no external dependencies.
- Built and tested under Linux and Win2K.
@@ -66,30 +69,6 @@ three functions and one opaque structure.
}
-puts {Database File Format Change - 2002 July 17
-
-Beginning with version 2.6.0, the SQLite database file format changed
-in an incompatible way. If you open a database file from version 2.5.6
-or earlier with version 2.6.0 or later of the library, then the file format
-will be converted automatically. This is an irreversible operation. Once
-the conversion occurs, you will no longer be able to access the database
-file from older versions of the library. If the database is large, the
-conversion might take some time. (Allow 1 to 2 seconds per megabyte
-of database under Linux.) If the database is read-only,
-the conversion cannot occur and the attempt to open the database will
-fail.
-It is suggested that you make backup copies of older database files
-before attempting to open them with version 2.6.0 or later of the library.
-
-
-
-
-Make backups of older database files before opening them
-with version 2.6.0 or later of SQLite |
-
-
-}
-
puts {Current Status
A Change Summary is available on this
@@ -125,8 +104,25 @@ for SQLite change, it means that the underlying file format
has changed. See formatchng.html
for additional information.
+}
-Documentation
+puts {Database File Format Change - Version 2.6.0 - 2002 July 17
+
+Beginning with version 2.6.0, the SQLite database file format changed
+in an incompatible way. If you open a database file from version 2.5.6
+or earlier with version 2.6.0 or later of the library, then the file format
+will be converted automatically. This is an irreversible operation. Once
+the conversion occurs, you will no longer be able to access the database
+file from older versions of the library. If the database is large, the
+conversion might take some time. (Allow 1 to 2 seconds per megabyte
+of database under Linux.) If the database is read-only,
+the conversion cannot occur and the attempt to open the database will
+fail.
+It is suggested that you make backup copies of older database files
+before attempting to open them with version 2.6.0 or later of the library.
+}
+
+puts {Documentation
The following documentation is currently available:
@@ -201,16 +197,17 @@ $ make test Optional: run regression tests
puts {Related Sites
-}
+
+
+http://cvs.hwaci.com:2080/sqlite/wiki
+
+}
puts {