Find a file
jsteemann 90f744941d adds missing PopSavePoint method to Transaction (#4256)
Summary:
Transaction has had methods to deal with SavePoints already, but
was missing the PopSavePoint method provided by WriteBatch and
WriteBatchWithIndex.
This PR adds PopSavePoint to Transaction as well. Having the method
on Transaction-level too is useful for applications that repeatedly
execute a sequence of operations that normally succeed, but infrequently
need to get rolled back. Using SavePoints here is sensible, but as
operations normally succeed the application may pile up a lot of
useless SavePoints inside a Transaction, leading to slightly increased
memory usage for managing the unneeded SavePoints.
Pull Request resolved: https://github.com/facebook/rocksdb/pull/4256

Differential Revision: D9326932

Pulled By: yiwu-arbug

fbshipit-source-id: 53a0af18a6c7e87feff8a56f1f3eab9df7f371d6
2018-08-17 11:57:30 -07:00
buckifier
build_tools
cache
cmake
coverage
db VerifyChecksum() API should preserve options 2018-08-16 16:42:29 -07:00
docs
env
examples
hdfs
include/rocksdb adds missing PopSavePoint method to Transaction (#4256) 2018-08-17 11:57:30 -07:00
java Add CompactRangeOptions for Java (#4220) 2018-08-17 10:57:25 -07:00
memtable
monitoring
options Improve point-lookup performance using a data block hash index (#4174) 2018-08-15 14:30:03 -07:00
port
table #3865 followup for fix performance degression introduced by switching order of operands (#4284) 2018-08-17 10:57:25 -07:00
third-party
tools Add db_bench options of data block hash index (#4281) 2018-08-16 18:42:46 -07:00
util Improve point-lookup performance using a data block hash index (#4174) 2018-08-15 14:30:03 -07:00
utilities adds missing PopSavePoint method to Transaction (#4256) 2018-08-17 11:57:30 -07:00
.clang-format
.gitignore
.lgtm.yml
.travis.yml
appveyor.yml
AUTHORS
CMakeLists.txt Improve point-lookup performance using a data block hash index (#4174) 2018-08-15 14:30:03 -07:00
CODE_OF_CONDUCT.md
CONTRIBUTING.md
COPYING
DEFAULT_OPTIONS_HISTORY.md
DUMP_FORMAT.md
HISTORY.md GetAllKeyVersions() to take an extra argument of max_num_ikeys. (#4271) 2018-08-16 15:57:08 -07:00
INSTALL.md
issue_template.md
LANGUAGE-BINDINGS.md
LICENSE.Apache
LICENSE.leveldb
Makefile
README.md
ROCKSDB_LITE.md
src.mk Add CompactRangeOptions for Java (#4220) 2018-08-17 10:57:25 -07:00
TARGETS Improve point-lookup performance using a data block hash index (#4174) 2018-08-15 14:30:03 -07:00
thirdparty.inc
USERS.md
Vagrantfile
WINDOWS_PORT.md

RocksDB: A Persistent Key-Value Store for Flash and RAM Storage

Linux/Mac Build Status Windows Build status PPC64le Build Status

RocksDB is developed and maintained by Facebook Database Engineering Team. It is built on earlier work on LevelDB by Sanjay Ghemawat (sanjay@google.com) and Jeff Dean (jeff@google.com)

This code is a library that forms the core building block for a fast key value server, especially suited for storing data on flash drives. It has a Log-Structured-Merge-Database (LSM) design with flexible tradeoffs between Write-Amplification-Factor (WAF), Read-Amplification-Factor (RAF) and Space-Amplification-Factor (SAF). It has multi-threaded compactions, making it specially suitable for storing multiple terabytes of data in a single database.

Start with example usage here: https://github.com/facebook/rocksdb/tree/master/examples

See the github wiki for more explanation.

The public interface is in include/. Callers should not include or rely on the details of any other header files in this package. Those internal APIs may be changed without warning.

Design discussions are conducted in https://www.facebook.com/groups/rocksdb.dev/

License

RocksDB is dual-licensed under both the GPLv2 (found in the COPYING file in the root directory) and Apache 2.0 License (found in the LICENSE.Apache file in the root directory). You may select, at your option, one of the above-listed licenses.