Error Installing Go SDK

OS: macOS Mojave version 10.14.5
Hardware: MacBook Pro 15" Mid-2015
Golang Version: go1.12.5 darwin/amd64

Trying to install Go SDK throws errors:

go clean -i github.com/couchbase/gocb
➜ ~ go get gopkg.in/couchbase/gocb.v1

gopkg.in/couchbase/gocb.v1

go/src/gopkg.in/couchbase/gocb.v1/bucket.go:206:21: b.client.CbasEps undefined (type *gocbcore.Agent has no field or method CbasEps)
go/src/gopkg.in/couchbase/gocb.v1/cluster.go:89:3: unknown field ‘UseZombieLogger’ in struct literal of type gocbcore.AgentConfig
go/src/gopkg.in/couchbase/gocb.v1/cluster_analyticsquery.go:502:37: selectedB.client.ClientId undefined (type *gocbcore.Agent has no field or method ClientId)
go/src/gopkg.in/couchbase/gocb.v1/error.go:109:18: undefined: gocbcore.ErrNonZeroCas
go/src/gopkg.in/couchbase/gocb.v1/logging.go:43:2: undefined: gocbcore.SetLogRedactionLevel
go/src/gopkg.in/couchbase/gocb.v1/logging.go:43:32: undefined: gocbcore.LogRedactLevel
go/src/gopkg.in/couchbase/gocb.v1/logging.go:113:2: undefined: gocbcore.SetLogRedactionLevel
go/src/gopkg.in/couchbase/gocb.v1/logging.go:113:32: undefined: gocbcore.LogRedactLevel

Note that go get github.com/couchbase/gocb works fine on the same box, but that is now called the “developer version”, with the other path called “lastest stable release”. Also, the gocb link doesn’t work for Linux or Windows (I am told by other team members). We would like to standardize around the “latest stable release” library.

Thanks,

Bill

Hi @bhouse1273 I’m trying to work out what’s going wrong here. I’ve just tried running on a fresh centos 7 box to ensure that my environment isn’t influencing anything. It seems to work ok for me:

$ go mod init test
go: creating new go.mod: module test
$ go get gopkg.in/couchbase/gocb.v1
go: finding gopkg.in/couchbase/gocb.v1 v1.6.1
go: downloading gopkg.in/couchbase/gocb.v1 v1.6.1
go: extracting gopkg.in/couchbase/gocb.v1 v1.6.1
go: finding github.com/google/uuid v1.1.1
go: finding github.com/opentracing/opentracing-go v1.1.0
go: finding github.com/opentracing/opentracing-go/log latest
go: finding gopkg.in/couchbase/gocbcore.v7 v7.1.13
go: finding gopkg.in/couchbaselabs/gocbconnstr.v1 v1.0.2
go: finding gopkg.in/couchbaselabs/jsonx.v1 v1.0.0
go: downloading github.com/google/uuid v1.1.1
go: extracting github.com/google/uuid v1.1.1
go: downloading github.com/opentracing/opentracing-go v1.1.0
go: extracting github.com/opentracing/opentracing-go v1.1.0
go: downloading gopkg.in/couchbaselabs/gocbconnstr.v1 v1.0.2
go: extracting gopkg.in/couchbaselabs/gocbconnstr.v1 v1.0.2
go: downloading gopkg.in/couchbaselabs/jsonx.v1 v1.0.0
go: extracting gopkg.in/couchbaselabs/jsonx.v1 v1.0.0
go: downloading gopkg.in/couchbase/gocbcore.v7 v7.1.13
go: extracting gopkg.in/couchbase/gocbcore.v7 v7.1.13
go: finding github.com/golang/snappy v0.0.1
go: finding golang.org/x/net/http2 latest
go: finding golang.org/x/net latest
go: downloading golang.org/x/net v0.0.0-20190522155817-f3200d17e092
go: downloading github.com/golang/snappy v0.0.1
go: extracting github.com/golang/snappy v0.0.1
go: extracting golang.org/x/net v0.0.0-20190522155817-f3200d17e092
go: finding golang.org/x/text v0.3.0
go: finding golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a
go: finding golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2
go: downloading golang.org/x/text v0.3.0
go: extracting golang.org/x/text v0.3.0

It also worked when not in go modules mode. Could you try again after ensuring that everything is clean, the issue looks like it can’t find a load of gocbcore bits. Maybe there’s an old version of gocbcore lurking somewhere?

You’re also correct about github.com/couchbase/gocb being not stable yet. That’s the alpha version of our upcoming 2.0 release.

I was able to go get gopkg.in/couchbase/gocb.v1 after the go mod init test. Then I was able to add that as an import in my .go file. However, when I try to compile, I get

../../../gopkg.in/couchbase/gocb.v1/bucket.go:206:21: b.client.CbasEps undefined (type *gocbcore.Agent has no field or method CbasEps)
../../../gopkg.in/couchbase/gocb.v1/cluster.go:89:3: unknown field 'UseZombieLogger' in struct literal of type gocbcore.AgentConfig
../../../gopkg.in/couchbase/gocb.v1/cluster_analyticsquery.go:502:37: selectedB.client.ClientId undefined (type *gocbcore.Agent has no field or method ClientId)
../../../gopkg.in/couchbase/gocb.v1/error.go:109:18: undefined: gocbcore.ErrNonZeroCas
../../../gopkg.in/couchbase/gocb.v1/logging.go:43:2: undefined: gocbcore.SetLogRedactionLevel
../../../gopkg.in/couchbase/gocb.v1/logging.go:43:32: undefined: gocbcore.LogRedactLevel
../../../gopkg.in/couchbase/gocb.v1/logging.go:113:2: undefined: gocbcore.SetLogRedactionLevel
../../../gopkg.in/couchbase/gocb.v1/logging.go:113:32: undefined: gocbcore.LogRedactLevel

You are probably right about an out-dated gocbcore lurking. I’ll try to manually delete the CB SDK and reinstall.

Worked! Thanks for the help. :slight_smile: