[jira] [Commented] (THRIFT-984) ocaml: add version Info to the library
[ https://issues.apache.org/jira/browse/THRIFT-984?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13613512#comment-13613512 ] Hudson commented on THRIFT-984: --- Integrated in Thrift #634 (See [https://builds.apache.org/job/Thrift/634/]) Thrift-984: Ocaml versioning (Revision 2ff542859813ca95c80b67878db4aa4726a6f296) Result = FAILURE > ocaml: add version Info to the library > -- > > Key: THRIFT-984 > URL: https://issues.apache.org/jira/browse/THRIFT-984 > Project: Thrift > Issue Type: Sub-task > Components: OCaml - Library >Reporter: Roger Meier >Assignee: Chet Murthy > Fix For: 1.0 > > Attachments: _oasis, _oasis > > > add version info to the library and update > http://wiki.apache.org/thrift/HowToVersion -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1806) Python generation always truncates __init__.py files
[ https://issues.apache.org/jira/browse/THRIFT-1806?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13613513#comment-13613513 ] Hudson commented on THRIFT-1806: Integrated in Thrift #634 (See [https://builds.apache.org/job/Thrift/634/]) Thrift-1806: Python generation always truncates __init__.py files (Revision 2d26f18a12d20e2bc5063a34ff347558fa91517f) Result = FAILURE > Python generation always truncates __init__.py files > > > Key: THRIFT-1806 > URL: https://issues.apache.org/jira/browse/THRIFT-1806 > Project: Thrift > Issue Type: Bug > Components: Python - Compiler >Reporter: Nathaniel Cook >Assignee: Nathaniel Cook > Fix For: 1.0 > > Attachments: thrift-1806.patch > > > When generating python code the generator correctly creates __init__.py file > for each directory. If the __init__.py file has contents it is always > overwritten. This usually isn't a problem unless using the -out flag, then > there is a potential to erase non generated code. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Comment Edited] (THRIFT-1530) thrift c_glib code has no support for timeouts
[ https://issues.apache.org/jira/browse/THRIFT-1530?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13613479#comment-13613479 ] SongQi edited comment on THRIFT-1530 at 3/26/13 4:34 AM: - I made a patch: tsocket = THRIFT_SOCKET( g_object_new( THRIFT_TYPE_SOCKET, "hostname","10.210.230.16","port",1464,"conn_timeout",200,"recv_timeout",200,"send_timeout", 200,0 ) ); was (Author: sandysong): tsocket = THRIFT_SOCKET( g_object_new( THRIFT_TYPE_SOCKET, "hostname","10.210.230.16","port",1464,"conn_timeout",200,"recv_timeout",200,"send_timeout", 200,0 ) ); > thrift c_glib code has no support for timeouts > -- > > Key: THRIFT-1530 > URL: https://issues.apache.org/jira/browse/THRIFT-1530 > Project: Thrift > Issue Type: Bug > Components: C glib - Compiler, C glib - Library >Affects Versions: 0.8, 0.9 >Reporter: Mina Naguib > Labels: c, c_glib, glib, out, thrift, time, timeout > Attachments: thrift-c-glib-with-timeout.patch > > > There's no mention of "timeout" anywhere in the c_glib compiler's code, nor > (obviously) in the generated gen-c_glib code -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (THRIFT-1530) thrift c_glib code has no support for timeouts
[ https://issues.apache.org/jira/browse/THRIFT-1530?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] SongQi updated THRIFT-1530: --- Attachment: thrift-c-glib-with-timeout.patch tsocket = THRIFT_SOCKET( g_object_new( THRIFT_TYPE_SOCKET, "hostname","10.210.230.16","port",1464,"conn_timeout",200,"recv_timeout",200,"send_timeout", 200,0 ) ); > thrift c_glib code has no support for timeouts > -- > > Key: THRIFT-1530 > URL: https://issues.apache.org/jira/browse/THRIFT-1530 > Project: Thrift > Issue Type: Bug > Components: C glib - Compiler, C glib - Library >Affects Versions: 0.8, 0.9 >Reporter: Mina Naguib > Labels: c, c_glib, glib, out, thrift, time, timeout > Attachments: thrift-c-glib-with-timeout.patch > > > There's no mention of "timeout" anywhere in the c_glib compiler's code, nor > (obviously) in the generated gen-c_glib code -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Closed] (THRIFT-1806) Python generation always truncates __init__.py files
[ https://issues.apache.org/jira/browse/THRIFT-1806?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1806. Resolution: Fixed Fix Version/s: 1.0 Assignee: Nathaniel Cook Patch was missing std::. Added and committed, thanks for the patch. > Python generation always truncates __init__.py files > > > Key: THRIFT-1806 > URL: https://issues.apache.org/jira/browse/THRIFT-1806 > Project: Thrift > Issue Type: Bug > Components: Python - Compiler >Reporter: Nathaniel Cook >Assignee: Nathaniel Cook > Fix For: 1.0 > > Attachments: thrift-1806.patch > > > When generating python code the generator correctly creates __init__.py file > for each directory. If the __init__.py file has contents it is always > overwritten. This usually isn't a problem unless using the -out flag, then > there is a potential to erase non generated code. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-981) cocoa: add version Info to the library
[ https://issues.apache.org/jira/browse/THRIFT-981?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13613438#comment-13613438 ] Jake Farrell commented on THRIFT-981: - Roger thoughts on using a #define THRIFT_VERSION in a Thrift.h for this? > cocoa: add version Info to the library > -- > > Key: THRIFT-981 > URL: https://issues.apache.org/jira/browse/THRIFT-981 > Project: Thrift > Issue Type: Sub-task > Components: Cocoa - Library >Reporter: Roger Meier > > add version info to the library and update > http://wiki.apache.org/thrift/HowToVersion -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Closed] (THRIFT-274) Towards a working release/versioning process
[ https://issues.apache.org/jira/browse/THRIFT-274?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-274. --- Resolution: Fixed Fix Version/s: 1.0 > Towards a working release/versioning process > > > Key: THRIFT-274 > URL: https://issues.apache.org/jira/browse/THRIFT-274 > Project: Thrift > Issue Type: Bug >Reporter: Luke Lu >Assignee: Jake Farrell > Fix For: 1.0 > > > The current thrift version is virtually useless because it's not getting > updated when backward compatibility is broken (it's always 20080411-exported > on all the snapshots,) I can't just tell people to use the trunk and not > breaking things due things like namespace changes etc. Many projects maintain > a reasonable versioning scheme even when system is in alpha state. > Thrift overall is stable enough to warrant a working versioning scheme. Can > we at least start to discuss a version scheme, e.g., major.minor.patch or > major.minor.micro.patch, where patch number changes are bug fixes and minor > or micro are backward compatible changes and major changes indicate breaking > backward compatibility or just marketing hype. > I propose that we call the current thrift version 1.0.0.0 after all the > namespace changes and stick to a reasonable scheme instead of using suffixes > (like beta/rc etc.) as it's much friendlier to other components that > uses thrift. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Closed] (THRIFT-984) ocaml: add version Info to the library
[ https://issues.apache.org/jira/browse/THRIFT-984?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-984. --- Resolution: Fixed Fix Version/s: 1.0 Assignee: Chet Murthy Thanks Chet, appreciate the help, trying to knock out THRIFT-6. _oasis file committed > ocaml: add version Info to the library > -- > > Key: THRIFT-984 > URL: https://issues.apache.org/jira/browse/THRIFT-984 > Project: Thrift > Issue Type: Sub-task > Components: OCaml - Library >Reporter: Roger Meier >Assignee: Chet Murthy > Fix For: 1.0 > > Attachments: _oasis, _oasis > > > add version info to the library and update > http://wiki.apache.org/thrift/HowToVersion -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
Re: Want to contribute to Apache Thrift
Hi Tushar Glad to hear you are enjoying Apache Thrift and want to contribute back. Please see http://thrift.apache.org/docs/HowToContribute/ for details on submitting patches and if you have any questions you can email the dev mailing list or ask in #thrift on freenode -Jake On Mon, Mar 25, 2013 at 8:23 AM, Tushar Sudake wrote: > Hi Dev Team, > > I have used (basic) of thrift recently. And found it very awesome and > beautiful. > > I'm thinking of contributing to it, in any way..let it be documentation, > wiki, source etc. This is the first time I'm contributing to open source > community. > Can someone please help me with this? What are some things that I must > know. How can I add unit tests for the patches that I submit?..I mean > fitting them into existing test framework. And most importantly, > understanding the source code (even at high level). > > To begin, I'm planning to start with easy thing like THRIFT-1844 JIRA. > > Thanks in advance. > Tushar >
[jira] [Commented] (THRIFT-984) ocaml: add version Info to the library
[ https://issues.apache.org/jira/browse/THRIFT-984?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612986#comment-13612986 ] Chet Murthy commented on THRIFT-984: Jake, Oops,I left in a "camlp5o" in that _oasis. I'm attaching a revised version. > ocaml: add version Info to the library > -- > > Key: THRIFT-984 > URL: https://issues.apache.org/jira/browse/THRIFT-984 > Project: Thrift > Issue Type: Sub-task > Components: OCaml - Library >Reporter: Roger Meier > Attachments: _oasis, _oasis > > > add version info to the library and update > http://wiki.apache.org/thrift/HowToVersion -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (THRIFT-984) ocaml: add version Info to the library
[ https://issues.apache.org/jira/browse/THRIFT-984?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chet Murthy updated THRIFT-984: --- Attachment: _oasis > ocaml: add version Info to the library > -- > > Key: THRIFT-984 > URL: https://issues.apache.org/jira/browse/THRIFT-984 > Project: Thrift > Issue Type: Sub-task > Components: OCaml - Library >Reporter: Roger Meier > Attachments: _oasis, _oasis > > > add version info to the library and update > http://wiki.apache.org/thrift/HowToVersion -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-984) ocaml: add version Info to the library
[ https://issues.apache.org/jira/browse/THRIFT-984?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612977#comment-13612977 ] Chet Murthy commented on THRIFT-984: Jake, I'm pretty new to oasis/ocamlbuild, but I've used it a little for my own work recently. I think the right syntax is a little different, and I've attached a modified version of your starting file. This should generate both the compiled objects, and also arrange for a findlib package "thrift" to be created, which can be installed with "make install". Also, if you remove Makefile and META, oasis will generate them. > ocaml: add version Info to the library > -- > > Key: THRIFT-984 > URL: https://issues.apache.org/jira/browse/THRIFT-984 > Project: Thrift > Issue Type: Sub-task > Components: OCaml - Library >Reporter: Roger Meier > Attachments: _oasis > > > add version info to the library and update > http://wiki.apache.org/thrift/HowToVersion -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (THRIFT-984) ocaml: add version Info to the library
[ https://issues.apache.org/jira/browse/THRIFT-984?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chet Murthy updated THRIFT-984: --- Attachment: _oasis > ocaml: add version Info to the library > -- > > Key: THRIFT-984 > URL: https://issues.apache.org/jira/browse/THRIFT-984 > Project: Thrift > Issue Type: Sub-task > Components: OCaml - Library >Reporter: Roger Meier > Attachments: _oasis > > > add version info to the library and update > http://wiki.apache.org/thrift/HowToVersion -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (THRIFT-1902) C++: Support for Multiplexing Services on any Transport, Protocol and Server
[ https://issues.apache.org/jira/browse/THRIFT-1902?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Patrik Lindblom updated THRIFT-1902: Component/s: C++ - Library Patch Info: Patch Available Affects Version/s: 0.9 > C++: Support for Multiplexing Services on any Transport, Protocol and Server > > > Key: THRIFT-1902 > URL: https://issues.apache.org/jira/browse/THRIFT-1902 > Project: Thrift > Issue Type: New Feature > Components: C++ - Library >Affects Versions: 0.9 >Reporter: Patrik Lindblom > Attachments: multiplex_c++.patch > > > Make patch available for C++ implementation of the Java TMultiplexedProtocol > and related classes as described in THRIFT-563. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-563) Support for Multiplexing Services on any Transport, Protocol and Server
[ https://issues.apache.org/jira/browse/THRIFT-563?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612773#comment-13612773 ] Patrik Lindblom commented on THRIFT-563: Jens, I have create a new ticket (THRIFT-1902) for the C++ version of the Multiplexed protocol. I have also submitted a patch (including ASF copyright headers) to that ticket for further processing. > Support for Multiplexing Services on any Transport, Protocol and Server > --- > > Key: THRIFT-563 > URL: https://issues.apache.org/jira/browse/THRIFT-563 > Project: Thrift > Issue Type: New Feature > Components: Java - Library >Reporter: Rob Slifka > Fix For: 1.0 > > Attachments: multiplex_c++.tar, multiplex.py, > THRIFT-563_fixed-signatures.patch, THRIFT-563.patch > > > *Motivation and Benefits* > We plan to use Thrift with a large number of functions communicating among > (at least) three languages. To keep maintainability high, we hope to avoid a > single service defined with a large number of functions. This would require > monolithic, unwieldy service implementations as the number of functions grows. > Breaking up our API into multiple IDLs gives us multiple abstract base > classes, which provides more flexibility in the object-oriented design of our > server platform. > Before our changes, the alternative was to open up additional ports with > smaller service implementations on each. We'd rather not open additional > ports. > *Our Approach* > We pursued an approach with the following in mind: > - No modifications to existing Thrift code. > - No modification to the Thrift protocol as described in the whitepaper. > - No modification to any {{TServer}}, {{TProtocol}} or {{TTransport}}. > - No need for any new {{TServer}} implementation. Works with any {{TServer}} > implementation. > - Work with any combination of {{TServer}}, {{TProtocol}} or {{TTransport}}. > - Avoid language-specific features, to ease implementation in other languages. > *Additions to Thrift* > Convenience class: > - {{TProtocolDecorator}} (extends {{TProtocol}}). This is a no-op decorator > around the {{TProtocol}} abstract class. > For use by clients: > - {{TMultiplexedProtocol}} (extends {{TProtocolDecorator}}). This decorates > any {{TProtocol}} by modifying the behaviour of > {{writeMessageBegin(TMessage)}} to change {{TMessage.name}} from > {{function_name}} to {{service_name + separator + function_name}}. > For use by the server: > - {{TMultiplexedProcessor}} (implements {{TProcessor}}). It should be used > to communicate with a client that was written using {{TMultiplexedProtocol}}. > It removes {{service_name + separator}} from {{TMessage.name}}, turning it > back into the standard message format. It then brokers the service request > to the {{TProcessor}} which is registered to handle requests for that service. > *Sample Usage - Client* > In this example, we've chosen to use {{TBinaryProtocol}} with two services: > {{Calculator}} and {{WeatherReport}}. > {code} > TSocket transport = new TSocket("localhost", 9090); > transport.open(); > TBinaryProtocol protocol = new TBinaryProtocol(transport); > TMultiplexedProtocol mp = new TMultiplexedProtocol(protocol, "Calculator"); > Calculator.Client service = new Calculator.Client(mp); > TMultiplexedProtocol mp2 = new TMultiplexedProtocol(protocol, > "WeatherReport"); > WeatherReport.Client service2 = new WeatherReport.Client(mp2); > System.out.println(service.add(2,2)); > System.out.println(service2.getTemperature()); > {code} > *Sample Usage - Server* > {code} > TMultiplexedProcessor processor = new TMultiplexedProcessor(); > processor.registerProcessor( > "Calculator", > new Calculator.Processor(new CalculatorHandler())); > processor.registerProcessor( > "WeatherReport", > new WeatherReport.Processor(new WeatherReportHandler())); > TServerTransport t = new TServerSocket(9090); > TSimpleServer server = new TSimpleServer(processor, t); > server.serve(); > {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (THRIFT-1902) C++: Support for Multiplexing Services on any Transport, Protocol and Server
[ https://issues.apache.org/jira/browse/THRIFT-1902?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Patrik Lindblom updated THRIFT-1902: Attachment: multiplex_c++.patch Created a patch including C++ implementation of TMultiplexedProtocol, TProtocolDecorator, and TMultiplexedProcessor classes. The patch is based on thrift-0.9.0 > C++: Support for Multiplexing Services on any Transport, Protocol and Server > > > Key: THRIFT-1902 > URL: https://issues.apache.org/jira/browse/THRIFT-1902 > Project: Thrift > Issue Type: New Feature >Reporter: Patrik Lindblom > Attachments: multiplex_c++.patch > > > Make patch available for C++ implementation of the Java TMultiplexedProtocol > and related classes as described in THRIFT-563. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
Re: Incompatible API changes for c_glib
I don't use c_glib but I do follow this list. I'm replying because I've not seen a response to you yet, and I think its good to show that your message has not been sent into the ether. Your changes sound solid to me, Would be really good from a usability perspective. You might get more users which would be good for everyone. The old function seems like a mess compared to your proposed changes. On Sat, Mar 23, 2013 at 1:04 AM, Evan Nemerson wrote: > On Fri, 2013-03-22 at 21:28 +, Roger Meier wrote: > > Quoting Evan Nemerson : > > > > > I've been working on improving the c_glib implementation with the goal > > > of being able to use Cassandra from Vala, C, and languages supported by > > > GObject Introspection. Unfortunately, I've come to realize that there > > > are some issues with the c_glib implementation which can't really be > > > resolved without backwards-incompatible API changes to both the library > > > and the code generated by the compiler. > > > > > > I'm willing to do the work to make those changes happen (and help > > > maintain the resulting API), but I don't want to write the code until I > > > know that people are willing to break backwards compatibility, or > create > > > a new implementation based on GLib/GObject/GIO and deprecate c_glib. > > > > > > I think the easiest way to see what I'm talking about is to look at an > > > example, so here is the function generated for executing a prepared > > > statement in Cassandra: > > > > > > gboolean > > > cassandra_cassandra_client_execute_prepared_cql_query ( > > > CassandraCassandraIf * iface, > > > CassandraCqlResult ** _return, > > > const gint32 itemId, > > > const GPtrArray * values, > > > CassandraInvalidRequestException ** ire, > > > CassandraUnavailableException ** ue, > > > CassandraTimedOutException ** te, > > > CassandraSchemaDisagreementException ** sde, > > > GError ** error); > > > > > > The most obvious issue is that Thrift exceptions are not GErrors, which > > > means that after executing the function, in addition to checking error > > > for problems, you also need to check ire, ue, te, and sde. > > > > > > Next, it returns a boolean instead of what the Cassandra thrift file > > > specified (that second argument, _return, is what Cassandra wants us to > > > return). > > > > > > This function should be generated as > > > > > > CassandraCqlResult * > > > cassandra_cassandra_execute_prepared_cql_query ( > > > CassandraCassandra * cassandra, > > > const gint32 itemId, > > > const GPtrArray * values, > > > GError ** error); > > > > > > You get all the same information, but it's *much* easier to access. (I > > > know the CassandraCassandra thing is a little weird, but that's just > > > because of a Cassandra service in a Cassandra namespace. Not much can > > > be done about that.) > > > > > > There is also the issue of moving to GIO, which would provide almost > > > free support for things like > > > > > > * TLS > > > * Compression > > > * Things other than TCP (UDP, UNIX domain sockets, in-memory > > > buffers, etc.) > > > * DNS-SD, on both clients and servers > > Sorry, server-side isn't accurate. Nothing is stopping you from > configuring your DNS server for DNS-SD, but there is no mDNS/UPnP stuff > in GIO. > > > > * Asynchronous operations > > > * Cancellable operations > > > * Buffered I/O > > > * Multi-threaded servers > > > > > > I know that most of those things can be accomplished with the existing > > > API (and the last two already are), but to be honest it's a bit of a > > > pain (especially in C), and integrating tightly with GIO could make it > > > trivial. > > > > > > There are also many more minor issues. You may have noticed that I > > > changed "CassandraCassandraIf *" to "CassandraCassandra *" above. > > > GObject properties, and implementation details, are exposed publicly as > > > fields when they shouldn't be. Here is what a string constant looks > > > like in the code generated by the compiler: > > > > > > #define CASSANDRA_VERSION g_strdup ("19.24.0") > > > > > > So, what do you think? Is it time to break backwards compatibility? > > > > We probably do not have that many c_glib users, why not? > > GIO features look nice, the only option to keep backward compatibility > > is the introduction of c_gio? > > If you're asking why we can't just change the existing code to use GIO, > many types expose implementation details which prevent this from being a > viable option. Others don't expose things we would want (like > GCancellable* parameters). > > If you're just asking about keeping this in one library, technically we > could add all new code to c_glib and keep the existing c_glib stuff > around but mark it as deprecated, but there is very almost nothing in > c_glib I would actu
Want to contribute to Apache Thrift
Hi Dev Team, I have used (basic) of thrift recently. And found it very awesome and beautiful. I'm thinking of contributing to it, in any way..let it be documentation, wiki, source etc. This is the first time I'm contributing to open source community. Can someone please help me with this? What are some things that I must know. How can I add unit tests for the patches that I submit?..I mean fitting them into existing test framework. And most importantly, understanding the source code (even at high level). To begin, I'm planning to start with easy thing like THRIFT-1844 JIRA. Thanks in advance. Tushar
[jira] [Updated] (THRIFT-1893) HTTP server/client for node js
[ https://issues.apache.org/jira/browse/THRIFT-1893?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Phillip Campbell updated THRIFT-1893: - Attachment: thrift-1893-node-http.patch > HTTP server/client for node js > -- > > Key: THRIFT-1893 > URL: https://issues.apache.org/jira/browse/THRIFT-1893 > Project: Thrift > Issue Type: New Feature > Components: Node.js - Library >Reporter: Phillip Campbell >Priority: Minor > Labels: node > Attachments: thrift-1893-node-http.patch > > > I have written a http server for node js, and am in progress on a http client > for node js. I will contribute a patch file when I am done, however I am > having a few problems figuring out how things need to be implemented. I am > trying to follow the ruby implementation as an example, but am unsure how to > make sure I implement things correct. I assume the link in the README under > requirements was supposed to explain these things, but currently > http://wiki.apache.org/thrift/ThriftRequirements leads to gibberish. > Questions I have are: > Do I need to implement a JSON protocol? > On an http request, do I need to ensure the request is a POST? Check for > headers? What is required? > Thanks -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1893) HTTP server/client for node js
[ https://issues.apache.org/jira/browse/THRIFT-1893?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612640#comment-13612640 ] Phillip Campbell commented on THRIFT-1893: -- Well, I gave it a try. Patch is attached. I haven't implemented http client yet. > HTTP server/client for node js > -- > > Key: THRIFT-1893 > URL: https://issues.apache.org/jira/browse/THRIFT-1893 > Project: Thrift > Issue Type: New Feature > Components: Node.js - Library >Reporter: Phillip Campbell >Priority: Minor > Labels: node > Attachments: thrift-1893-node-http.patch > > > I have written a http server for node js, and am in progress on a http client > for node js. I will contribute a patch file when I am done, however I am > having a few problems figuring out how things need to be implemented. I am > trying to follow the ruby implementation as an example, but am unsure how to > make sure I implement things correct. I assume the link in the README under > requirements was supposed to explain these things, but currently > http://wiki.apache.org/thrift/ThriftRequirements leads to gibberish. > Questions I have are: > Do I need to implement a JSON protocol? > On an http request, do I need to ensure the request is a POST? Check for > headers? What is required? > Thanks -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (THRIFT-1902) C++: Support for Multiplexing Services on any Transport, Protocol and Server
[ https://issues.apache.org/jira/browse/THRIFT-1902?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Patrik Lindblom updated THRIFT-1902: Summary: C++: Support for Multiplexing Services on any Transport, Protocol and Server (was: Support for Multiplexing Services on any Transport, Protocol and Server (C++)) > C++: Support for Multiplexing Services on any Transport, Protocol and Server > > > Key: THRIFT-1902 > URL: https://issues.apache.org/jira/browse/THRIFT-1902 > Project: Thrift > Issue Type: New Feature >Reporter: Patrik Lindblom > > Make patch available for C++ implementation of the Java TMultiplexedProtocol > and related classes as described in THRIFT-563. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Created] (THRIFT-1902) Support for Multiplexing Services on any Transport, Protocol and Server (C++)
Patrik Lindblom created THRIFT-1902: --- Summary: Support for Multiplexing Services on any Transport, Protocol and Server (C++) Key: THRIFT-1902 URL: https://issues.apache.org/jira/browse/THRIFT-1902 Project: Thrift Issue Type: New Feature Reporter: Patrik Lindblom Make patch available for C++ implementation of the Java TMultiplexedProtocol and related classes as described in THRIFT-563. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1879) Add support for GObject-Introspection
[ https://issues.apache.org/jira/browse/THRIFT-1879?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612489#comment-13612489 ] Hudson commented on THRIFT-1879: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) THRIFT-1879 Add support for GObject-Introspection (Revision a51186b7f2bd388d95485404017f05eb3b861074) Result = ABORTED roger : https://git-wip-us.apache.org/repos/asf?p=thrift.git&a=commit&h=a51186b7f2bd388d95485404017f05eb3b861074 Files : * lib/c_glib/src/thrift/c_glib/transport/thrift_transport.h * lib/c_glib/src/thrift/c_glib/server/thrift_simple_server.h * lib/c_glib/src/thrift/c_glib/transport/thrift_buffered_transport.h * lib/c_glib/src/thrift/c_glib/transport/thrift_framed_transport.h * lib/c_glib/src/thrift/c_glib/protocol/thrift_protocol_factory.h * lib/c_glib/src/thrift/c_glib/protocol/thrift_binary_protocol_factory.h * lib/c_glib/src/thrift/c_glib/transport/thrift_server_socket.h * lib/c_glib/src/thrift/c_glib/protocol/thrift_binary_protocol.h * lib/c_glib/src/thrift/c_glib/server/thrift_server.h * lib/c_glib/src/thrift/c_glib/transport/thrift_transport_factory.h * lib/c_glib/src/thrift/c_glib/transport/thrift_server_transport.h * lib/c_glib/src/thrift/c_glib/thrift_application_exception.h * lib/c_glib/src/thrift/c_glib/transport/thrift_memory_buffer.h * lib/c_glib/src/thrift/c_glib/transport/thrift_socket.h * lib/c_glib/src/thrift/c_glib/protocol/thrift_protocol.h * lib/c_glib/src/thrift/c_glib/thrift_struct.h > Add support for GObject-Introspection > - > > Key: THRIFT-1879 > URL: https://issues.apache.org/jira/browse/THRIFT-1879 > Project: Thrift > Issue Type: New Feature > Components: C glib - Library >Reporter: Evan Nemerson > Attachments: > 0001-Move-typedefs-before-public-structs-to-work-around-g.patch, > 0005-THRIFT-1879-Add-GObject-Introspection-support.patch > > > It would be nice if thrift_c_glib bindings supported GObject Introspection > (see https://live.gnome.org/GObjectIntrospection). This would make Vala > bindings (THRIFT-1741) easy. > Actually adding G-I is pretty easy (I already have a patch to do it), but > would require migrating the documentation to the gtk-doc format, so before I > invest the time I'd like to make sure this is something you're interested in. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1878) Add the possibility to send custom headers
[ https://issues.apache.org/jira/browse/THRIFT-1878?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612490#comment-13612490 ] Hudson commented on THRIFT-1878: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) THRIFT-1878 php: THttpClient - Add the possibility to send custom headers (Revision 1f9717d192137d06927846cc2f2f7e380e5da834) Result = ABORTED roger : https://git-wip-us.apache.org/repos/asf?p=thrift.git&a=commit&h=1f9717d192137d06927846cc2f2f7e380e5da834 Files : * lib/php/lib/Thrift/Transport/THttpClient.php > Add the possibility to send custom headers > -- > > Key: THRIFT-1878 > URL: https://issues.apache.org/jira/browse/THRIFT-1878 > Project: Thrift > Issue Type: Improvement > Components: PHP - Library >Affects Versions: 0.9 >Reporter: Laurent Sarrazin >Assignee: Roger Meier >Priority: Minor > Labels: patch > Fix For: 1.0 > > Attachments: thrift-0.9.0-add-headers.patch > > -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1855) deep-copy for collections of primitives should use copy-constructor
[ https://issues.apache.org/jira/browse/THRIFT-1855?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612487#comment-13612487 ] Hudson commented on THRIFT-1855: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) THRIFT-1855 deep-copy for collections of primitives should use copy-constructor (Revision 948a2d4fb8d37793974206e4c766df2b26520aba) Result = ABORTED roger : https://git-wip-us.apache.org/repos/asf?p=thrift.git&a=commit&h=948a2d4fb8d37793974206e4c766df2b26520aba Files : * compiler/cpp/src/generate/t_java_generator.cc > deep-copy for collections of primitives should use copy-constructor > --- > > Key: THRIFT-1855 > URL: https://issues.apache.org/jira/browse/THRIFT-1855 > Project: Thrift > Issue Type: Improvement > Components: Java - Compiler >Reporter: Vitali Lovich >Assignee: Vitali Lovich > Attachments: 0001-more-efficient-deep-copy-of-lists-maps.patch > > > Instead of doing a manual element-wise copy, simply invoke the > copy-constructor on the collection. Additionally, if possible (i.e. not a > sorted collection), provide a hint of the capacity when doing an element-wise > copy. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1863) [TBinaryProtocol readMessageBeginReturnName:type:sequenceID] returns incorrect message type
[ https://issues.apache.org/jira/browse/THRIFT-1863?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612488#comment-13612488 ] Hudson commented on THRIFT-1863: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) THRIFT-1863 cocoa: [TBinaryProtocol readMessageBeginReturnName:type:sequenceID] returns incorrect message type (Revision ff951bd5675a1ba72b39abeff8aafb770d3c43cf) Result = ABORTED roger : https://git-wip-us.apache.org/repos/asf?p=thrift.git&a=commit&h=ff951bd5675a1ba72b39abeff8aafb770d3c43cf Files : * lib/cocoa/src/protocol/TBinaryProtocol.m > [TBinaryProtocol readMessageBeginReturnName:type:sequenceID] returns > incorrect message type > --- > > Key: THRIFT-1863 > URL: https://issues.apache.org/jira/browse/THRIFT-1863 > Project: Thrift > Issue Type: Bug > Components: Cocoa - Library >Affects Versions: 0.9 >Reporter: Kevin Li >Assignee: Roger Meier >Priority: Minor > Attachments: msgtype.patch > > > readMessageBeginReturnName in TBinaryProtocol uses the wrong variable to mask > out the lower byte hence returning a wrong value for "type". -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-563) Support for Multiplexing Services on any Transport, Protocol and Server
[ https://issues.apache.org/jira/browse/THRIFT-563?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612484#comment-13612484 ] Hudson commented on THRIFT-563: --- Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) THRIFT-563 Support for Multiplexing Services on any Transport, Protocol and Server (Revision 3661867febfa3a303ae8f5df2ed1a29e882821c3) THRIFT-563 Support for Multiplexing Services on any Transport, Protocol and Server (Revision cac2c5761e2ebe8b14a3c03dd2ee756c1e14441b) Result = ABORTED jensg : https://git-wip-us.apache.org/repos/asf?p=thrift.git&a=commit&h=3661867febfa3a303ae8f5df2ed1a29e882821c3 Files : * lib/java/src/org/apache/thrift/protocol/TProtocolDecorator.java * lib/java/src/org/apache/thrift/protocol/TMultiplexedProtocol.java * lib/java/src/org/apache/thrift/TMultiplexedProcessor.java jensg : https://git-wip-us.apache.org/repos/asf?p=thrift.git&a=commit&h=cac2c5761e2ebe8b14a3c03dd2ee756c1e14441b Files : * lib/java/src/org/apache/thrift/protocol/TMultiplexedProtocol.java * lib/java/src/org/apache/thrift/protocol/TProtocolDecorator.java * lib/java/src/org/apache/thrift/TMultiplexedProcessor.java > Support for Multiplexing Services on any Transport, Protocol and Server > --- > > Key: THRIFT-563 > URL: https://issues.apache.org/jira/browse/THRIFT-563 > Project: Thrift > Issue Type: New Feature > Components: Java - Library >Reporter: Rob Slifka > Fix For: 1.0 > > Attachments: multiplex_c++.tar, multiplex.py, > THRIFT-563_fixed-signatures.patch, THRIFT-563.patch > > > *Motivation and Benefits* > We plan to use Thrift with a large number of functions communicating among > (at least) three languages. To keep maintainability high, we hope to avoid a > single service defined with a large number of functions. This would require > monolithic, unwieldy service implementations as the number of functions grows. > Breaking up our API into multiple IDLs gives us multiple abstract base > classes, which provides more flexibility in the object-oriented design of our > server platform. > Before our changes, the alternative was to open up additional ports with > smaller service implementations on each. We'd rather not open additional > ports. > *Our Approach* > We pursued an approach with the following in mind: > - No modifications to existing Thrift code. > - No modification to the Thrift protocol as described in the whitepaper. > - No modification to any {{TServer}}, {{TProtocol}} or {{TTransport}}. > - No need for any new {{TServer}} implementation. Works with any {{TServer}} > implementation. > - Work with any combination of {{TServer}}, {{TProtocol}} or {{TTransport}}. > - Avoid language-specific features, to ease implementation in other languages. > *Additions to Thrift* > Convenience class: > - {{TProtocolDecorator}} (extends {{TProtocol}}). This is a no-op decorator > around the {{TProtocol}} abstract class. > For use by clients: > - {{TMultiplexedProtocol}} (extends {{TProtocolDecorator}}). This decorates > any {{TProtocol}} by modifying the behaviour of > {{writeMessageBegin(TMessage)}} to change {{TMessage.name}} from > {{function_name}} to {{service_name + separator + function_name}}. > For use by the server: > - {{TMultiplexedProcessor}} (implements {{TProcessor}}). It should be used > to communicate with a client that was written using {{TMultiplexedProtocol}}. > It removes {{service_name + separator}} from {{TMessage.name}}, turning it > back into the standard message format. It then brokers the service request > to the {{TProcessor}} which is registered to handle requests for that service. > *Sample Usage - Client* > In this example, we've chosen to use {{TBinaryProtocol}} with two services: > {{Calculator}} and {{WeatherReport}}. > {code} > TSocket transport = new TSocket("localhost", 9090); > transport.open(); > TBinaryProtocol protocol = new TBinaryProtocol(transport); > TMultiplexedProtocol mp = new TMultiplexedProtocol(protocol, "Calculator"); > Calculator.Client service = new Calculator.Client(mp); > TMultiplexedProtocol mp2 = new TMultiplexedProtocol(protocol, > "WeatherReport"); > WeatherReport.Client service2 = new WeatherReport.Client(mp2); > System.out.println(service.add(2,2)); > System.out.println(service2.getTemperature()); > {code} > *Sample Usage - Server* > {code} > TMultiplexedProcessor processor = new TMultiplexedProcessor(); > processor.registerProcessor( > "Calculator", > new Calculator.Processor(new CalculatorHandler())); > processor.registerProcessor( > "WeatherReport", > new WeatherReport.Processor(new WeatherReportHandler())); > TServerTransport t = new TServerSocket(9090); > TSimpleServer server = new TSimpleServer(processor, t);
[jira] [Commented] (THRIFT-1869) TThreadPoolServer (java) dies when threadpool is consumed
[ https://issues.apache.org/jira/browse/THRIFT-1869?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612485#comment-13612485 ] Hudson commented on THRIFT-1869: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) THRIFT-1869 TThreadPoolServer (java) dies when threadpool is consumed (Revision ce6d1d709aaaf33d2cdfc7415a6e95b10faac2e5) Result = ABORTED roger : https://git-wip-us.apache.org/repos/asf?p=thrift.git&a=commit&h=ce6d1d709aaaf33d2cdfc7415a6e95b10faac2e5 Files : * lib/java/src/org/apache/thrift/server/TThreadPoolServer.java > TThreadPoolServer (java) dies when threadpool is consumed > - > > Key: THRIFT-1869 > URL: https://issues.apache.org/jira/browse/THRIFT-1869 > Project: Thrift > Issue Type: Bug > Components: Java - Library >Affects Versions: 0.9 >Reporter: Brock Noland >Assignee: Roger Meier > Fix For: 1.0 > > Attachments: THRIFT-1869-0.patch > > > When TThreadPoolServer hit's max threads, it throws a > RejectedExceptionException and dies. This is not expected by users of this > class. > {noformat} > java.util.concurrent.RejectedExecutionException > at > java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(Unknown > Source) > at java.util.concurrent.ThreadPoolExecutor.reject(Unknown Source) > at java.util.concurrent.ThreadPoolExecutor.execute(Unknown Source) > at > org.apache.thrift.server.TThreadPoolServer.serve(TThreadPoolServer.java:108) > {noformat} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1864) implement event handler for non-blocking server
[ https://issues.apache.org/jira/browse/THRIFT-1864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612486#comment-13612486 ] Hudson commented on THRIFT-1864: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) THRIFT-1864 java: implement event handler for non-blocking server (Revision 9cda78844de5097554414e3ef30e62d482679b81) Result = ABORTED roger : https://git-wip-us.apache.org/repos/asf?p=thrift.git&a=commit&h=9cda78844de5097554414e3ef30e62d482679b81 Files : * lib/java/src/org/apache/thrift/server/TThreadedSelectorServer.java * lib/java/src/org/apache/thrift/server/TNonblockingServer.java * lib/java/src/org/apache/thrift/server/AbstractNonblockingServer.java > implement event handler for non-blocking server > --- > > Key: THRIFT-1864 > URL: https://issues.apache.org/jira/browse/THRIFT-1864 > Project: Thrift > Issue Type: Bug >Affects Versions: 1.0 >Reporter: Vitali Lovich >Assignee: Vitali Lovich > Fix For: 1.0 > > Attachments: 0001-add-event-handler-to-nonblocking-server.patch > > > implement the event handler interface for non-blocking servers. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1881) TNonblockingServer does not release open connections or threads on shutdown
[ https://issues.apache.org/jira/browse/THRIFT-1881?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612481#comment-13612481 ] Hudson commented on THRIFT-1881: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) THRIFT-1881 TNonblockingServer does not release open connections or threads on shutdown (Revision 0c04fccf3a32a334cb449b5b7990e9d116639ce0) Result = ABORTED roger : https://git-wip-us.apache.org/repos/asf?p=thrift.git&a=commit&h=0c04fccf3a32a334cb449b5b7990e9d116639ce0 Files : * lib/cpp/src/thrift/server/TNonblockingServer.cpp * lib/cpp/src/thrift/server/TNonblockingServer.h > TNonblockingServer does not release open connections or threads on shutdown > --- > > Key: THRIFT-1881 > URL: https://issues.apache.org/jira/browse/THRIFT-1881 > Project: Thrift > Issue Type: Bug > Components: C++ - Library >Affects Versions: 1.0 > Environment: Centos 6.3/Windows 7 >Reporter: Randy Abernethy >Assignee: Roger Meier > Labels: patch > Fix For: 1.0 > > Attachments: cppnbserverleak.patch > > > TNonblockingServer fails to release active TConnections on shutdown (per > comments in the code). An important side effect is that the connection owned > resources are not freed, in particular destructor clean up code in user > defined service handlers. Also the interdependency between Threads and > TNonblockingIOThreads via shared_ptr causes all of these objects to leak. > This patch reduces the leaked heap blocks from > 100 to 1 on my test machines > using an assortment of threads and terminal connection states. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1859) Generated error c++ code with -out and include_prefix param
[ https://issues.apache.org/jira/browse/THRIFT-1859?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612482#comment-13612482 ] Hudson commented on THRIFT-1859: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) Thrift-1859: Generated error c++ code with -out and include_prefix param (Revision d1fb1807fe63732d2e5e27fb22f29321676be1c0) Result = ABORTED > Generated error c++ code with -out and include_prefix param > --- > > Key: THRIFT-1859 > URL: https://issues.apache.org/jira/browse/THRIFT-1859 > Project: Thrift > Issue Type: Bug > Components: C++ - Compiler >Affects Versions: 0.9 > Environment: Linux, x86-64 >Reporter: CHEN Feng >Priority: Critical > Fix For: 1.0 > > Attachments: > thrift-1859-fix-cpp-include-path-when-include-prefix-is-on-and-out-option-is-specified.patch > > > thrift -gen cpp:include_prefix -out test_thrift test_thrift/tutorial.thrift > the files are generated in test_thrift, without the gen-cpp dir > but the content of generated files are error: > #include "test_thrift/gen-cpp/Calculator.h" > the --help said: > -out dirSet the ouput location for generated files. >(no gen-* folder will be created) > So, the 'gen-cpp' should be removed. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-986) st: add version Info to the library
[ https://issues.apache.org/jira/browse/THRIFT-986?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612478#comment-13612478 ] Hudson commented on THRIFT-986: --- Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) THRIFT-986: smalltalk add version Info to the library (Revision 775862547b132bf26e6cb250caaa46618eb99f4f) Result = ABORTED jfarrell : https://git-wip-us.apache.org/repos/asf?p=thrift.git&a=commit&h=775862547b132bf26e6cb250caaa46618eb99f4f Files : * lib/st/package.xml > st: add version Info to the library > --- > > Key: THRIFT-986 > URL: https://issues.apache.org/jira/browse/THRIFT-986 > Project: Thrift > Issue Type: Sub-task > Components: Smalltalk - Library >Reporter: Roger Meier >Assignee: Jake Farrell > Fix For: 1.0 > > > add version info to the library and update > http://wiki.apache.org/thrift/HowToVersion -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1861) PHP Makefile does not include TStringFuncFactory
[ https://issues.apache.org/jira/browse/THRIFT-1861?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612479#comment-13612479 ] Hudson commented on THRIFT-1861: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) THRIFT-1861 PHP Makefile does not include TStringFuncFactory (Revision 9b2524415c06d627e0cf6cfd5e038271a9bea9e0) Result = ABORTED roger : https://git-wip-us.apache.org/repos/asf?p=thrift.git&a=commit&h=9b2524415c06d627e0cf6cfd5e038271a9bea9e0 Files : * lib/php/Makefile.am > PHP Makefile does not include TStringFuncFactory > > > Key: THRIFT-1861 > URL: https://issues.apache.org/jira/browse/THRIFT-1861 > Project: Thrift > Issue Type: Bug > Components: PHP - Library >Affects Versions: 0.9 > Environment: CentOs 6 >Reporter: Logan Owen >Assignee: Roger Meier >Priority: Minor > Labels: build > > lib/php/Makefile.am does not include > lib/php/lib/Thrift/Factory/TStringFuncFactory.php in the files to be > installed. > snippet of current Makefile.am: > phpfactorydir = $(phpdir)/Factory > phpfactory_DATA = \ > lib/Thrift/Factory/TBinaryProtocolFactory.php \ > lib/Thrift/Factory/TCompactProtocolFactory.php \ > lib/Thrift/Factory/TJSONProtocolFactory.php \ > lib/Thrift/Factory/TProtocolFactory.php \ > lib/Thrift/Factory/TTransportFactory.php > As you can see, it is missing TStringFuncFactory.php. > Suggested change: > phpfactorydir = $(phpdir)/Factory > phpfactory_DATA = \ > lib/Thrift/Factory/TBinaryProtocolFactory.php \ > lib/Thrift/Factory/TCompactProtocolFactory.php \ > lib/Thrift/Factory/TJSONProtocolFactory.php \ > lib/Thrift/Factory/TProtocolFactory.php \ > lib/Thrift/Factory/TStringFuncFactory.php \ > lib/Thrift/Factory/TTransportFactory.php > Looks like there was a similar issue with a different file in the past: > https://github.com/apache/thrift/commit/0b922740035d9c88f961dc0cd73b54350c68ea1c -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1845) Fix compiler warning caused by implicit string conversion with Xcode 4.6
[ https://issues.apache.org/jira/browse/THRIFT-1845?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612480#comment-13612480 ] Hudson commented on THRIFT-1845: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) THRIFT-1845 cpp: Fix compiler warning caused by implicit string conversion with Xcode 4.6 (Revision a7ab94d414ee949bb38dad3e62cd771d6cc8781e) Result = ABORTED roger : https://git-wip-us.apache.org/repos/asf?p=thrift.git&a=commit&h=a7ab94d414ee949bb38dad3e62cd771d6cc8781e Files : * lib/cpp/src/thrift/protocol/TCompactProtocol.tcc > Fix compiler warning caused by implicit string conversion with Xcode 4.6 > > > Key: THRIFT-1845 > URL: https://issues.apache.org/jira/browse/THRIFT-1845 > Project: Thrift > Issue Type: Bug > Components: C++ - Library >Affects Versions: 0.9 > Environment: Building w/ clang as shipped with Xcode 4.6 >Reporter: Nate Rosenblum >Assignee: Jake Farrell >Priority: Minor > Fix For: 0.9 > > Attachments: 0001-Don-t-rely-on-implicit-string-conversion.patch > > > Clang doesn't do the implicit char[] -> std::string conversion before > evaluating the + operator in the following statement (and even if it did, it > would complain that there is no string::operator+ defined for a non-character > integral type. > {code} > int8_t type; > //... > throw TException("don't know what type: " + type); > {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1890) C++: Make named pipes server work asynchronously
[ https://issues.apache.org/jira/browse/THRIFT-1890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612476#comment-13612476 ] Hudson commented on THRIFT-1890: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) THRIFT-1890 C++: Make named pipes server work asynchronously (Revision 552440e6e522499d974800c98c5f4dd869dc29c7) Result = ABORTED jensg : https://git-wip-us.apache.org/repos/asf?p=thrift.git&a=commit&h=552440e6e522499d974800c98c5f4dd869dc29c7 Files : * lib/cpp/src/thrift/transport/TPipeServer.h * lib/cpp/src/thrift/transport/TPipeServer.cpp > C++: Make named pipes server work asynchronously > - > > Key: THRIFT-1890 > URL: https://issues.apache.org/jira/browse/THRIFT-1890 > Project: Thrift > Issue Type: Improvement > Components: C++ - Library > Environment: Windows >Reporter: Jens Geyer >Assignee: Jens Geyer > Fix For: 1.0 > > Attachments: addNumbers.thrift, pipeStopTest.cpp, > THRIFT-1890_Cpp_Make_named_pipes_server_work_asynchronously-v3.patch, > TPipeServer.cpp > > > Currently the named pipe server cannot be stopped gracefully due to the way > ConnectNamedPipe() works for synchronous named pipes. The recommended > solution is to run the pipe in "overlapped" mode, allowing the transport to > be closed cleanly. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1823) Missing parenthesis breaks "IS_..." macro in generated code
[ https://issues.apache.org/jira/browse/THRIFT-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612477#comment-13612477 ] Hudson commented on THRIFT-1823: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) Thrift-1823:Missing parenthesis breaks "IS_..." macro in generated code (Revision 3c434ab87dcb44352e71b80cd5a9ef7e24d77427) Result = ABORTED > Missing parenthesis breaks "IS_..." macro in generated code > --- > > Key: THRIFT-1823 > URL: https://issues.apache.org/jira/browse/THRIFT-1823 > Project: Thrift > Issue Type: Bug > Components: C glib - Compiler >Affects Versions: 0.9 > Environment: CentOS 6.3 on x86 (32-bit) >Reporter: Simon South >Assignee: Simon South >Priority: Minor > Fix For: 1.0 > > Attachments: thrift-1823-generate-is-macro-correctly.patch > > > A missing parenthesis in the generated header file for a service interface > breaks the "IS_..." macro, making client code that uses it fail to compile > with messages like > hello_world_processor.c:41:59: error: macro "G_TYPE_CHECK_INSTANCE_TYPE" > requires 2 arguments, but only 1 given > hello_world_processor.c:101:1: error: unterminated argument list invoking > macro "G_LIKELY" > In file included from /usr/include/glib-2.0/glib.h:79, >from /usr/include/glib-2.0/gobject/gtype.h:26, >from /usr/include/glib-2.0/gobject/gboxed.h:26, >from /usr/include/glib-2.0/glib-object.h:25, >from hello_world_processor.h:4, >from hello_world_processor.c:1: > I'll attach a patch with the fix. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1895) Delphi: reserved variable name "result" not detected properly
[ https://issues.apache.org/jira/browse/THRIFT-1895?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612474#comment-13612474 ] Hudson commented on THRIFT-1895: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) THRIFT-1895 Delphi: reserved variable name "result" not detected properly (Revision 7af5868e57b35d5d5e9427484f884cc6af002bbd) Result = ABORTED jensg : https://git-wip-us.apache.org/repos/asf?p=thrift.git&a=commit&h=7af5868e57b35d5d5e9427484f884cc6af002bbd Files : * compiler/cpp/src/generate/t_delphi_generator.cc > Delphi: reserved variable name "result" not detected properly > - > > Key: THRIFT-1895 > URL: https://issues.apache.org/jira/browse/THRIFT-1895 > Project: Thrift > Issue Type: Bug > Components: Delphi - Compiler >Affects Versions: 0.9 >Reporter: Jens Geyer >Assignee: Jens Geyer >Priority: Trivial > Fix For: 1.0 > > Attachments: > THRIFT-1895_Delphi_reserved_variable_name_result_not_detected_properly.patch > > > Struct members named "result" lead to uncompileable code in the > ToString()-methods. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1715) Allow excluding python parts when building contrib/fb303
[ https://issues.apache.org/jira/browse/THRIFT-1715?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612475#comment-13612475 ] Hudson commented on THRIFT-1715: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) Thrift-1715: Allow excluding libraries in fb303 configure (Revision 60723b88ff62f90e031911be5d903f6da99d3c42) Result = ABORTED > Allow excluding python parts when building contrib/fb303 > > > Key: THRIFT-1715 > URL: https://issues.apache.org/jira/browse/THRIFT-1715 > Project: Thrift > Issue Type: Improvement > Components: Build Process >Affects Versions: 0.8 >Reporter: Harsh J >Assignee: Jake Farrell >Priority: Trivial > Labels: fb303 > Fix For: 1.0 > > Attachments: > 0001-THRIFT-1715.-Allow-excluding-python-parts-when-build.patch > > > Right now, the py/ sources are always compiled and installed when building > the contrib/fb303 module. This ought to be optional like the main build is. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1897) Support validation of required fields
[ https://issues.apache.org/jira/browse/THRIFT-1897?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612471#comment-13612471 ] Hudson commented on THRIFT-1897: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) THRIFT-1897 cocoa: Support validation of required fields (Revision 5505465ffa6476a4e64f01d0d27c540d86fe48fe) Result = ABORTED roger : https://git-wip-us.apache.org/repos/asf?p=thrift.git&a=commit&h=5505465ffa6476a4e64f01d0d27c540d86fe48fe Files : * compiler/cpp/src/generate/t_cocoa_generator.cc > Support validation of required fields > - > > Key: THRIFT-1897 > URL: https://issues.apache.org/jira/browse/THRIFT-1897 > Project: Thrift > Issue Type: Improvement > Components: Cocoa - Compiler >Affects Versions: 0.9 >Reporter: Kevin Li >Assignee: Roger Meier >Priority: Minor > Fix For: 1.0 > > Attachments: thrift-1897.patch > > > Add generation of validate method that checks for required fields not being > set. A new cocoa generator option should be created to allow users to opt-in > for this validation during de-serialization. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1899) Delphi: Support for Multiplexing Services on any Transport, Protocol and Server
[ https://issues.apache.org/jira/browse/THRIFT-1899?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612472#comment-13612472 ] Hudson commented on THRIFT-1899: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) THRIFT-1899 Delphi: Support for Multiplexing Services on any Transport, Protocol and Server (Revision 8a70196d00b667b5e890cb0974373d2a2af4f82c) Result = ABORTED jensg : https://git-wip-us.apache.org/repos/asf?p=thrift.git&a=commit&h=8a70196d00b667b5e890cb0974373d2a2af4f82c Files : * lib/delphi/test/multiplexed/Multiplex.Server.Main.pas * lib/delphi/test/multiplexed/Multiplex.Client.Main.pas * lib/delphi/src/Thrift.Processor.Multiplex.pas * lib/delphi/test/multiplexed/Multiplex.Test.Common.pas * lib/delphi/src/Thrift.Protocol.pas * lib/delphi/src/Thrift.Protocol.Multiplex.pas * lib/delphi/test/multiplexed/Multiplex.Test.Client.dpr * lib/delphi/test/multiplexed/Multiplex.Test.Server.dpr > Delphi: Support for Multiplexing Services on any Transport, Protocol and > Server > --- > > Key: THRIFT-1899 > URL: https://issues.apache.org/jira/browse/THRIFT-1899 > Project: Thrift > Issue Type: New Feature > Components: Delphi - Library >Reporter: Jens Geyer >Assignee: Jens Geyer > Fix For: 1.0 > > Attachments: THRIFT-1899_Multiplex_Protocol_Delphi.patch > > > See THRIFT-563 for detailed description. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1804) Binary+compact protocol single byte error in Ruby library (ARM architecture): caused by different char signedness
[ https://issues.apache.org/jira/browse/THRIFT-1804?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612473#comment-13612473 ] Hudson commented on THRIFT-1804: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) Thrift-1804: Ruby extension on ARM complains about signed chars (Revision a87cc5e7708ff7c3fcec1e05a0d70e1f7923e17f) Result = ABORTED > Binary+compact protocol single byte error in Ruby library (ARM architecture): > caused by different char signedness > - > > Key: THRIFT-1804 > URL: https://issues.apache.org/jira/browse/THRIFT-1804 > Project: Thrift > Issue Type: Bug > Components: Build Process, Ruby - Library >Affects Versions: 0.9 > Environment: - Debian/ARM Squeeze 6.0.6 native armv5te, compiler: gcc > (Debian 4.4.5-8) 4.4.5 > QEMU emulated debian hosts: > - Debian Squeeze 6.0.6 emulated armvtejl, compiler: gcc (Debian 4.4.5-8) > - Debian Sid 7.0 on QEMU ARM versatilepb, compiler: gcc (Debian 4.6.3-14) >Reporter: Elias Karakoulakis >Assignee: Elias Karakoulakis > Fix For: 1.0 > > Attachments: THRIFT1804.patch > > > These compilation tests fail when compiling for ARM: > 1) BinaryProtocolAccelerated it should behave like a binary protocol should > read a byte > Failure/Error: @prot.read_byte.should == i >{*}expected: -128{*} > {*}got: 128 (using ==){*} > Shared Example Group: "a binary protocol" called from > ./spec/binary_protocol_accelerated_spec.rb:28 > # ./spec/binary_protocol_spec_shared.rb:291:in `block (3 levels) in (required)>' > # ./spec/binary_protocol_spec_shared.rb:289:in `each' > # ./spec/binary_protocol_spec_shared.rb:289:in `block (2 levels) in (required)>' > 2) BinaryProtocolAccelerated it should behave like a binary protocol should > perform a complete rpc with a struct return type > Failure/Error: result.should == Fixtures::COMPACT_PROTOCOL_TEST_STRUCT >expected: 127]{*}, > got: 127]{*}, ... (using ==) > (***) only byte_list gets corrupted > Shared Example Group: "a binary protocol" called from > ./spec/binary_protocol_accelerated_spec.rb:28 > # ./spec/binary_protocol_spec_shared.rb:375:in `block (3 levels) in (required)>' > # ./spec/binary_protocol_spec_shared.rb:406:in `call' > # ./spec/binary_protocol_spec_shared.rb:406:in `srv_test' > # ./spec/binary_protocol_spec_shared.rb:370:in `block (2 levels) in (required)>' > 3) Thrift::CompactProtocol should encode and decode naked primitives > correctly > Failure/Error: read_back.should == value >{*}expected: -127{*} > {*}got: 129 (using ==){*} > # ./spec/compact_protocol_spec.rb:45:in `block (4 levels) in (required)>' > # ./spec/compact_protocol_spec.rb:37:in `each' > # ./spec/compact_protocol_spec.rb:37:in `block (3 levels) in (required)>' > # ./spec/compact_protocol_spec.rb:36:in `each_pair' > # ./spec/compact_protocol_spec.rb:36:in `block (2 levels) in (required)>' > 4) Thrift::CompactProtocol should encode and decode primitives in fields > correctly > Failure/Error: read_back.should == value >{*}expected: -127{*} > {*}got: 129 (using ==){*} > # ./spec/compact_protocol_spec.rb:68:in `block (4 levels) in (required)>' > # ./spec/compact_protocol_spec.rb:55:in `each' > # ./spec/compact_protocol_spec.rb:55:in `block (3 levels) in (required)>' > # ./spec/compact_protocol_spec.rb:51:in `each_pair' > # ./spec/compact_protocol_spec.rb:51:in `block (2 levels) in (required)>' > Finished in 5.87 seconds > 364 examples, 4 failures, 1 pending -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1896) Add TBase protocol for Cocoa
[ https://issues.apache.org/jira/browse/THRIFT-1896?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612470#comment-13612470 ] Hudson commented on THRIFT-1896: Integrated in Thrift #633 (See [https://builds.apache.org/job/Thrift/633/]) THRIFT-1896 cocoa: Add TBase protocol for Cocoa (Revision e491d298f09b0a3541a86fec0b9b5499bc3b7baf) Result = ABORTED roger : https://git-wip-us.apache.org/repos/asf?p=thrift.git&a=commit&h=e491d298f09b0a3541a86fec0b9b5499bc3b7baf Files : * compiler/cpp/src/generate/t_cocoa_generator.cc * lib/cocoa/src/protocol/TBase.h > Add TBase protocol for Cocoa > > > Key: THRIFT-1896 > URL: https://issues.apache.org/jira/browse/THRIFT-1896 > Project: Thrift > Issue Type: Improvement > Components: Cocoa - Compiler >Affects Versions: 0.9 >Reporter: Kevin Li >Assignee: Roger Meier >Priority: Minor > Fix For: 1.0 > > Attachments: thrift-1896.patch, thrift-1896-TBase.patch > > > Add TBase protocol for cocoa generator. By having all generated classes > declare conformance of this protocol allows tighter type checking in compile > time. One could use "id" instead of "id" when passing these objects > around. This is also inline with other OO languages' implementation like > csharp, python and php. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1844) Password string not cleared
[ https://issues.apache.org/jira/browse/THRIFT-1844?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612463#comment-13612463 ] Tushar Sudake commented on THRIFT-1844: --- Hi, I would like to take this up. This is the first time I'm contributing to open source in any way. Can I get some guidance here? Especially testing the fix, writing test case files etc. Thanks. > Password string not cleared > --- > > Key: THRIFT-1844 > URL: https://issues.apache.org/jira/browse/THRIFT-1844 > Project: Thrift > Issue Type: Bug > Components: C++ - Library >Affects Versions: 0.9 > Environment: SSL connection with authentication >Reporter: Alexis Wilke > > The function handling the SSL password receives a memory copy of the password > which is then passed down to the OpenSSL library. The intermediate buffer > used to get the password is not cleared one used up. > This is a (rather low) security issue in case a memory scraper was used. The > buffer should be cleared once not necessary anymore. > The current function (in 0.9.0) looks like this: > int TSSLSocketFactory::passwordCallback(char* password, > int size, > int, > void* data) { > TSSLSocketFactory* factory = (TSSLSocketFactory*)data; > string userPassword; > factory->getPassword(userPassword, size); > int length = userPassword.size(); > if (length > size) { > length = size; > } > strncpy(password, userPassword.c_str(), length); > return length; > } > After the strncpy() I would suggest something like this: > for(int i(userPassword.size()); i >= 0; --i) { > userPassword[i] = '*'; > } > Note that we cannot use the variable size because it gets modified and thus > does not represent the whole password size at that point. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (THRIFT-1743) Add composer.json for new Symfony 2.1 Dependency Manager
[ https://issues.apache.org/jira/browse/THRIFT-1743?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13612459#comment-13612459 ] Xavier HAUSHERR commented on THRIFT-1743: - You have to register Thrift twice for PHP: - the PHP Library need to be register at pear.php.net - tHe PHP Extension (thrift_protocol) need to be register at pecl.php.net Both don't need to be registred in Packagist (and don't need composer.json), because Packagist is already able to load Pear dependancies and Pecl requirement (no install) => http://getcomposer.org/doc/05-repositories.md#pear So it's a different problem. If you had them in Pear/Pecl, we don't need any composer.json, because instead of adding requirement "apache/thrift", developer will add "ext-thrift" (Pecl) and "pear/Thrift" Both are not incompatible. I like the two ways (Composer or Pear/Pecl). > Add composer.json for new Symfony 2.1 Dependency Manager > > > Key: THRIFT-1743 > URL: https://issues.apache.org/jira/browse/THRIFT-1743 > Project: Thrift > Issue Type: Improvement >Affects Versions: 0.9 >Reporter: Xavier HAUSHERR >Assignee: Roger Meier > Fix For: 0.9, 1.0 > > Attachments: composer.json > > > In order to use the new Symfony 2.1 Dependency Manager > (http://getcomposer.org/), we have to add on root of Github project a file > called composer.json with Composer configuration. > This file must place in "/" in trunk and in 0.9x branch if possible. > Is it possible to add this file ? > Best regards. > Xavier HAUSHERR -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira