OLD | NEW |
1 Name: sqlite | 1 Name: sqlite |
2 URL: http://sqlite.org/ | 2 URL: http://sqlite.org/ |
3 Version: 3.8.7.4 | 3 Version: 3.8.7.4 |
4 Included In Release: Yes | 4 Included In Release: Yes |
5 Security Critical: Yes | 5 Security Critical: Yes |
6 License: Public domain | 6 License: Public domain |
7 | 7 |
8 1) Managing differences between SQLite core and Chromium's version. | 8 1) Managing differences between SQLite core and Chromium's version. |
9 2) Making changes to Chromium SQLite. | 9 2) Making changes to Chromium SQLite. |
10 3) Import new release of SQLite. | 10 3) Import new release of SQLite. |
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
205 Note that things can be broken down differently, if you prefer. For instance, | 205 Note that things can be broken down differently, if you prefer. For instance, |
206 adding the new version of the SQLite distro and removing the old one can be | 206 adding the new version of the SQLite distro and removing the old one can be |
207 distinct CLs. | 207 distinct CLs. |
208 | 208 |
209 -------------------------------------------- | 209 -------------------------------------------- |
210 | 210 |
211 4) Running SQLite's test suite within the Chromium checkout. | 211 4) Running SQLite's test suite within the Chromium checkout. |
212 | 212 |
213 Prerequisites: The test suite requires tcl-dev and libicu-dev. Install those on | 213 Prerequisites: The test suite requires tcl-dev and libicu-dev. Install those on |
214 Ubuntu like: | 214 Ubuntu like: |
215 sudo apt-get install tcl8.5-dev libicu-dev | 215 sudo apt-get install tcl8.6-dev libicu-dev |
216 On OSX, I use Homebrew: | 216 On OSX, I use MacPorts: |
217 sudo port install tcl | 217 sudo port install tcl |
218 TODO(shess): OSX works fine with either tcl8.5 or tcl8.6, but on Ubuntu 14.04.1 | |
219 with tcl8.6, I see crashes in some of the WAL tests. Revisit using tcl8.6 on | |
220 next import of SQLite. | |
221 TODO(shess): That Homebrew command has installed tcl8.6 for a few years, so the | |
222 above may require some adaptation of the build files. | |
223 | 218 |
224 cd third_party/sqlite/src | 219 cd third_party/sqlite/src |
225 mkdir build | 220 mkdir build |
226 cd build | 221 cd build |
227 make -j -f ../Makefile.linux-gcc testfixture sqlite3 | 222 # This sometimes gives integer-size warnings on the differences between |
| 223 # Tcl_WideInt and sqlite3_int64 and int64. Usually this is easily fixed by |
| 224 # changing a variable to Tcl_WideInt. |
| 225 make -j -f ../Makefile.linux-gcc testfixture sqlite3 sqlite3_analyzer sqldiff |
228 make -f ../Makefile.linux-gcc test > /tmp/test.log | 226 make -f ../Makefile.linux-gcc test > /tmp/test.log |
229 egrep 'errors out of' /tmp/test.log | 227 egrep 'errors out of' /tmp/test.log |
230 # Show broken tests: | 228 # Show broken tests: |
231 egrep 'Failures on these tests:' /tmp/test.log | 229 egrep 'Failures on these tests:' /tmp/test.log |
232 # Broken tests will also show lines ending in "..." instead of "... Ok". | 230 # Broken tests will also show lines ending in "..." instead of "... Ok". |
233 | 231 |
234 In version 3.8.7.4 on OSX 10.9.5, I see: | 232 In version 3.10.2 on OSX 10.11.2, I see: |
235 6 errors out of 138390 tests | 233 6 errors out of 139819 tests |
236 The failed tests are: | 234 The failed tests are: |
237 pager4-1.3 pager4-1.4 pager4-1.5 pager4-1.9 pager4-1.10 pager4-1.11 | 235 pager4-1.3 pager4-1.4 pager4-1.5 pager4-1.9 pager4-1.10 pager4-1.11 |
238 This is due to the change in os_unix.c fileHasMoved() to support WebDatabase. | 236 This is due to the change in os_unix.c fileHasMoved() to support WebDatabase. |
239 Commenting out the early return allows them to succeed. | 237 Commenting out the early return allows them to succeed. |
240 | 238 |
241 In version 3.8.7.4 on Ubuntu 14.04 I see: | 239 In version 3.10.2 on Ubuntu 14.04.3 I see: |
242 9 errors out of 138920 tests | 240 9 errors out of 140309 tests |
243 The failed tests are: | 241 The failed tests are: |
244 oserror-1.1.1 oserror-1.1.2 oserror-1.1.3 | 242 oserror-1.1.1 oserror-1.1.2 oserror-1.1.3 |
245 pager4-1.3 pager4-1.4 pager4-1.5 pager4-1.9 pager4-1.10 pager4-1.11 | 243 pager4-1.3 pager4-1.4 pager4-1.5 pager4-1.9 pager4-1.10 pager4-1.11 |
246 The oserror tests fail because there are too many fds available, and can be | 244 The oserror tests fail because there are too many fds available, and can be |
247 fixed by running "ulimit -n 1024" before the test. The pager4 tests are failing | 245 fixed by running "ulimit -n 1024" before the test. The pager4 tests are failing |
248 for the same reason as above. | 246 for the same reason as for OSX. |
249 | 247 |
250 -- | 248 -- |
251 | 249 |
252 NOTE(shess): On Ubuntu it is possible to run the tests in a tmpfs something | 250 NOTE(shess): On Ubuntu it is possible to run the tests in a tmpfs something |
253 like: | 251 like: |
254 | 252 |
255 TMPFS=/dev/shm/sqlite_build | 253 TMPFS=/dev/shm/sqlite_build |
256 BUILD=$PWD | 254 BUILD=$PWD |
257 mkdir $TMPFS | 255 mkdir $TMPFS |
258 (cd $TMPFS ; $BUILD/testfixture $BUILD/../test/veryquick.test >/tmp/test.log) | 256 (cd $TMPFS ; $BUILD/testfixture $BUILD/../test/veryquick.test >/tmp/test.log) |
259 | 257 |
260 This is faster, but it is plausible that different things are being tested than | 258 This is faster, but it is plausible that different things are being tested than |
261 real-world use. | 259 real-world use. |
OLD | NEW |