| Name: LevelDB: A Fast Persistent Key-Value Store |
| Short Name: leveldb |
| URL: https://github.com/google/leveldb.git |
| Version: 1.20.git.7b945f200339aa47c24788d3ee9910c09c513843 |
| 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. |