OLD | NEW |
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 { | 5 { |
6 'variables': { | 6 'variables': { |
7 'use_system_sqlite%': 0, | 7 'use_system_sqlite%': 0, |
8 'required_sqlite_version': '3.6.1', | 8 'required_sqlite_version': '3.6.1', |
9 }, | 9 }, |
10 'target_defaults': { | 10 'target_defaults': { |
(...skipping 20 matching lines...) Expand all Loading... |
31 # Allow 256MB mmap footprint per connection. Should not be too open-ended | 31 # Allow 256MB mmap footprint per connection. Should not be too open-ended |
32 # as that could cause memory fragmentation. 50MB encompasses the 99th | 32 # as that could cause memory fragmentation. 50MB encompasses the 99th |
33 # percentile of Chrome databases in the wild. | 33 # percentile of Chrome databases in the wild. |
34 # TODO(shess): A 64-bit-specific value could be 1G or more. | 34 # TODO(shess): A 64-bit-specific value could be 1G or more. |
35 # TODO(shess): Figure out if exceeding this is costly. | 35 # TODO(shess): Figure out if exceeding this is costly. |
36 'SQLITE_MAX_MMAP_SIZE=268435456', | 36 'SQLITE_MAX_MMAP_SIZE=268435456', |
37 # Use a read-only memory map when mmap'ed I/O is enabled to prevent memory | 37 # Use a read-only memory map when mmap'ed I/O is enabled to prevent memory |
38 # stompers from directly corrupting the database. | 38 # stompers from directly corrupting the database. |
39 # TODO(shess): Upstream the ability to use this define. | 39 # TODO(shess): Upstream the ability to use this define. |
40 'SQLITE_MMAP_READ_ONLY=1', | 40 'SQLITE_MMAP_READ_ONLY=1', |
| 41 # By default SQLite pre-allocates 100 pages of pcache data, which will not |
| 42 # be released until the handle is closed. This is contrary to Chromium's |
| 43 # memory-usage goals. |
| 44 'SQLITE_DEFAULT_PCACHE_INITSZ=0', |
41 # NOTE(shess): Some defines can affect the amalgamation. Those should be | 45 # NOTE(shess): Some defines can affect the amalgamation. Those should be |
42 # added to google_generate_amalgamation.sh, and the amalgamation | 46 # added to google_generate_amalgamation.sh, and the amalgamation |
43 # re-generated. Usually this involves disabling features which include | 47 # re-generated. Usually this involves disabling features which include |
44 # keywords or syntax, for instance SQLITE_OMIT_VIRTUALTABLE omits the | 48 # keywords or syntax, for instance SQLITE_OMIT_VIRTUALTABLE omits the |
45 # virtual table syntax entirely. Missing an item usually results in | 49 # virtual table syntax entirely. Missing an item usually results in |
46 # syntax working but execution failing. Review: | 50 # syntax working but execution failing. Review: |
47 # src/src/parse.py | 51 # src/src/parse.py |
48 # src/tool/mkkeywordhash.c | 52 # src/tool/mkkeywordhash.c |
49 ], | 53 ], |
50 }, | 54 }, |
(...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
253 'clang_warning_flags_unset': [ | 257 'clang_warning_flags_unset': [ |
254 # icu.c uses assert(!"foo") instead of assert(false && "foo") | 258 # icu.c uses assert(!"foo") instead of assert(false && "foo") |
255 '-Wstring-conversion', | 259 '-Wstring-conversion', |
256 ], | 260 ], |
257 }, | 261 }, |
258 }, | 262 }, |
259 ], | 263 ], |
260 }], | 264 }], |
261 ], | 265 ], |
262 } | 266 } |
OLD | NEW |