1. 07 4月, 2018 1 次提交
  2. 02 4月, 2018 1 次提交
  3. 22 3月, 2018 1 次提交
    • S
      Shared block cache in RocksJava · d5585bb6
      Sagar Vemuri 提交于
      Summary:
      Changes to support sharing block cache using the Java API.
      
      Previously DB instances could share the block cache only when the same Options instance is passed to all the DB instances. But now, with this change, it is possible to explicitly create a cache and pass it to multiple options instances, to share the block cache.
      
      Implementing this for [Rocksandra](https://github.com/instagram/cassandra/tree/rocks_3.0), but this feature has been requested by many java api users over the years.
      Closes https://github.com/facebook/rocksdb/pull/3623
      
      Differential Revision: D7305794
      
      Pulled By: sagar0
      
      fbshipit-source-id: 03e4e8ed7aeee6f88bada4a8365d4279ede2ad71
      d5585bb6
  4. 20 3月, 2018 1 次提交
    • T
      Enable compilation on OpenBSD · ccb76136
      Tobias Tschinkowitz 提交于
      Summary:
      I modified the Makefile so that we can compile rocksdb on OpenBSD.
      The instructions for building have been added to INSTALL.md.
      The whole compilation process works fine like this on OpenBSD-current
      Closes https://github.com/facebook/rocksdb/pull/3617
      
      Differential Revision: D7323754
      
      Pulled By: siying
      
      fbshipit-source-id: 990037d1cc69138d22f85bd77ef4dc8c1ba9edea
      ccb76136
  5. 17 3月, 2018 1 次提交
    • A
      Improve the output of the RocksJava JUnit runner · bef95be5
      Adam Retter 提交于
      Summary:
      This changes the console output when the RocksJava tests are run. It makes spotting the errors and failures much easier; perviously the output was malformed with results like "ERun" where the "E" represented an error in the preceding test.
      Closes https://github.com/facebook/rocksdb/pull/3621
      
      Differential Revision: D7306172
      
      Pulled By: sagar0
      
      fbshipit-source-id: 3fa6f6e1ca6c6ea7ceef55a23ca81903716132b7
      bef95be5
  6. 09 3月, 2018 3 次提交
  7. 03 3月, 2018 2 次提交
  8. 03 2月, 2018 1 次提交
  9. 30 1月, 2018 1 次提交
    • M
      Suppress lint in old files · b8eb32f8
      Mark Isaacson 提交于
      Summary: Grandfather in super old lint issues to make a clean slate for moving forward that allows us to have stronger enforcement on new issues.
      
      Reviewed By: yiwu-arbug
      
      Differential Revision: D6821806
      
      fbshipit-source-id: 22797d31ec58e9eb0255d3b66fedfcfcb0dc127c
      b8eb32f8
  10. 12 1月, 2018 1 次提交
  11. 10 1月, 2018 1 次提交
  12. 09 1月, 2018 1 次提交
  13. 04 1月, 2018 1 次提交
  14. 16 12月, 2017 1 次提交
  15. 29 11月, 2017 1 次提交
  16. 21 11月, 2017 1 次提交
    • A
      Add a ticker stat for number of keys skipped during iteration · d394a6bb
      anand1976 提交于
      Summary:
      This diff adds a new ticker stat, NUMBER_ITER_SKIP, to count the
      number of internal keys skipped during iteration. Keys can be skipped
      due to deletes, or lower sequence number, or higher sequence number
      than the one requested.
      
      Also, fix the issue when StatisticsData is naturally aligned on cacheline boundary,
      padding becomes a zero size array, which the Windows compiler doesn't
      like. So add a cacheline worth of padding in that case to keep it happy.
      We cannot conditionally add padding as gcc doesn't allow using sizeof
      in preprocessor directives.
      Closes https://github.com/facebook/rocksdb/pull/3177
      
      Differential Revision: D6353897
      
      Pulled By: anand1976
      
      fbshipit-source-id: 441d5a09af9c4e22e7355242dfc0c7b27aa0a6c2
      d394a6bb
  17. 03 11月, 2017 1 次提交
  18. 24 10月, 2017 1 次提交
    • Z
      added missing subcodes and improved error message for missing enum values · 57fcdc26
      zawlazaw 提交于
      Summary:
      Java's `Status.SubCode` was out of sync with `include/rocksdb/status.h:SubCode`.
      
      When running out of disc space this led to an `IllegalArgumentException` because of an invalid status code, rather than just returning the corresponding status code without an exception.
      
      I added the missing status codes.
      
      By this, we keep the behaviour of throwing an `IllegalArgumentException` in case of newly added status codes that are defined in C but not in Java.
      
      We could think of an alternative strategy: add in Java another code "UnknownCode" which acts as a catch-all for all those status codes that are not yet mirrored from C to Java. This approach would never throw an exception but simply return a non-OK status-code.
      
      I think the current approach of throwing an Exception in case of a C/Java inconsistency is fine, but if you have some opinion on the alternative strategy, then feel free to comment here.
      Closes https://github.com/facebook/rocksdb/pull/3050
      
      Differential Revision: D6129682
      
      Pulled By: sagar0
      
      fbshipit-source-id: f2bf44caad650837cffdcb1f93eb793b43580c66
      57fcdc26
  19. 13 10月, 2017 2 次提交
  20. 03 10月, 2017 2 次提交
  21. 27 9月, 2017 1 次提交
  22. 22 9月, 2017 2 次提交
  23. 21 9月, 2017 1 次提交
  24. 19 9月, 2017 1 次提交
    • P
      collecting kValue type tombstone · e4234fbd
      Pengchao Wang 提交于
      Summary:
      In our testing cluster, we found large amount tombstone has been promoted to kValue type from kMerge after reaching the top level of compaction. Since we used to only collecting tombstone in merge operator, those tombstones can never be collected.
      
      This PR addresses the issue by adding a GC step in compaction filter, which is only for kValue type records. Since those record already reached the top of compaction (no earlier data exists) we can safely remove them in compaction filter without worrying old data appears.
      
      This PR also removes an old optimization in cassandra merge operator for single merge operands.  We need to do GC even on a single operand, so the optimation does not make sense anymore.
      Closes https://github.com/facebook/rocksdb/pull/2855
      
      Reviewed By: sagar0
      
      Differential Revision: D5806445
      
      Pulled By: wpc
      
      fbshipit-source-id: 6eb25629d4ce917eb5e8b489f64a6aa78c7d270b
      e4234fbd
  25. 15 9月, 2017 1 次提交
    • B
      JNI support for ReadOptions::iterate_upper_bound · 382277d0
      Ben Clay 提交于
      Summary:
      Plumbed ReadOptions::iterate_upper_bound through JNI.
      
      Made the following design choices:
      * Used Slice instead of AbstractSlice due to the anticipated usecase (key / key prefix). Can change this if anyone disagrees.
      * Used Slice instead of raw byte[] which seemed cleaner but necessitated the package-private handle-based Slice constructor. Followed WriteBatch as an example.
      * We need a copy constructor for ReadOptions, as we create one base ReadOptions for a particular usecase and clone -> change the iterate_upper_bound on each slice operation. Shallow copy seemed cleanest.
      * Hold a reference to the upper bound slice on ReadOptions, in contrast to Snapshot.
      
      Signed a Facebook CLA this morning.
      Closes https://github.com/facebook/rocksdb/pull/2872
      
      Differential Revision: D5824446
      
      Pulled By: sagar0
      
      fbshipit-source-id: 74fc51313a10a81ecd348625e2a50ca5b7766888
      382277d0
  26. 13 9月, 2017 1 次提交
    • Z
      Add iterator's SeekForPrev functionality to the java-api · 044a71e2
      zawlazaw 提交于
      Summary:
      As discussed in #2742 , this pull-requests brings the iterator's [SeekForPrev()](https://github.com/facebook/rocksdb/wiki/SeekForPrev) functionality to the java-api. It affects all locations in the code where previously only Seek() was supported.
      
      All code changes are essentially a copy & paste of the already existing implementations for Seek().
      **Please Note**: the changes to the C++ code were applied without fully understanding its effect, so please take a closer look. However, since Seek() and SeekForPrev() provide exactly the same signature, I do not expect any mistake here.
      
      The java-tests are extended by new tests for the additional functionality.
      
      Compilation (`make rocksdbjavastatic`) and test (`java/make test`) run without errors.
      Closes https://github.com/facebook/rocksdb/pull/2747
      
      Differential Revision: D5721011
      
      Pulled By: sagar0
      
      fbshipit-source-id: c1f951cddc321592c70dd2d32bc04892f3f119f8
      044a71e2
  27. 01 9月, 2017 1 次提交
  28. 23 8月, 2017 1 次提交
  29. 13 8月, 2017 1 次提交
  30. 02 8月, 2017 1 次提交
  31. 29 7月, 2017 1 次提交
  32. 25 7月, 2017 1 次提交
  33. 22 7月, 2017 1 次提交
    • P
      Cassandra compaction filter for purge expired columns and rows · 534c255c
      Pengchao Wang 提交于
      Summary:
      Major changes in this PR:
      * Implement CassandraCompactionFilter to remove expired columns and rows (if all column expired)
      * Move cassandra related code from utilities/merge_operators/cassandra to utilities/cassandra/*
      * Switch to use shared_ptr<> from uniqu_ptr for Column membership management in RowValue. Since columns do have multiple owners in Merge and GC process, use shared_ptr helps make RowValue immutable.
      * Rename cassandra_merge_test to cassandra_functional_test and add two TTL compaction related tests there.
      Closes https://github.com/facebook/rocksdb/pull/2588
      
      Differential Revision: D5430010
      
      Pulled By: wpc
      
      fbshipit-source-id: 9566c21e06de17491d486a68c70f52d501f27687
      534c255c
  34. 19 7月, 2017 1 次提交