Go to file
A.J. Beamon bd90cdbc59 Updates for release 5.2.3. This excludes required changes to administration.rst pending some clarification about how certain upgrades work. 2018-06-06 14:13:20 -07:00
FDBLibTLS Only log TLS verify failures if all verification fails; log failures at SevInfo 2018-05-21 10:58:59 -07:00
bindings Merge remote-tracking branch 'upstream/release-5.1' into merge-release-5.1 2018-05-30 11:49:29 -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 Updates for release 5.2.3. This excludes required changes to administration.rst pending some clarification about how certain upgrades work. 2018-06-06 14:13:20 -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 Plumb through TLS key password to CLI and from environment 2018-05-21 10:56:10 -07:00
fdbclient fix: continue setting beginVersion so that versions between 5.2.0 and 5.2.2 do not crash when decoding tasks created by 5.2.3 2018-06-06 13:34:22 -07:00
fdbmonitor fix fdbmonitor help message output ; fix spelling error Ratekeeper.actor.cpp 2018-05-07 16:19:50 -07:00
fdbrpc Merge release-5.1 into release-5.2 2018-05-30 09:09:55 -07:00
fdbserver Merge release-5.1 into release-5.2 2018-05-30 09:09:55 -07:00
fdbservice Fix typo: orginal > original 2018-04-20 09:27:19 -07:00
flow Merge release-5.1 into release-5.2 2018-05-30 09:09:55 -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 Updates for release 5.2.3. This excludes required changes to administration.rst pending some clarification about how certain upgrades work. 2018-06-06 14:13:20 -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 Bump versions.target 2018-05-31 11:23:09 -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.