LevelDB 1.19 #8613

pull sipa wants to merge 2 commits into bitcoin:master from sipa:leveldb119 changing 52 files +1942 −372
  1. sipa commented at 2:01 PM on August 27, 2016: member

    This upgrades the src/leveldb subtree to our version with upstream 1.19 merged in.

    I've marked it here as [preview] because it depends on https://github.com/bitcoin-core/leveldb/pull/14 being merged.

  2. laanwj added the label Upstream on Aug 28, 2016
  3. laanwj commented at 2:06 PM on August 28, 2016: member

    Concept ACK

  4. paveljanik commented at 8:14 AM on August 29, 2016: contributor

    Configures OK, compiles OK, one warning removed:

    leveldb/util/bloom.cc:50:26: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
        for (size_t i = 0; i < n; i++) {
                           ~ ^ ~
    1 warning generated.
    

    ACK

  5. MarcoFalke added this to the milestone 0.14.0 on Oct 29, 2016
  6. Squashed 'src/leveldb/' changes from 20ca81f..a31c8aa
    a31c8aa Add NewAppendableFile for win32 environment
    1913d71 Merge upstream LevelDB 1.19
    3080a45 Increase leveldb version to 1.19.
    fa6dc01 A zippy change broke test assumptions about the size of compressed output. Fix the tests by allowing more slop in zippy's behavior. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=123432472
    06a191b fix problems in LevelDB's caching code
    a7bff69 Fix LevelDB build when asserts are enabled in release builds. (#367)
    ea992b4 Change std::uint64_t to uint64_t (#354)
    e84b5bd This CL fixes a bug encountered when reading records from leveldb files that have been split, as in a [] input task split.
    3211343 Deleted redundant null ptr check prior to delete.
    7306ef8 Merge pull request #348 from randomascii/master
    6b18316 Fix signed/unsigned mismatch on VC++ builds
    adbe3eb Putting build artifacts in subdirectory.
    2d0320a Merge pull request #329 from ralphtheninja/travis-badge
    dd1c3c3 add travis build badge
    43fcf23 Merge pull request #328 from cmumford/master
    9fcae61 Added a Travis CI build file.
    dac40d2 Merge pull request #284 from ideawu/master
    8ec241a Merge pull request #317 from falvojr/patch-1
    5d36bed Merge pull request #272 from vapier/master
    4753c9b Added a contributors section to README.md
    e2446d0 Merge pull request #275 from paulirish/patch-1
    706b7f8 Resolve race when getting approximate-memory-usage property
    3c9ff3c Only compiling TrimSpace on linux.
    f8d205c Including atomic_pointer.h in port_posix
    889de31 Let LevelDB use xcrun to determine Xcode.app path instead of using a hardcoded path.
    528c2bc Add "approximate-memory-usage" property to leveldb::DB::GetProperty
    359b6bc Add leveldb::Cache::Prune
    50e77a8 Fix size_t/int comparison/conversion issues in leveldb.
    5208e79 Added leveldb::Status::IsInvalidArgument() method.
    ce45404 Suppress error reporting after seeking but before a valid First or Full record is encountered.
    b9afa1f include <assert> -> <cassert>
    edf2939 Update README.md
    65190ac Will not reuse manifest if reuse_logs options is false.
    ac1d69d LevelDB now attempts to reuse the preceding MANIFEST and log file when re-opened.
    76bba13 fix indent
    8fcceb2 log compaction output file's level along with number
    0e0f074 documentation. improved link
    c85addc readme: improved documentation link
    ceff6f1 Fix Android/MIPS build.
    77948e7 Add benchmark that measures cost of repeatedly opening the database.
    34ad72e Move header guard below copyright banner.
    a75d435 Clean up layering of storage/leveldb/...
    b234f65 Added a new fault injection test.
    c4c38f9 Add arm64 support to leveldb.
    cea9b10 Fixed incorrect comment wording for Iterator::Seek.
    c00c569 Deleted old README file.
    
    git-subtree-dir: src/leveldb
    git-subtree-split: a31c8aa408d5594830f7cb20ead1ef1dff51b79e
    634ad51703
  7. Merge in LevelDB 1.19 changes 605d701471
  8. sipa force-pushed on Dec 2, 2016
  9. sipa renamed this:
    [preview] LevelDB 1.19
    LevelDB 1.19
    on Dec 2, 2016
  10. sipa commented at 12:17 AM on December 2, 2016: member

    Updated to include @laanwj's NewAppendableFile change (see bitcoin-core/leveldb#14). This should be tested on various platforms.

  11. laanwj commented at 6:55 AM on December 2, 2016: member

    I'm testing this on Windows x86_64. Also going to test on ARM/Linux.

  12. sipa commented at 2:26 AM on December 3, 2016: member

    @laanwj My understanding is that the NewAppendableFile won't actually be used unless we enable the new options.reuse_logs option.

  13. laanwj commented at 6:31 AM on December 3, 2016: member

    Ehm yes that seems the case. It is used in only two places and both are guarded by reuse_logs. I didn't notice the latter point.

      // EXPERIMENTAL: If true, append to existing MANIFEST and log files
      // when a database is opened.  This can significantly speed up open.
      //
      // Default: currently false, but may become true later.
      bool reuse_logs;
    

    Reading the description, speeding up "open" isn't really an important concern for us at the moment. Well at least we can switch the option on now if we wanted...

  14. sipa commented at 8:36 AM on December 5, 2016: member

    @laanwj When you run with a huge dbcache, sync a lot at once, and shutdown, the next startup takes a very long time. I believe that reuse_logs may improve upon that.

  15. laanwj commented at 9:58 AM on December 5, 2016: member

    Going to merge this - gives the new version of leveldb some time to be tested in master before 0.14 is released.

    I believe that reuse_logs may improve upon that.

    The option is still experimental in leveldb so enabling it by default is probably not a good idea.

    But I guess we could first add it too as an experimental feature enabled by a command-line argument.

  16. laanwj merged this on Dec 5, 2016
  17. laanwj closed this on Dec 5, 2016

  18. laanwj referenced this in commit 613bda418f on Dec 5, 2016
  19. gandrewstone referenced this in commit 54bd06ba84 on May 2, 2017
  20. protonn referenced this in commit 7ad913b4b1 on Nov 1, 2017
  21. codablock referenced this in commit e70260bb56 on Jan 16, 2018
  22. codablock referenced this in commit 978ed2d571 on Jan 16, 2018
  23. codablock referenced this in commit 2feda90d5d on Jan 17, 2018
  24. andvgal referenced this in commit f1a7f5afc3 on Jan 6, 2019
  25. CryptoCentric referenced this in commit 33253b5f08 on Feb 25, 2019
  26. zkbot referenced this in commit 59d6a92e7d on Sep 22, 2020
  27. zkbot referenced this in commit 514d868179 on Sep 25, 2020
  28. DrahtBot locked this on Sep 8, 2021
Labels

Milestone
0.14.0


github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-17 00:15 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me