Use Orbita from Go.
Install the current pre-release client:
go get github.com/orbita-rocks/orbita-go@v0.1.0-dev.2
package main
import (
"context"
"log"
orbita "github.com/orbita-rocks/orbita-go"
)
func main() {
ctx := context.Background()
client, err := orbita.Dial(ctx, "http://127.0.0.1:7100")
if err != nil {
log.Fatal(err)
}
defer client.Close()
keyspace := client.Keyspace("default")
result, err := keyspace.Set(ctx, "catalog/current", []byte("manifest-42"))
if err != nil {
log.Fatal(err)
}
log.Printf("version: %d", result.Version)
}
Mutation failures can be ambiguous: a lost reply may mean the write committed. The client does not silently retry mutations. Reconcile with a linearizable read before deciding whether to retry.
See orbita-rocks/orbita-go for the pinned wire-contract version and full API.