summaryrefslogtreecommitdiff
path: root/README.md
Commit message (Collapse)AuthorAgeFilesLines
* Add support for Zstd-based compression in LevelDB.leveldb Team2023-03-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change implements support for Zstd-based compression in LevelDB. Building up from the Snappy compression (which has been supported since inception), this change adds Zstd as an alternate compression algorithm. We are implementing this to provide alternative options for users who might have different performance and efficiency requirements. For instance, the Zstandard website (https://facebook.github.io/zstd/) claims that the Zstd algorithm can achieve around 30% higher compression ratios than Snappy, with relatively smaller (~10%) slowdowns in de/compression speeds. Benchmarking results: $ blaze-bin/third_party/leveldb/db_bench LevelDB: version 1.23 Date: Thu Feb 2 18:50:06 2023 CPU: 56 * Intel(R) Xeon(R) CPU E5-2690 v4 @ 2.60GHz CPUCache: 35840 KB Keys: 16 bytes each Values: 100 bytes each (50 bytes after compression) Entries: 1000000 RawSize: 110.6 MB (estimated) FileSize: 62.9 MB (estimated) ------------------------------------------------ fillseq : 2.613 micros/op; 42.3 MB/s fillsync : 3924.432 micros/op; 0.0 MB/s (1000 ops) fillrandom : 3.609 micros/op; 30.7 MB/s overwrite : 4.508 micros/op; 24.5 MB/s readrandom : 6.136 micros/op; (864322 of 1000000 found) readrandom : 5.446 micros/op; (864083 of 1000000 found) readseq : 0.180 micros/op; 613.3 MB/s readreverse : 0.321 micros/op; 344.7 MB/s compact : 827043.000 micros/op; readrandom : 4.603 micros/op; (864105 of 1000000 found) readseq : 0.169 micros/op; 656.3 MB/s readreverse : 0.315 micros/op; 350.8 MB/s fill100K : 854.009 micros/op; 111.7 MB/s (1000 ops) crc32c : 1.227 micros/op; 3184.0 MB/s (4K per op) snappycomp : 3.610 micros/op; 1081.9 MB/s (output: 55.2%) snappyuncomp : 0.691 micros/op; 5656.3 MB/s zstdcomp : 15.731 micros/op; 248.3 MB/s (output: 44.1%) zstduncomp : 4.218 micros/op; 926.2 MB/s PiperOrigin-RevId: 509957778
* Fix maintenance textleveldb Team2022-07-181-1/+1
| | | | PiperOrigin-RevId: 461725664
* Fix Markdown formatting in README.Victor Costan2022-07-181-1/+1
| | | | PiperOrigin-RevId: 461722304
* Add note on current development stateleveldb Team2022-07-181-1/+11
| | | | PiperOrigin-RevId: 461695246
* The master branch was renamed to main.masterVictor Costan2022-01-171-2/+2
| | | | PiperOrigin-RevId: 422409116
* Update contributing guidelines.Victor Costan2022-01-111-0/+6
| | | | | | | * Align CONTRIBUTING.md with the google/new-project template. * Explain the support story for the CMake config. PiperOrigin-RevId: 421120645
* Switch CI to GitHub Actions.Victor Costan2021-09-021-2/+1
| | | | PiperOrigin-RevId: 394542401
* Fix insecure linksDimitris Apostolou2020-12-191-1/+1
|
* Switch testing harness to googletest.Victor Costan2019-11-211-0/+6
| | | | PiperOrigin-RevId: 281815695
* Add "leveldb" subdirectory to public include paths.Chris Mumford2019-06-131-10/+10
| | | | | | | The documentation (README.md and index.md) referred to the public headers using an incorrect path - fixing. PiperOrigin-RevId: 252922925
* Ending sentences with periods in README.md.Chris Mumford2019-06-131-4/+4
| | | | | | | | | This change was submitted in https://github.com/google/leveldb/pull/575 by @prajwalchalla. This fixes issue #523. PiperOrigin-RevId: 252912613
* Format all files IAW the Google C++ Style Guide.Chris Mumford2019-05-021-0/+8
| | | | | | Use clang-format to correct formatting to be in agreement with the [Google C++ Style Guide](https://google.github.io/styleguide/cppguide.html). Doing this simplifies the process of accepting changes. Also fixed a few warnings flagged by clang-tidy. PiperOrigin-RevId: 246350737
* Changed Windows specific highlighting from bash to cmd.Chris Mumford2019-04-131-3/+3
| | | | | | This makes the syntax highlighting a little nicer on GitHub. PiperOrigin-RevId: 243426806
* Fix mkdir (windows)Pavel Pimenov2019-03-311-1/+1
|
* Add AppVeyor (Windows CI) badge to README.costan2019-03-071-0/+1
| | | | | | ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=237295321
* Added native support for Windows.cmumford2019-03-011-4/+29
| | | | | | | | | | | | | | | | | | | | This change adds a native Windows port (port_windows.h) and a Windows Env (WindowsEnv). Note1: "small" is defined when including <Windows.h> so some parameters were renamed to avoid conflict. Note2: leveldb::Env defines the method: "DeleteFile" which is also a constant defined when including <Windows.h>. The solution was to ensure this macro is defined in env.h which forces the function, when compiled, to be either DeleteFileA or DeleteFileW when building for MBCS or UNICODE respectively. This resolves #519 on GitHub. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=236364778
* Document the building process.costan2018-04-111-1/+18
| | | | | | ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=192490601
* Fixed path to doc file: index.md.cmumford2017-03-011-1/+1
| | | | | | | | | Prior index.html was using rawgit.com which doesn't process Markdown and therefore only serves the markdown source. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=148902180
* Convert documentation to markdown.cmumford2017-03-011-12/+13
| | | | | | | | | Markdown is more readable in a text editor and when hosted on GitHub is more readable than HTML. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=148830423
* add travis build badgeLars-Magnus Skog2016-01-151-0/+2
|
* Merge pull request #317 from falvojr/patch-1Chris Mumford2016-01-121-1/+1
|\ | | | | Update README.md
| * Update README.mdVenilton FalvoJr2015-11-231-1/+1
| |
* | Added a contributors section to README.mdcmumford2016-01-041-0/+31
| | | | | | | | | | | | | | | | | | In preparation for accepting GitHub pull requests this new README section outlines the general criteria that the leveldb project owners will use when accepting external (and internal) project contributions. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=111349899
* | documentation. improved linkPaul Irish2015-02-171-1/+3
| |
* | readme: improved documentation linkPaul Irish2015-01-101-1/+1
|/ | | | This replaces htmlpreview with [rawgit](http://rawgit.com/). rawgit is faster and doesnt use JS to render the page, making it SEO friendly.
* Release 1.18v1.18Chris Mumford2014-09-161-0/+138
Changes are: * Update version number to 1.18 * Replace the basic fprintf call with a call to fwrite in order to work around the apparent compiler optimization/rewrite failure that we are seeing with the new toolchain/iOS SDKs provided with Xcode6 and iOS8. * Fix ALL the header guards. * Createed a README.md with the LevelDB project description. * A new CONTRIBUTING file. * Don't implicitly convert uint64_t to size_t or int. Either preserve it as uint64_t, or explicitly cast. This fixes MSVC warnings about possible value truncation when compiling this code in Chromium. * Added a DumpFile() library function that encapsulates the guts of the "leveldbutil dump" command. This will allow clients to dump data to their log files instead of stdout. It will also allow clients to supply their own environment. * leveldb: Remove unused function 'ConsumeChar'. * leveldbutil: Remove unused member variables from WriteBatchItemPrinter. * OpenBSD, NetBSD and DragonflyBSD have _LITTLE_ENDIAN, so define PLATFORM_IS_LITTLE_ENDIAN like on FreeBSD. This fixes: * issue #143 * issue #198 * issue #249 * Switch from <cstdatomic> to <atomic>. The former never made it into the standard and doesn't exist in modern gcc versions at all. The later contains everything that leveldb was using from the former. This problem was noticed when porting to Portable Native Client where no memory barrier is defined. The fact that <cstdatomic> is missing normally goes unnoticed since memory barriers are defined for most architectures. * Make Hash() treat its input as unsigned. Before this change LevelDB files from platforms with different signedness of char were not compatible. This change fixes: issue #243 * Verify checksums of index/meta/filter blocks when paranoid_checks set. * Invoke all tools for iOS with xcrun. (This was causing problems with the new XCode 5.1.1 image on pulse.) * include <sys/stat.h> only once, and fix the following linter warning: "Found C system header after C++ system header" * When encountering a corrupted table file, return Status::Corruption instead of Status::InvalidArgument. * Support cygwin as build platform, patch is from https://code.google.com/p/leveldb/issues/detail?id=188 * Fix typo, merge patch from https://code.google.com/p/leveldb/issues/detail?id=159 * Fix typos and comments, and address the following two issues: * issue #166 * issue #241 * Add missing db synchronize after "fillseq" in the benchmark. * Removed unused variable in SeekRandom: value (issue #201)