Go to file
A.J. Beamon 48bf339843 Add indirection in the directory state tree so that merged nodes would continue sharing state through future merges. 2018-05-23 14:59:18 -07:00
FDBLibTLS Merge pull request #343 from bnamasivayam/tls-plugin 2018-05-09 16:35:53 -07:00
bindings Add indirection in the directory state tree so that merged nodes would continue sharing state through future merges. 2018-05-23 14:59:18 -07:00
build Changed the name of the TLS artifact to fdb-libressl-plugin.so 2018-05-07 16:47:46 -07:00
design tuple and versionstamp documentation updates 2017-10-24 17:53:16 -07:00
documentation add fix to #387 to release notes 2018-05-15 17:14:10 -07:00
fdbbackup remove trailing whitespace from our copyright headers ; fixed formatting of python setup.py 2018-02-21 10:25:11 -08:00
fdbcli Add password support for tls. 2018-05-08 20:46:31 -07:00
fdbclient pass in transformed keys to input validation with versionstamps 2018-05-15 17:37:40 -07:00
fdbmonitor fix fdbmonitor help message output ; fix spelling error Ratekeeper.actor.cpp 2018-05-07 16:19:50 -07:00
fdbrpc fix: white space issue in getKnobDescription 2018-05-10 14:27:10 -07:00
fdbserver remove one unnecessary line ; fix else formatting 2018-05-15 17:20:44 -07:00
fdbservice Fix typo: orginal > original 2018-04-20 09:27:19 -07:00
flow Updated Protocol Version 2018-05-10 17:03:46 -07:00
layers remove trailing whitespace from our copyright headers ; fixed formatting of python setup.py 2018-02-21 10:25:11 -08:00
packaging Bump MSI GUID for 5.2.1 2018-05-16 16:59:08 -07:00
recipes bump API version to 520 2018-03-02 10:30:41 -08:00
tests Add read bytes and read keys info to status. Collect this information directly from StorageMetrics rather than through ratekeeper. 2018-05-04 12:01:40 -07:00
.gitignore Merge pull request #125 from brownleej/go-doc-build-removal 2018-04-13 08:55:35 -07:00
ACKNOWLEDGEMENTS Initial repository commit 2017-05-25 13:48:44 -07:00
LICENSE Initial repository commit 2017-05-25 13:48:44 -07:00
Makefile Merge pull request #151 from alexmiller-apple/tlsplugin51 2018-04-13 16:51:07 -07:00
README.md Updated Linux build instructions 2018-04-18 08:30:41 -07:00
foundationdb.sln removed references to nodejs bindings 2018-04-06 17:17:45 -07:00
versions.target update versions.target to 5.2.1 2018-05-15 17:13:26 -07:00

README.md

FoundationDB

FoundationDB is a distributed database designed to handle large volumes of structured data across clusters of commodity servers. It organizes data as an ordered key-value store and employs ACID transactions for all operations. It is especially well-suited for read/write workloads but also has excellent performance for write-intensive workloads. Users interact with the database using API language binding.

Building Locally

macOS

  1. Check out this repo on your Mac.
  2. Install the Xcode command-line tools.
  3. Download version 1.52 of Boost.
  4. Set the BOOSTDIR environment variable to the location containing this boost installation.
  5. Install Mono.
  6. Install a JDK. FoundationDB currently builds with Java 8.
  7. Navigate to the directory where you checked out the foundationdb repo.
  8. Run make.

Linux

  1. Install [Docker] (https://www.docker.com/).
  2. Build Linux docker image using the file Dockerfile located in the build source directory.
  3. Check out the foundationdb repo.
  4. Run the docker image interactively [Docker Run] (https://docs.docker.com/engine/reference/run/#general-form) with the directory containing the foundationdb repo mounted [Docker Mounts] (https://docs.docker.com/storage/volumes/). docker run -it -v '/local/dir/path/foundationdb:/docker/dir/path/foundationdb' /bin/bash
  5. Navigate to the mounted directory containing the foundationdb repo. cd /docker/dir/path/foundationdb
  6. Run make.

This will build the fdbserver binary and the python bindings. If you want to build our other bindings, you will need to install a runtime for the language whose binding you want to build. Each binding has an .mk file which provides specific targets for that binding.