blob: 4355952a86e583f9f8e0c04e5ff7413367575bd5 [file] [log] [blame]
Name: LevelDB: A Fast Persistent Key-Value Store
Short Name: leveldb
URL: https://github.com/google/leveldb.git
Version: 1.21.git.ffabb1ae86cc4eb4516a7c0824c878c3b2d19e5d
License: New BSD
License File: src/LICENSE
Security Critical: yes
Description:
Alternative to SQLite used as the backend for IndexedDB and internally by the
FileSystem API implementation and others.
Currently using (not yet released) manifest reuse feature for all platforms
except Chrome OS.
Local Additions:
* GN file for building in chromium
* port/port_chromium.{h,cc} and env_chromium.{h,cc} provide chromium
implementations of primitives used by leveldb. E.g. threading, file handling,
etc. env_chromium.h allows re-use of some utility functions.
* chromium_logger.h was copied from src/util/posix_logger.h and updated to use
chrome primitives in place of some posix primitives
* Logging of uma statistics. Can be overridden by derived class to redirect to
different histogram.
* TRACE macros/thread name for chrome://tracing diagnostics
* Handle in-process exclusive file locks, based on src/util/env_posix.cc
* Unit tests for the Chromium environment.
* db_bench is built as leveldb_db_bench in Chromium.
* leveldb_chrome::NewMemEnv() to create memory Env instances that are tracked to
know if a database open request is in-memory. These memory Env instances report
memory usage to memory-infra.