Coder Social home page Coder Social logo

Comments (15)

basvanbeek avatar basvanbeek commented on June 18, 2024 1

currently Thrift for Go is broken and is being worked on... once this is done I can fix on our end...

from zipkin-go-opentracing.

basvanbeek avatar basvanbeek commented on June 18, 2024

ugh so they just added context to the thrift Go library but to compile a compatible thrift file the latest compiler release does not include the proper switch to enable context for generated Go code. Trying to install bleeding edge compiler in the hope it fixes the issue.

from zipkin-go-opentracing.

basvanbeek avatar basvanbeek commented on June 18, 2024

Super... even using latest thrift Compiler it fails:

https://issues.apache.org/jira/browse/THRIFT-4260

from zipkin-go-opentracing.

basvanbeek avatar basvanbeek commented on June 18, 2024

It compiles but is wrong. *ScribeClient should implement Scribe interface

from zipkin-go-opentracing.

peterbourgon avatar peterbourgon commented on June 18, 2024

Is it worth reaching out to them and asking why the went with the deprecated package?

from zipkin-go-opentracing.

basvanbeek avatar basvanbeek commented on June 18, 2024

They didn't it was my mistake. My editor opened the wrong file. They have x/context for Go versions not supporting the stdlib one.

from zipkin-go-opentracing.

andriylesch avatar andriylesch commented on June 18, 2024

Hello Guys,
I have the same problem when i am trying to run my service i have error

mydirectory/github.com/openzipkin/zipkin-go-opentracing/_thrift/gen-go/scribe
vendor/github.com/openzipkin/zipkin-go-opentracing/_thrift/gen-go/scribe/scribe.go:147: cannot use scribeProcessorLog literal (type *scribeProcessorLog) as type thrift.TProcessorFunction in assignment:
	*scribeProcessorLog 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)
vendor/github.com/openzipkin/zipkin-go-opentracing/_thrift/gen-go/scribe/scribe.go:157: not enough arguments in call to processor.Process
	have (int32, thrift.TProtocol, thrift.TProtocol)
	want (context.Context, int32, thrift.TProtocol, thrift.TProtocol)

when you are planing to fix it?
Thank you in advance for your answer.

from zipkin-go-opentracing.

dcelasun avatar dcelasun commented on June 18, 2024

Hi everyone, a fix was just merged upstream, could you try with the latest compiler from master?

For future reference, using master for either the library or the compiler assumes you are using it for the other one as well. Officially, context support will be included in the upcoming 0.11 release.

from zipkin-go-opentracing.

basvanbeek avatar basvanbeek commented on June 18, 2024

updated with PR #70...

from zipkin-go-opentracing.

jayeshkhairnar avatar jayeshkhairnar commented on June 18, 2024
*metaProcessorHealth 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)
src/github.com/uber/tchannel-go/thrift/gen-go/meta/meta.go:290: cannot use metaProcessorThriftIDL literal (type *metaProcessorThriftIDL) as type thrift.TProcessorFunction in assignment:
        *metaProcessorThriftIDL 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)
src/github.com/uber/tchannel-go/thrift/gen-go/meta/meta.go:291: cannot use metaProcessorVersionInfo literal (type *metaProcessorVersionInfo) as type thrift.TProcessorFunction in assignment:
        *metaProcessorVersionInfo 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)
src/github.com/uber/tchannel-go/thrift/gen-go/meta/meta.go:301: not enough arguments in call to processor.Process
        have (int32, thrift.TProtocol, thrift.TProtocol)
        want (context.Context, int32, thrift.TProtocol, thrift.TProtocol)

Above error I am getting

from zipkin-go-opentracing.

basvanbeek avatar basvanbeek commented on June 18, 2024

@jayeshkhairnar please file your issue with github.com/uber/tchannel-go as the code they're using is not compatible anymore with master on github.com/apache/thrift/lib/go/thrift

In the mean time you can use vendoring to provide tchannel-go with an older version / tagged release of thrift/lib/go/thrift for your application

from zipkin-go-opentracing.

tpiecora avatar tpiecora commented on June 18, 2024

@basvanbeek
Getting this error when trying to build:

	*scribeProcessorLog does not implement thrift.TProcessorFunction (wrong type for Process method)
		have Process(context.Context, int32, thrift.TProtocol, thrift.TProtocol) (bool, thrift.TException)
		want Process(int32, thrift.TProtocol, thrift.TProtocol) (bool, thrift.TException)
vendor/github.com/openzipkin/zipkin-go-opentracing/thrift/gen-go/scribe/scribe.go:341:29: too many arguments in call to processor.Process
	have (context.Context, int32, thrift.TProtocol, thrift.TProtocol)
	want (int32, thrift.TProtocol, thrift.TProtocol)

I believe this is referencing the same issue: uber/tchannel-go#648
Sounds like they have no plans for addressing this.

from zipkin-go-opentracing.

basvanbeek avatar basvanbeek commented on June 18, 2024

@tpiecora you have an older version the thrift go library. You can fix by updating:

go get -u github.com/apache/thrift/lib/go/thrift

uber/tchannel-go is compatible with an older version of the thrift go library. Zipkin-go-opentracing tries to stay current with latest commits on master from its dependencies. If you desire to use older / tagged releases of these libraries you have to resort to vendoring. You can always use a tagged release from this repo.

from zipkin-go-opentracing.

kingeasternsun avatar kingeasternsun commented on June 18, 2024

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)

from zipkin-go-opentracing.

basvanbeek avatar basvanbeek commented on June 18, 2024

can you please update the thrift-go package, looks like you have an older one in your gopath:

go get -u github.com/apache/thrift/lib/go/thrift

from zipkin-go-opentracing.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.