Go to file
Alec Grieser 55e0b2f399
change file name within comment to be, like, the correct name
2018-04-19 10:19:50 -07:00
FDBLibTLS change file name within comment to be, like, the correct name 2018-04-19 10:19:50 -07:00
bindings fix broken links within javadocs 2018-04-19 09:44:40 -07:00
build Add an -fPIC build of libressl to the build image. 2018-04-12 14:13:02 -07:00
design tuple and versionstamp documentation updates 2017-10-24 17:53:16 -07:00
documentation updated downloads documentation 2018-04-18 19:54: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 fix: transactions created in fdbcli did not wait on the result of committing 2018-04-11 11:24:24 -07:00
fdbclient fix broken links within javadocs 2018-04-19 09:44:40 -07:00
fdbmonitor remove trailing whitespace from our copyright headers ; fixed formatting of python setup.py 2018-02-21 10:25:11 -08:00
fdbrpc Fixed rare infinite loop in blob list and delete operations. 2018-04-12 17:22:34 -07:00
fdbserver fix: extraDB==0 must leave g_simulator.extraDB as null, so that non-DR tests do not attempt to use a DR database 2018-04-18 19:34:35 -07:00
fdbservice Remove references to unused project 2018-04-12 10:56:06 -07:00
flow surpassed spammy trace events 2018-04-10 15:52:32 -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 updated versions.target for 5.1.8 2018-04-18 20:40:36 -07:00
recipes remove trailing whitespace from our copyright headers ; fixed formatting of python setup.py 2018-02-21 10:25:11 -08:00
tests Add missing available_bytes fields to test status schemas 2018-03-09 14:17:20 -08: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 updated versions.target for 5.1.8 2018-04-18 20:40:36 -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.