You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Antoine GIRARD c4d8d53a6d Backport: Use vendored go-swagger (#8087) (#8165) 4 lat temu
..
.gitignore Use Go1.11 module (#5743) 5 lat temu
.travis.yml Use Go1.11 module (#5743) 5 lat temu
LICENSE add other session providers (#5963) 5 lat temu
README.markdown Use Go1.11 module (#5743) 5 lat temu
audit.go add other session providers (#5963) 5 lat temu
client.go Backport: Use vendored go-swagger (#8087) (#8165) 4 lat temu
conn_pool.go Backport: Use vendored go-swagger (#8087) (#8165) 4 lat temu
ddocs.go add other session providers (#5963) 5 lat temu
observe.go add other session providers (#5963) 5 lat temu
pools.go Backport: Use vendored go-swagger (#8087) (#8165) 4 lat temu
port_map.go Backport: Use vendored go-swagger (#8087) (#8165) 4 lat temu
streaming.go Backport: Use vendored go-swagger (#8087) (#8165) 4 lat temu
tap.go add other session providers (#5963) 5 lat temu
upr.go add other session providers (#5963) 5 lat temu
users.go add other session providers (#5963) 5 lat temu
util.go add other session providers (#5963) 5 lat temu
vbmap.go add other session providers (#5963) 5 lat temu
views.go add other session providers (#5963) 5 lat temu

README.markdown

A smart client for couchbase in go

This is a unoffical version of a Couchbase Golang client. If you are looking for the Offical Couchbase Golang client please see

[CB-go])[https://github.com/couchbaselabs/gocb].

This is an evolving package, but does provide a useful interface to a couchbase server including all of the pool/bucket discovery features, compatible key distribution with other clients, and vbucket motion awareness so application can continue to operate during rebalances.

It also supports view querying with source node randomization so you don’t bang on all one node to do all the work.

Install

go get github.com/couchbase/go-couchbase

Example

c, err := couchbase.Connect("http://dev-couchbase.example.com:8091/")
if err != nil {
    log.Fatalf("Error connecting:  %v", err)
}

pool, err := c.GetPool("default")
if err != nil {
    log.Fatalf("Error getting pool:  %v", err)
}

bucket, err := pool.GetBucket("default")
if err != nil {
    log.Fatalf("Error getting bucket:  %v", err)
}

bucket.Set("someKey", 0, []string{"an", "example", "list"})