foundationdb/bindings/go
Vaidas Gasiunas 0160570c2a
Failing client initialization on errors in external clients; Update package version to 7.3.0 (#8719)
* Network setup to fail on the initialization failures of external clients

* MVC: A more intuitive error when failing to load an API function

* Testing initializing FDB client with different configuration options

* Enable strict external client configuration check only for new API versions

* Upgrade FDB package version to 7.3.0; Update upgrade tests
2022-11-10 13:01:41 +01:00
..
bench bindings/go: use binary.LittleEndian.PutUint64 instead of binary.Write 2019-05-06 15:48:28 -05:00
godoc-resources Initial repository commit 2017-05-25 13:48:44 -07:00
src Failing client initialization on errors in external clients; Update package version to 7.3.0 (#8719) 2022-11-10 13:01:41 +01:00
CMakeLists.txt Allow access to transaction options through a go `ReadTransaction` interface (#6318) 2022-02-09 14:41:21 -08:00
README.md update version to 7.2.0 2022-04-11 23:23:27 -05:00
fdb-go-install.sh bindings: update go 2020-04-30 18:11:23 +00:00
go.mod Address more review comments 2020-09-11 16:44:09 -07:00

README.md

fdb-go

Go language bindings for FoundationDB, a distributed key-value store with ACID transactions.

This package requires:

Use of this package requires the selection of a FoundationDB API version at runtime. This package currently supports FoundationDB API versions 200-720.

To install this package, you can run the "fdb-go-install.sh" script (for versions 5.0.x and greater):

./fdb-go-install.sh install --fdbver <x.y.z>

The "install" command of this script does not depend on the presence of the repo in general and will download the repository into your local go path. Running "localinstall" instead of "install" will use the local copy here (with a symlink) instead of downloading from the remote repository.

You can also build this package, in the top level of this repository run:

make fdb_go

This will create binary packages for the appropriate platform within the "build" subdirectory of this folder.

Documentation

Modules

If you used the bindings with modules before the addition of the go.mod file in the foundation repo, it may be necessary to update the import path in your go.mod.

By default, a module enabled go get will add something like this to your go.mod:

github.com/apple/foundationdb vx.x.x-xxxxxxxxxxxxxx-xxxxxxxxxxxx

You will need to delete that line, then run go get github.com/apple/foundationdb/bindings/go@version. You should now have a line like this in your go.mod:

github.com/apple/foundationdb/bindings/go vx.x.x-xxxxxxxxxxxxxx-xxxxxxxxxxxx

Note: @version is only necessary if you previously locked to a specific version or commit, in which case you'd replace version with a commit hash or tag.