| 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 |