This repository has been archived by the owner on Aug 8, 2023. It is now read-only.
Investigate performance-enhancing database schema changes #6334
Labels
Core
The cross-platform C++ core, aka mbgl
offline
performance
Speed, stability, CPU usage, memory usage, or power usage
The offline/ambient cache SQLite database currently uses
journal_mode = DELETE
andsynchronous = FULL
pragmas. These modes are safe and have proven reasonably reliable, but they are slow.We briefly moved to
WAL
+NORMAL
(#5796) and saw increased speed, but that ended up being short-lived as it provoked bad behavior on Android (#6193) and was reverted out of prudence (#6320).#6319 presented a way to avoid the Android file permission issue by switching to in-memory temporary stores. This would purportedly bring its own speed improvements, but also a variety of unknowns — so we tabled it.
To a glorious future
After more research and testing, I’d like to bring back these changes:
So what do we need to feel confident about another schema change?
gbenchmark
(./benchmark/...`)/cc @mapbox/mobile @kkaefer @tmpsantos @brunoabinader @mikemorris
The text was updated successfully, but these errors were encountered: