Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(328)

Side by Side Diff: third_party/sqlite/README.chromium

Issue 5626002: Update sqlite to 3.7.3. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/third_party/sqlite/src
Patch Set: Remove misc change. Created 10 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | third_party/sqlite/attach-integer.patch » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 Name: SQLite 1 Name: SQLite
2 License File: src/LICENSE 2 License File: src/LICENSE
3 URL: http://sqlite.org/ 3 URL: http://sqlite.org/
4 4
5 Instructions for importing a new release of SQLite from sqlite.org. 5 Instructions for importing a new release of SQLite from sqlite.org.
6 6
7 Note: our current base version is 3.6.18. 7 Note: our current base version is 3.7.3.
8 8
9 First, you need to be on Linux. 9 First, you need to be on Linux.
10 10
11 # Determine the versions of the release you want and the release we currently 11 # Determine the versions of the release you want and the release we currently
12 # have. (See the VERSION file to determine which release we currently have.) 12 # have. (See the VERSION file to determine which release we currently have.)
13 # You may wish to consult http://www.sqlite.org/changes.html to find out what 13 # You may wish to consult http://www.sqlite.org/changes.html to find out what
14 # changes have been made in each release. 14 # changes have been made in each release.
15 # Note - this is just an example. Always refer to the version above for our 15 # Note - this is just an example. Always refer to the version above for our
16 # real current version. 16 # real current version.
17 # Set some variables to remember the versions, e.g.: 17 # Set some variables to remember the versions, e.g.:
18 BASE=3.6.18 18 BASE=3.7.3
19 LATEST=3.6.22 19 LATEST=3.7.4
20 20
21 # Get to the src/third_party directory in your Chromium client: 21 # Get to the src/third_party directory in your Chromium client:
22 cd src/third_party 22 cd src/third_party
23 23
24 # Download the .tar.gz files for the releases: 24 # Download the .tar.gz files for the releases:
25 # (If the URL changes you might need to find the new one.) 25 # (If the URL changes you might need to find the new one.)
26 wget http://www.sqlite.org/sqlite-$BASE.tar.gz 26 wget http://www.sqlite.org/sqlite-$BASE.tar.gz
27 wget http://www.sqlite.org/sqlite-$LATEST.tar.gz 27 wget http://www.sqlite.org/sqlite-$LATEST.tar.gz
28 28
29 # Extract the vanilla current and desired versions: 29 # Extract the vanilla current and desired versions:
30 tar xzf sqlite-$BASE.tar.gz 30 tar xzf sqlite-$BASE.tar.gz
31 tar xzf sqlite-$LATEST.tar.gz 31 tar xzf sqlite-$LATEST.tar.gz
32 32
33 # Use kdiff3 to merge the changes: 33 # Use kdiff3 to merge the changes:
34 kdiff3 -m sqlite-$BASE sqlite-$LATEST sqlite 34 kdiff3 -m sqlite-$BASE sqlite-$LATEST sqlite/src
35 35
36 # Resolve any conflicts. Figure out if we've got everything we should 36 # Resolve any conflicts. Figure out if we've got everything we should
37 # have (see below), or if we can omit any changes we no longer need. 37 # have (see below), or if we can omit any changes we no longer need.
38 38
39 # Change to the sqlite directory: 39 # Change to the sqlite directory:
40 cd sqlite 40 cd sqlite
41 41
42 # Run the google_generate_preprocessed.sh script: 42 # Run the google_generate_preprocessed.sh script:
43 ./google_generate_preprocessed.sh 43 ./google_generate_preprocessed.sh
44 44
(...skipping 11 matching lines...) Expand all
56 For reference, all of our local patches are also kept as .patch files in the 56 For reference, all of our local patches are also kept as .patch files in the
57 sqlite directory. Here is a list of the patches, in the order they should be 57 sqlite directory. Here is a list of the patches, in the order they should be
58 applied to a vanilla SQLite (of the version we currently have) to get, in 58 applied to a vanilla SQLite (of the version we currently have) to get, in
59 principle, exactly what is checked in: 59 principle, exactly what is checked in:
60 60
61 misc.patch 61 misc.patch
62 preload-cache.patch 62 preload-cache.patch
63 safe-tolower.patch 63 safe-tolower.patch
64 sqlite-poison.patch 64 sqlite-poison.patch
65 fts2.patch 65 fts2.patch
66 fts3.patch
67 icu-regexp.patch
68 attach-integer.patch 66 attach-integer.patch
69 67
70 So, e.g. you could do this to apply all our patches to vanilla SQLite: 68 So, e.g. you could do this to apply all our patches to vanilla SQLite:
71 69
72 cd sqlite-$LATEST 70 cd sqlite-$LATEST
73 patch -p0 < ../sqlite/misc.patch 71 patch -p0 < ../sqlite/misc.patch
74 patch -p0 < ../sqlite/preload-cache.patch 72 patch -p0 < ../sqlite/preload-cache.patch
75 patch -p0 < ../sqlite/safe-tolower.patch 73 patch -p0 < ../sqlite/safe-tolower.patch
76 patch -p0 < ../sqlite/sqlite-poison.patch 74 patch -p0 < ../sqlite/sqlite-poison.patch
77 patch -p0 < ../sqlite/fts2.patch 75 patch -p0 < ../sqlite/fts2.patch
78 patch -p0 < ../sqlite/fts3.patch
79 patch -p0 < ../sqlite/icu-regexp.patch
80 patch -p0 < ../sqlite/attach-integer.patch 76 patch -p0 < ../sqlite/attach-integer.patch
81 77
82 This will only be the case if all changes we make also update the corresponding 78 This will only be the case if all changes we make also update the corresponding
83 patch files. Therefore please remember to do that whenever you make a change! 79 patch files. Therefore please remember to do that whenever you make a change!
84 80
85 Descriptions of the changes we've made can be found at the bottom of this file. 81 Descriptions of the changes we've made can be found at the bottom of this file.
86 82
83 NOTE: fts3.patch no longer applies at all, so the patch only exists for
84 historical reference.
85
87 -------------------------------------------- 86 --------------------------------------------
88 87
89 How to run the SQLite tests for the Chromium version of SQLite on Linux. 88 How to run the SQLite tests for the Chromium version of SQLite on Linux.
90 89
91 Prerequisties: On my corp Ubuntu 8.04 workstation, I needed to install the 90 Prerequisties: On my corp Ubuntu 8.04 workstation, I needed to install the
92 following packages: 91 following packages:
93 sudo apt-get install tcl8.4-dev libicu-dev 92 sudo apt-get install tcl8.4-dev libicu-dev
94 93
95 cd src/third_party/sqlite 94 cd src/third_party/sqlite/src
96 mkdir build 95 mkdir build
97 cd build 96 cd build
98 make -f ../Makefile.linux-gcc testfixture 97 make -f ../Makefile.linux-gcc testfixture
99 make -f ../Makefile.linux-gcc test > /tmp/test.log 98 make -f ../Makefile.linux-gcc test > /tmp/test.log
100 egrep -v 'Ok$' /tmp/test.log 99 egrep -v 'Ok$' /tmp/test.log
101 # For an ideal test run, you would see: 100 # For an ideal test run, you would see:
102 # 0 errors out of 57887 tests 101 # 0 errors out of 57887 tests
103 # However, the current situation on my corp Linux Ubuntu 8.04 machine, with 102 # However, the current situation on my corp Linux Ubuntu 8.04 machine, with
104 # test run on a locally mounted directory, is the failure of: 103 # test run on a locally mounted directory, is the failure of:
105 # "rollback-2.3", "tkt3457-1.4" 104 # "rollback-2.3", "tkt3457-1.4"
106 # I do not know why, but it is not related to our fts2.c changes -- I backed 105 # I do not know why, but it is not related to our fts2.c changes -- I backed
107 # them out to check. 106 # them out to check.
108 107
109 Chris Evans <cevans@google.com>, Oct 1, 2009 108 Chris Evans <cevans@google.com>, Oct 1, 2009
110 109
111 -------------------------------------------- 110 --------------------------------------------
112 111
113 As of May 07, 2010, these are our changes from sqlite_vendor: 112 As of May 07, 2010, these are our changes from sqlite_vendor:
114 113
115 - A fix for a crash passing an integer expression to ATTACH / DETACH. See 114 - A fix for a crash passing an integer expression to ATTACH / DETACH. See
116 attach-integer.patch 115 attach-integer.patch
117 - A fix for a crash mis-calling the REGEXP() function of the ICU extension.
118 See icu-regexp.patch
119 - A large number of fts2 robustness fixes against corrupt data in its metadata 116 - A large number of fts2 robustness fixes against corrupt data in its metadata
120 tables. 117 tables.
121 - fts2.c disables fts2_tokenizer(). 118 - fts2.c disables fts2_tokenizer().
122 - fts3.c disables fts3_tokenizer(). 119 - fts3.c disables fts3_tokenizer().
123 - sqlite3Poison() in src/btree.c. 120 - sqlite3Poison() in src/btree.c.
124 - Tweak to SQLITE_EXTENSION_INIT* in sqlite3ext.h. 121 - Tweak to SQLITE_EXTENSION_INIT* in sqlite3ext.h.
125 - That implied a change in src/test_autoext.c for testing. 122 - That implied a change in src/test_autoext.c for testing.
126 - Added fts.test and fts1.test in tests, modified quick.test. 123 - Added fts.test and fts1.test in tests, modified quick.test.
127 - src/os_symbian.cc. 124 - src/os_symbian.cc.
128 - Modifications to Makefile.linux-gcc and main.mk for compiling 125 - Modifications to Makefile.linux-gcc and main.mk for compiling
(...skipping 24 matching lines...) Expand all
153 - fts2_icu.c and fts3_icu.c have a critical bug. U8_NEXT is used over 150 - fts2_icu.c and fts3_icu.c have a critical bug. U8_NEXT is used over
154 a UTF-16 string. It's rep$ by U16_NEXT (jungshik) 151 a UTF-16 string. It's rep$ by U16_NEXT (jungshik)
155 - Added a new function sqlite3Preload we use to prime the database cache. It 152 - Added a new function sqlite3Preload we use to prime the database cache. It
156 allows much faster performance by reading the file in one contiguous 153 allows much faster performance by reading the file in one contiguous
157 operation rather than bringing it in organically, which involves a lot of 154 operation rather than bringing it in organically, which involves a lot of
158 seeking. This change also required sqlite3PcacheGetCachesize to be compiled 155 seeking. This change also required sqlite3PcacheGetCachesize to be compiled
159 even outside SQLITE_TEST. 156 even outside SQLITE_TEST.
160 - Added a new function chromium_sqlite3_initialize_win_sqlite3_file() 157 - Added a new function chromium_sqlite3_initialize_win_sqlite3_file()
161 at the end of os_win.c. It allows the Windows-specific Chromium VFS 158 at the end of os_win.c. It allows the Windows-specific Chromium VFS
162 to reuse most of the win32 SQLite VFS. 159 to reuse most of the win32 SQLite VFS.
OLDNEW
« no previous file with comments | « no previous file | third_party/sqlite/attach-integer.patch » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698