travisjeffery / jocko

Kafka implemented in Golang with built-in coordination (No ZK dep, single binary install, Cloud Native)
https://twitter.com/travisjeffery
MIT License
4.93k stars 362 forks source link

some errors on mac #105

Open hashgupta opened 6 years ago

hashgupta commented 6 years ago

Hey,

I loved the idea of this project. I used the quickstart steps on my mac, but it failed with some errors on the build and go get. I tracked the issue down to this issue on the jaeger client -> https://github.com/jaegertracing/jaeger-client-go/issues/184

I think we may need to a "glide install" (not sure what that means) or use a specific commit of thrift before the interface changed. There was some kind of error with cobra I think, but I cant find it now. Also, could you walk me through how to contribute as I am new to the open source thing.

Thanks

candlerb commented 6 years ago

I see similar error trying to build under Ubuntu 16.04 with go 1.10.1, although I also see errors relating to oprot.Flush

root@builder:~/jocko/cmd/jocko# go build
# github.com/uber/jaeger-client-go/thrift-gen/sampling
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/sampling/samplingmanager.go:77:20: not enough arguments in call to oprot.Flush
    have ()
    want (context.Context)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/sampling/samplingmanager.go:101:15: assignment mismatch: 2 variables but 1 values
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/sampling/samplingmanager.go:147:44: cannot use samplingManagerProcessorGetSamplingStrategy literal (type *samplingManagerProcessorGetSamplingStrategy) as type thrift.TProcessorFunction in assignment:
    *samplingManagerProcessorGetSamplingStrategy does not implement thrift.TProcessorFunction (wrong type for Process method)
        have Process(int32, thrift.TProtocol, thrift.TProtocol) (bool, thrift.TException)
        want Process(context.Context, int32, thrift.TProtocol, thrift.TProtocol) (bool, thrift.TException)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/sampling/samplingmanager.go:157:27: not enough arguments in call to processor.Process
    have (int32, thrift.TProtocol, thrift.TProtocol)
    want (context.Context, int32, thrift.TProtocol, thrift.TProtocol)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/sampling/samplingmanager.go:165:13: not enough arguments in call to oprot.Flush
    have ()
    want (context.Context)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/sampling/samplingmanager.go:182:14: not enough arguments in call to oprot.Flush
    have ()
    want (context.Context)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/sampling/samplingmanager.go:195:14: not enough arguments in call to oprot.Flush
    have ()
    want (context.Context)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/sampling/samplingmanager.go:209:23: not enough arguments in call to oprot.Flush
    have ()
    want (context.Context)
# github.com/uber/jaeger-client-go/thrift-gen/jaeger
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/jaeger/agent.go:77:20: not enough arguments in call to oprot.Flush
    have ()
    want (context.Context)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/jaeger/agent.go:101:34: cannot use agentProcessorEmitBatch literal (type *agentProcessorEmitBatch) as type thrift.TProcessorFunction in assignment:
    *agentProcessorEmitBatch does not implement thrift.TProcessorFunction (wrong type for Process method)
        have Process(int32, thrift.TProtocol, thrift.TProtocol) (bool, thrift.TException)
        want Process(context.Context, int32, thrift.TProtocol, thrift.TProtocol) (bool, thrift.TException)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/jaeger/agent.go:111:27: not enough arguments in call to processor.Process
    have (int32, thrift.TProtocol, thrift.TProtocol)
    want (context.Context, int32, thrift.TProtocol, thrift.TProtocol)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/jaeger/agent.go:119:13: not enough arguments in call to oprot.Flush
    have ()
    want (context.Context)
# github.com/uber/jaeger-client-go/thrift-gen/baggage
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/baggage/baggagerestrictionmanager.go:85:20: not enough arguments in call to oprot.Flush
    have ()
    want (context.Context)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/baggage/baggagerestrictionmanager.go:109:15: assignment mismatch: 2 variables but 1 values
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/baggage/baggagerestrictionmanager.go:155:47: cannot use baggageRestrictionManagerProcessorGetBaggageRestrictions literal (type *baggageRestrictionManagerProcessorGetBaggageRestrictions) as type thrift.TProcessorFunction in assignment:
    *baggageRestrictionManagerProcessorGetBaggageRestrictions does not implement thrift.TProcessorFunction (wrong type for Process method)
        have Process(int32, thrift.TProtocol, thrift.TProtocol) (bool, thrift.TException)
        want Process(context.Context, int32, thrift.TProtocol, thrift.TProtocol) (bool, thrift.TException)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/baggage/baggagerestrictionmanager.go:165:27: not enough arguments in call to processor.Process
    have (int32, thrift.TProtocol, thrift.TProtocol)
    want (context.Context, int32, thrift.TProtocol, thrift.TProtocol)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/baggage/baggagerestrictionmanager.go:173:13: not enough arguments in call to oprot.Flush
    have ()
    want (context.Context)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/baggage/baggagerestrictionmanager.go:190:14: not enough arguments in call to oprot.Flush
    have ()
    want (context.Context)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/baggage/baggagerestrictionmanager.go:203:14: not enough arguments in call to oprot.Flush
    have ()
    want (context.Context)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/baggage/baggagerestrictionmanager.go:217:23: not enough arguments in call to oprot.Flush
    have ()
    want (context.Context)
# github.com/uber/jaeger-client-go/thrift-gen/zipkincore
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/zipkincore/zipkincollector.go:77:20: not enough arguments in call to oprot.Flush
    have ()
    want (context.Context)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/zipkincore/zipkincollector.go:101:15: assignment mismatch: 2 variables but 1 values
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/zipkincore/zipkincollector.go:147:42: cannot use zipkinCollectorProcessorSubmitZipkinBatch literal (type *zipkinCollectorProcessorSubmitZipkinBatch) as type thrift.TProcessorFunction in assignment:
    *zipkinCollectorProcessorSubmitZipkinBatch does not implement thrift.TProcessorFunction (wrong type for Process method)
        have Process(int32, thrift.TProtocol, thrift.TProtocol) (bool, thrift.TException)
        want Process(context.Context, int32, thrift.TProtocol, thrift.TProtocol) (bool, thrift.TException)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/zipkincore/zipkincollector.go:157:27: not enough arguments in call to processor.Process
    have (int32, thrift.TProtocol, thrift.TProtocol)
    want (context.Context, int32, thrift.TProtocol, thrift.TProtocol)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/zipkincore/zipkincollector.go:165:13: not enough arguments in call to oprot.Flush
    have ()
    want (context.Context)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/zipkincore/zipkincollector.go:182:14: not enough arguments in call to oprot.Flush
    have ()
    want (context.Context)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/zipkincore/zipkincollector.go:195:14: not enough arguments in call to oprot.Flush
    have ()
    want (context.Context)
/root/go/src/github.com/uber/jaeger-client-go/thrift-gen/zipkincore/zipkincollector.go:209:23: not enough arguments in call to oprot.Flush
    have ()
    want (context.Context)
hashgupta commented 6 years ago

Those errors are the due to the problem in the link, from the Jaeger library. I think it has to do with incompatible thrift versions (maybe)