blob: bb957d6a30a9956c97abea8e0f6b580d1c3e7d33 [file] [log] [blame]
Name: LevelDB: A Fast Persistent Key-Value Store
Short Name: leveldb
URL: https://github.com/google/leveldb.git
Version: 1.22.git.4bd052d7e8b0469b2b87664388e2a99cb212ecdb
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.