Perfetto depends on SQLite internals:
Only upgrade when Chrome, Android, and Google3 all support the target SQLite version.
Update version references:
tools/install-build-deps - update SQLite version/hashbazel/deps.bzl - update SQLite version/hashRegenerate the PerfettoSQL parser:
python3 tools/gen_syntaqlite_parser
Build and test:
tools/ninja -C out/linux_clang_release trace_processor_shell perfetto_unittests out/linux_clang_release/perfetto_unittests --gtest_filter="*Sql*" tools/diff_test_trace_processor.py out/linux_clang_release/trace_processor_shell --quiet
Error: Compilation errors in sqlite_utils.h or sqlite/bindings/*.h
Fix: Update bindings for SQLite API changes
tools/install-build-deps - SQLite version/hashbazel/deps.bzl - SQLite version/hashtools/gen_syntaqlite_parser - Parser regeneration scriptsrc/trace_processor/perfetto_sql/syntaqlite/syntaqlite_perfetto.csrc/trace_processor/perfetto_sql/syntaqlite/syntaqlite_perfetto.hsrc/trace_processor/perfetto_sql/syntaqlite/perfetto.y - Perfetto dialect grammarsrc/trace_processor/perfetto_sql/syntaqlite/perfetto.synq - AST node definitionstools/install-build-deps and bazel/deps.bzlpython3 tools/gen_syntaqlite_parser