You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@thrift.apache.org by Dvir Volk <dv...@gmail.com> on 2013/07/11 19:52:05 UTC

The state of Go support in thrift

Hi all,

I was wondering about the state of the Go library in Thrift.
I tried it out today and this is the state of affairs as I understand it:

1. thrift 0.9 supports an old version of go and is not compliant with Go
1.x, both in the library and compiler.

2. thrift master (1.0) has ported both the compiler and the libraries to Go
1.x, but the library is lacking - the non blocking server has been removed,
only simple server is available, there are missing tests, etc.

Is anyone working on the Go library currently? Are there any plans to
replace TNonBlockingServer with something else? (indeed a non blocking
server misses the point of the Go model).


Thanks,

Dvir

Re: The state of Go support in thrift

Posted by Dvir Volk <dv...@gmail.com>.
Thanks Jens.

I'm not sure this mailing list is the place - but what do you think of a
server that takes advantage of Go's concurrency without complicating things
with TFramedTransport and the TNonBlocking pattern?

Just something called, say TConcurrentServer or TGoroutineServer - more or
less like a go version of TThreadedServer: It spawns a goroutine per
connection, which is the recommended pattern of handling connection
concurrency in Go anyway.

It won't take much effort to extend TSimpleServer to support this - in fact
I did a quick & dirty version of it in a couple of minutes today, and it
worked fine.

I can try and create such a server, that would be the start of something
people could easily use.



On Thu, Jul 11, 2013 at 9:56 PM, Jens Geyer <je...@hotmail.com> wrote:

> Hi Dvir,
>
> your summary is fairly accurate.
>
> I did not actively monitor github whether Travis (he made the 1.x upgrade
> patch) is still working at it over there. At least there were no more
> patches in the last weeks. Go support in Thrift master surely made a great
> step forward, but of course we still would happily appreciate any patches
> provided to push the Go 1.x support forward to a more mature state.
>
> Best regards,
> JensG
>
>
>
> -----Ursprüngliche Nachricht----- From: Dvir Volk
> Sent: Thursday, July 11, 2013 7:52 PM
> To: user@thrift.apache.org
> Subject: The state of Go support in thrift
>
>
> Hi all,
>
> I was wondering about the state of the Go library in Thrift.
> I tried it out today and this is the state of affairs as I understand it:
>
> 1. thrift 0.9 supports an old version of go and is not compliant with Go
> 1.x, both in the library and compiler.
>
> 2. thrift master (1.0) has ported both the compiler and the libraries to Go
> 1.x, but the library is lacking - the non blocking server has been removed,
> only simple server is available, there are missing tests, etc.
>
> Is anyone working on the Go library currently? Are there any plans to
> replace TNonBlockingServer with something else? (indeed a non blocking
> server misses the point of the Go model).
>
>
> Thanks,
>
> Dvir
>



-- 
Dvir Volk
Chief Architect, Everything.me
http://everything.me

Re: The state of Go support in thrift

Posted by Jens Geyer <je...@hotmail.com>.
Hi Dvir,

your summary is fairly accurate.

I did not actively monitor github whether Travis (he made the 1.x upgrade 
patch) is still working at it over there. At least there were no more 
patches in the last weeks. Go support in Thrift master surely made a great 
step forward, but of course we still would happily appreciate any patches 
provided to push the Go 1.x support forward to a more mature state.

Best regards,
JensG



-----Ursprüngliche Nachricht----- 
From: Dvir Volk
Sent: Thursday, July 11, 2013 7:52 PM
To: user@thrift.apache.org
Subject: The state of Go support in thrift

Hi all,

I was wondering about the state of the Go library in Thrift.
I tried it out today and this is the state of affairs as I understand it:

1. thrift 0.9 supports an old version of go and is not compliant with Go
1.x, both in the library and compiler.

2. thrift master (1.0) has ported both the compiler and the libraries to Go
1.x, but the library is lacking - the non blocking server has been removed,
only simple server is available, there are missing tests, etc.

Is anyone working on the Go library currently? Are there any plans to
replace TNonBlockingServer with something else? (indeed a non blocking
server misses the point of the Go model).


Thanks,

Dvir