[jira] [Commented] (THRIFT-1600) Thrift Go Compiler and Library out of date with Go 1 Release.
[ https://issues.apache.org/jira/browse/THRIFT-1600?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13612379#comment-13612379 ] Jake Farrell commented on THRIFT-1600: -- Any updates on this? would like to add libthrift-go to the list of available go packages for our next release Thrift Go Compiler and Library out of date with Go 1 Release. - Key: THRIFT-1600 URL: https://issues.apache.org/jira/browse/THRIFT-1600 Project: Thrift Issue Type: Bug Components: Go - Compiler, Go - Library Reporter: Atul S Vasu Attachments: partial.diff, thrift-1600-go1-support.patch.gz Go 1 is a major release of Go that will be stable in the long term. Read the Go 1 Release Notes for more information. http://golang.org/doc/go1.html The current (trunk) compiler and libraries are not compatible with Go1, because of significant changes in the language. The pomack/thrift4go seems a valid patch, but doesn't seem to be pulled into Apache Thrift. Possibly merge the development into one place? https://github.com/pomack/thrift4go -- 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-1838) Can't build compiler on OS X because of missing thrifty.h
[ https://issues.apache.org/jira/browse/THRIFT-1838?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1838. Resolution: Fixed Fix Version/s: 1.0 Automake issue fixed in THRIFT-1614 Can't build compiler on OS X because of missing thrifty.h - Key: THRIFT-1838 URL: https://issues.apache.org/jira/browse/THRIFT-1838 Project: Thrift Issue Type: Bug Components: Compiler (General) Affects Versions: 0.9 Environment: OS X 10.8.2 Thrift trunk bison (GNU Bison) 2.3 flex 2.5.35 Apple(flex-31) Note that I'm using the bison/flex that ship with OS X. Reporter: Diwaker Gupta Assignee: Jake Farrell Fix For: 1.0 Attachments: THRIFT-1838.patch With a clean checkout, run boostrap - configure and try to build the compiler. Fails with: {noformat} /bin/sh ../../ylwrap `test -f 'src/thrifty.yy' || echo './'`src/thrifty.yy y.tab.c thrifty.cc y.tab.h `echo thrifty.cc | sed -e s/cc$/hh/ -e s/cpp$/hpp/ -e s/cxx$/hxx/ -e s /c++$/h++/ -e s/c$/h/` y.output thrifty.output -- bison -y -d updating thrifty.hhg++ -DHAVE_CONFIG_H -I. -I../.. -I./src -Wall -Wno-sign-compare -Wno-unused -g -O2 -MT libparse_a-thrifty.o -MD -MP -MF .deps/libparse_a-thrifty.Tpo -c -o libparse_a-thrifty.o `test -f 'thrifty.cc' || echo './'`thrifty.cc mv -f .deps/libparse_a-thrifty.Tpo .deps/libparse_a-thrifty.Po\ \ /bin/sh ../../ylwrap `test -f 'src/thriftl.ll' || echo './'`src/thriftl.ll lex.yy.c thriftl.cc -- flex g++ -DHAVE_CONFIG_H -I. -I../.. -I./src -Wall -Wno-sign-compare -Wno-unused -g -O2 -MT libparse_a-thriftl.o -MD -MP -MF .deps/libparse_a-thriftl.Tpo -c -o libparse_a-thriftl.o `t est -f 'thriftl.cc' || echo './'`thriftl.cc src/thriftl.ll:51:21: error: thrifty.h: No such file or directory {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] [Closed] (THRIFT-1681) Add Lua Support
[ https://issues.apache.org/jira/browse/THRIFT-1681?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1681. Resolution: Later Fix Version/s: 1.0 Assignee: Jake Farrell Closing. if anyone would like to submit a patch for a lua client please see http://thrift.apache.org/docs/HowToContribute/ for details on contributing Add Lua Support --- Key: THRIFT-1681 URL: https://issues.apache.org/jira/browse/THRIFT-1681 Project: Thrift Issue Type: Improvement Components: Compiler (General) Reporter: Daurn Imator Assignee: Jake Farrell Labels: language, lua Fix For: 1.0 I'd love to see a lua library for Thift. -- 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-514) Add option to configure compiler output directory
[ https://issues.apache.org/jira/browse/THRIFT-514?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-514. --- Resolution: Fixed Fix Version/s: 0.9 1.0 Assignee: Jake Farrell Added -out support to compiler in previous ticket -o dir Set the output directory for gen-* packages (default: current directory) Add option to configure compiler output directory - Key: THRIFT-514 URL: https://issues.apache.org/jira/browse/THRIFT-514 Project: Thrift Issue Type: New Feature Components: Compiler (General) Environment: Thrift SVN revision 752489 from trunk. Reporter: Mike Heffner Assignee: Jake Farrell Priority: Minor Fix For: 1.0, 0.9 Attachments: thrift_514_gendir.diff, thrift_514_noclobber_init.diff I would like to change the output directory the compiler uses. For example, compiling to Python uses gen-py as the output directory and there is currently no option to change that. Suggest adding an option to specify the output directory. This can alleviate some issues when integrating auto-generation into Makefile build infrastructures. Suggestions from Michael Greene on thrift-dev@: Mike, If you're feeling adventurous, you can change it in your own copy--each of the generators supplies its own output directory name. For example, see the assignment out_dir_base_ = gen-py; in the constructor of http://svn.apache.org/repos/asf/incubator/thrift/trunk/compiler/cpp/src/generate/t_py_generator.cc -- 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-985) php: add version Info to the library
[ https://issues.apache.org/jira/browse/THRIFT-985?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-985. --- Resolution: Fixed Fix Version/s: 1.0 Adding composer.json in THRIFT-1743 resolves this php: add version Info to the library Key: THRIFT-985 URL: https://issues.apache.org/jira/browse/THRIFT-985 Project: Thrift Issue Type: Sub-task Components: PHP - Library Reporter: Roger Meier 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] [Closed] (THRIFT-1614) Thrift build from svn repo sources fails with automake-1.12
[ https://issues.apache.org/jira/browse/THRIFT-1614?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1614. Resolution: Fixed Fix Version/s: 1.0 Thrift build from svn repo sources fails with automake-1.12 --- Key: THRIFT-1614 URL: https://issues.apache.org/jira/browse/THRIFT-1614 Project: Thrift Issue Type: Bug Components: Build Process Affects Versions: 0.9 Environment: Reproduced on OS X 10.7 with homebrew automake-1.12 Reporter: Andrew Cox Assignee: Jake Farrell Fix For: 1.0 Attachments: thrift-1614-automake-yacc-naming.patch The yacc.am included in automake-1.12 creates the file thrifty.hh instead of thrifty.h, but the generated file thriftl.cc includes thrifty.h. Problem goes away when I downgrade automake to 1.11.5 -- 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-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:all-tabpanel ] Jake Farrell closed THRIFT-1859. Resolution: Fixed Fix Version/s: 1.0 Modified patch to fix const error and committed. 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] [Closed] (THRIFT-986) st: add version Info to the library
[ https://issues.apache.org/jira/browse/THRIFT-986?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-986. --- Resolution: Fixed Fix Version/s: 1.0 Assignee: Jake Farrell Added a package.xml file containing a version within the header comments. Smalltalk packages have no concept of versions within the 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] [Closed] (THRIFT-930) Ruby and Haskell bindings don't properly support DESTDIR (makes packaging painful)
[ https://issues.apache.org/jira/browse/THRIFT-930?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-930. --- Resolution: Fixed Fix Version/s: 1.0 Assignee: Jake Farrell (was: Christian Lavoie) Closing as gem install will place in correct location Ruby and Haskell bindings don't properly support DESTDIR (makes packaging painful) -- Key: THRIFT-930 URL: https://issues.apache.org/jira/browse/THRIFT-930 Project: Thrift Issue Type: Bug Components: Haskell - Library, Ruby - Library Reporter: Christian Lavoie Assignee: Jake Farrell Fix For: 1.0 Anthony Molinar has this to say on a different thread: One thing which is likely an issue to be addressed at some point is that I doubt 'make DESTDIR=/tmp install' will work, so people packaging with rpm/deb will most likely have to disable haskell until that is fixed, but not a big enough deal to stop inclusion (besides ruby also has this problem). -- 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-1715) Allow excluding python parts when building contrib/fb303
[ https://issues.apache.org/jira/browse/THRIFT-1715?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1715. Resolution: Fixed Fix Version/s: 1.0 Assignee: Jake Farrell Updated patch to include php and java and added following output to configure Building C++ Library . : yes Building Java Library : yes Building Python Library .. : yes Building PHP Library . : yes 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] [Closed] (THRIFT-1778) Configure requires manual intervention due to tar failure
[ https://issues.apache.org/jira/browse/THRIFT-1778?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1778. Resolution: Not A Problem Fix Version/s: 1.0 Using bsdtar should resolve this problem for you or switch configure.ac to AM_INIT_AUTOMAKE([1.9 tar-ustar]) to AM_INIT_AUTOMAKE([1.9 tar-pax]) Configure requires manual intervention due to tar failure - Key: THRIFT-1778 URL: https://issues.apache.org/jira/browse/THRIFT-1778 Project: Thrift Issue Type: Bug Components: Build Process Affects Versions: 0.8, 0.9 Environment: Fedora 16 Reporter: Bill Katz Assignee: Jake Farrell Fix For: 1.0 On configure, manual intervention is required where pax is unable to identify the format and user must enter . to quit pax. Problem is upstream in configure file. Here is pertinent snippet from config.log: configure:3482: $? = 0 configure:3522: tardir=conftest.dir eval tar --format=ustar -chf - $tardir conftest.tar tar: value 9900322 out of uid_t range 0..2097151 tar: Exiting with failure status due to previous errors This issue was noted in some other software as well: http://pl.digipedia.org/usenet/thread/11269/17209/ -- 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-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:all-tabpanel ] Jake Farrell closed THRIFT-1804. Resolution: Fixed Fix Version/s: 1.0 Assignee: Elias Karakoulakis Thanks for the patch, committed 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 top (required)' # ./spec/binary_protocol_spec_shared.rb:289:in `each' # ./spec/binary_protocol_spec_shared.rb:289:in `block (2 levels) in top (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: CompactProtoTestStruct ... {*}byte_list:[-127, -1, 0, 1, 127]{*}, got: CompactProtoTestStruct ... {*}byte_list:[129, 255, 0, 1, 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 top (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 top (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 top (required)' # ./spec/compact_protocol_spec.rb:37:in `each' # ./spec/compact_protocol_spec.rb:37:in `block (3 levels) in top (required)' # ./spec/compact_protocol_spec.rb:36:in `each_pair' # ./spec/compact_protocol_spec.rb:36:in `block (2 levels) in top (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 top (required)' # ./spec/compact_protocol_spec.rb:55:in `each' # ./spec/compact_protocol_spec.rb:55:in `block (3 levels) in top (required)' # ./spec/compact_protocol_spec.rb:51:in `each_pair' # ./spec/compact_protocol_spec.rb:51:in `block (2 levels) in top (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] [Closed] (THRIFT-1756) 'make -j 8' fails with unterminated #ifdef error
[ https://issues.apache.org/jira/browse/THRIFT-1756?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1756. Resolution: Cannot Reproduce Fix Version/s: 1.0 Using the latest version of mountain lion and xcode i am not able to reproduce the error compiling the cpp lib or test cases. All compile fine with 'make -j 8' 'make -j 8' fails with unterminated #ifdef error -- Key: THRIFT-1756 URL: https://issues.apache.org/jira/browse/THRIFT-1756 Project: Thrift Issue Type: Bug Components: Build Process Affects Versions: 0.9 Environment: OSX 10.7.4 Reporter: Vitali Lovich Assignee: Jake Farrell Fix For: 1.0 Attachments: thrift.log If I run 'make' in 1 thread Thrift builds fine. But if I cleanrun it with 16 threads the build process fails almost constantly with following error {noformat} g++ -DHAVE_CONFIG_H -I. -I../../.. -I../../../lib/cpp/src -I/usr/include -Wall -g -O2 -MT Benchmark.o -MD -MP -MF .deps/Benchmark.Tpo -c -o Benchmark.o Benchmark.cpp /bin/sh ../../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I../../.. -I../../../lib/cpp/src -I/usr/include -Wall -g -O2 -MT OptionalRequiredTest_types.lo -MD -MP -MF .deps/OptionalRequiredTest_types.Tpo -c -o OptionalRequiredTest_types.lo `test -f 'gen-cpp/OptionalRequiredTest_types.cpp' || echo './'`gen-cpp/OptionalRequiredTest_types.cpp /bin/sh ../../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I../../.. -I../../../lib/cpp/src -I/usr/include -Wall -g -O2 -MT ThriftTest_types.lo -MD -MP -MF .deps/ThriftTest_types.Tpo -c -o ThriftTest_types.lo `test -f 'gen-cpp/ThriftTest_types.cpp' || echo './'`gen-cpp/ThriftTest_types.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../.. -I../../../lib/cpp/src -I/usr/include -Wall -g -O2 -MT DebugProtoTest_extras.lo -MD -MP -MF .deps/DebugProtoTest_extras.Tpo -c DebugProtoTest_extras.cpp -fPIC -DPIC -o .libs/DebugProtoTest_extras.o /bin/sh ../../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I../../.. -I../../../lib/cpp/src -I/usr/include -Wall -g -O2 -MT DebugProtoTest_types.lo -MD -MP -MF .deps/DebugProtoTest_types.Tpo -c -o DebugProtoTest_types.lo `test -f 'gen-cpp/DebugProtoTest_types.cpp' || echo './'`gen-cpp/DebugProtoTest_types.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../.. -I../../../lib/cpp/src -I/usr/include -Wall -g -O2 -MT OptionalRequiredTest_types.lo -MD -MP -MF .deps/OptionalRequiredTest_types.Tpo -c gen-cpp/OptionalRequiredTest_types.cpp -fPIC -DPIC -o .libs/OptionalRequiredTest_types.o In file included from DebugProtoTest_extras.cpp:22: gen-cpp/DebugProtoTest_types.h:6:1: error: unterminated #ifndef libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../.. -I../../../lib/cpp/src -I/usr/include -Wall -g -O2 -MT ThriftTest_extras.lo -MD -MP -MF .deps/ThriftTest_extras.Tpo -c ThriftTest_extras.cpp -fPIC -DPIC -o .libs/ThriftTest_extras.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../.. -I../../../lib/cpp/src -I/usr/include -Wall -g -O2 -MT ThriftTest_types.lo -MD -MP -MF .deps/ThriftTest_types.Tpo -c gen-cpp/ThriftTest_types.cpp -fPIC -DPIC -o .libs/ThriftTest_types.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../.. -I../../../lib/cpp/src -I/usr/include -Wall -g -O2 -MT DebugProtoTest_types.lo -MD -MP -MF .deps/DebugProtoTest_types.Tpo -c gen-cpp/DebugProtoTest_types.cpp -fPIC -DPIC -o .libs/DebugProtoTest_types.o DebugProtoTest_extras.cpp:27: error: definition of 'bool thrift::test::debug::Empty::operator(const thrift::test::debug::Empty) const' is not in namespace enclosing 'thrift::test::debug::Empty' DebugProtoTest_extras.cpp:33: error: expected '}' at end of input DebugProtoTest_extras.cpp:33: error: expected '}' at end of input DebugProtoTest_extras.cpp:33: error: expected '}' at end of input make[4]: *** [DebugProtoTest_extras.lo] Error 1 make[4]: *** Waiting for unfinished jobs {noformat} The file ./lib/cpp/test/gen-cpp/DebugProtoTest_types.h looks ok. Now if I run 'make -j 16' once again - everything builds fine. It makes me think that this is a concurrency issue in Makefiles. My only guess is this is some undeclared dependency. It looks like DebugProtoTest_extras.cpp started building before gen-cpp/DebugProtoTest_types.h generation ended. -- 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-1823) Missing parenthesis breaks IS_... macro in generated code
[ https://issues.apache.org/jira/browse/THRIFT-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1823. Resolution: Fixed Fix Version/s: 1.0 Assignee: Simon South Thanks for the patch, committed 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-1882) Use single include
[ https://issues.apache.org/jira/browse/THRIFT-1882?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13611939#comment-13611939 ] Jake Farrell commented on THRIFT-1882: -- Hi Evan, thanks for the work on this patch. we currently do not accept patches via github, can you please attach your patch to this ticket using the More Actions Attach Files from the menu above. Please see http://thrift.apache.org/docs/HowToContribute/ and if you have any questions glad to answer. Use single include -- Key: THRIFT-1882 URL: https://issues.apache.org/jira/browse/THRIFT-1882 Project: Thrift Issue Type: Improvement Components: C glib - Library Reporter: Evan Nemerson Priority: Minor Currently, when using thrift_c_glib you have to include several headers. It would be nice if you could just include a single header, which would then include the other headers for you. Most projects I'm aware of, particularly those based on glib and gobject like thrift_c_glib is, use this method exclusively. It offers more flexibility by allowing the library to occasionally reorganize its headers and is much easier for consumers to deal with. Note this is particularly important for Vala bindings which are not distributed with the library they bind (https://live.gnome.org/Vala/UpstreamGuide#C_Headers). I've created a patch which will have thrift/c_glib/thrift.h include all other necessary headers, and issue a warning if headers other than thrift/c_glib/thrift.h are included. This touches the compiler as well, but I think the library component is a more appropriate place for the bug. I don't see anywhere to actually attach a patch (maybe it's coming after I click Create), so if nothing else you can find the patch here: https://github.com/nemequ/thrift/commit/a24b256c62ea65890f19f4a93f582ee6c35da53c -- 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-1828) moc_TQTcpServer.cpp was removed from source tree but is in thrift-0.9.0.tar.gz
[ https://issues.apache.org/jira/browse/THRIFT-1828?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13611949#comment-13611949 ] Jake Farrell commented on THRIFT-1828: -- the cpp libraries Makefile under libthriftqt_la_SOURCES includes libthriftqt_la_MOC which contains the moc_TQTcpServer.cpp file. All sources defined are included in the distribution when making a release which is how the moc file is getting included. initial thought would be to add the moc generation to .PHONY to force run every time moc_TQTcpServer.cpp was removed from source tree but is in thrift-0.9.0.tar.gz -- Key: THRIFT-1828 URL: https://issues.apache.org/jira/browse/THRIFT-1828 Project: Thrift Issue Type: Bug Components: C++ - Library Affects Versions: 0.9 Environment: CentOS 6.3 w/Qt 4.6.2 Reporter: David Rennalls Priority: Minor When attempting to build the the 0.9.0 cpp library I get the following error ... src/thrift/qt/moc_TQTcpServer.cpp:14:2: error: #error This file was generated using the moc from 4.8.1. It src/thrift/qt/moc_TQTcpServer.cpp:15:2: error: #error cannot be used with the include files from this version of Qt. src/thrift/qt/moc_TQTcpServer.cpp:16:2: error: #error (The moc has changed too much.) ... As far as I can tell when the C++ QT Bindings were added (see https://issues.apache.org/jira/browse/THRIFT-1348) that file was removed since it was an auto-generated file and shouldn't be in source control. However although it's no longer in the source tree it's being included in the release .tar.gz [/tmp]$ wget -q https://dist.apache.org/repos/dist/release/thrift/0.9.0/thrift-0.9.0.tar.gz -O - | tar tzvf - | grep moc_ -rw-r--r-- root/root 3311 2012-10-11 21:00 thrift-0.9.0/lib/cpp/src/thrift/qt/moc_TQTcpServer.cpp So if the version of Qt that's installed when building is different than the one used to generate the file in the release .tar.gz the build will break. Another user seems to have run into this as well, see http://mail-archives.apache.org/mod_mbox/thrift-user/201212.mbox/%3C002f01cdd2aa$c7f3a840$57daf8c0$@asiainfo-linkage.com%3E As a workaround I have to either remove the file before building or specify --with-qt4=no -- 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] [Assigned] (THRIFT-1828) moc_TQTcpServer.cpp was removed from source tree but is in thrift-0.9.0.tar.gz
[ https://issues.apache.org/jira/browse/THRIFT-1828?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell reassigned THRIFT-1828: Assignee: Jake Farrell moc_TQTcpServer.cpp was removed from source tree but is in thrift-0.9.0.tar.gz -- Key: THRIFT-1828 URL: https://issues.apache.org/jira/browse/THRIFT-1828 Project: Thrift Issue Type: Bug Components: C++ - Library Affects Versions: 0.9 Environment: CentOS 6.3 w/Qt 4.6.2 Reporter: David Rennalls Assignee: Jake Farrell Priority: Minor When attempting to build the the 0.9.0 cpp library I get the following error ... src/thrift/qt/moc_TQTcpServer.cpp:14:2: error: #error This file was generated using the moc from 4.8.1. It src/thrift/qt/moc_TQTcpServer.cpp:15:2: error: #error cannot be used with the include files from this version of Qt. src/thrift/qt/moc_TQTcpServer.cpp:16:2: error: #error (The moc has changed too much.) ... As far as I can tell when the C++ QT Bindings were added (see https://issues.apache.org/jira/browse/THRIFT-1348) that file was removed since it was an auto-generated file and shouldn't be in source control. However although it's no longer in the source tree it's being included in the release .tar.gz [/tmp]$ wget -q https://dist.apache.org/repos/dist/release/thrift/0.9.0/thrift-0.9.0.tar.gz -O - | tar tzvf - | grep moc_ -rw-r--r-- root/root 3311 2012-10-11 21:00 thrift-0.9.0/lib/cpp/src/thrift/qt/moc_TQTcpServer.cpp So if the version of Qt that's installed when building is different than the one used to generate the file in the release .tar.gz the build will break. Another user seems to have run into this as well, see http://mail-archives.apache.org/mod_mbox/thrift-user/201212.mbox/%3C002f01cdd2aa$c7f3a840$57daf8c0$@asiainfo-linkage.com%3E As a workaround I have to either remove the file before building or specify --with-qt4=no -- 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-tabpanelfocusedCommentId=13611966#comment-13611966 ] Jake Farrell commented on THRIFT-984: - I'm not very familiar with ocaml, but looking into this we should be able to add an _oasis file in the lib/ocaml folder and it should work with contents something like the following. If someone can verify that this is good i'll add to the release process Name:libthrift-ocaml Version: 1.0 OASISFormat: 0.3.0 Synopsis:OCaml bindings for the Apache Thrift RPC system Authors: Apache Thrift Developers dev@thrift.apache.org License: Apache-2.0 Homepage:http://thrift.apache.org Library libthrift-ocaml Path: src 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 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-123) implement TZlibTransport in Java
[ https://issues.apache.org/jira/browse/THRIFT-123?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13610980#comment-13610980 ] Jake Farrell commented on THRIFT-123: - In addition to the pom (currently generated from build.xml) the NOTICE and LICENSE files will have to be updated to reflect the use of this library as jzlib is BSD licensed. implement TZlibTransport in Java Key: THRIFT-123 URL: https://issues.apache.org/jira/browse/THRIFT-123 Project: Thrift Issue Type: New Feature Components: Java - Library Reporter: Pete Wyckoff Priority: Minor Attachments: thrift_java_tzlibtransport_added.patch TZlibTransport compatible with C++ version of TZlibTransport -- 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-123) implement TZlibTransport in Java
[ https://issues.apache.org/jira/browse/THRIFT-123?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13611009#comment-13611009 ] Jake Farrell commented on THRIFT-123: - Thinking a little bit more on this I would suggest that we make this transport a separate jar (libthrift-transport-zlib) to help keep the base java library with less dependencies and also not require people who are not using the zlib transport to have the additional unnecessary dependency. Would be nice to get some test cases added to this as well. Roger, your thoughts on this? implement TZlibTransport in Java Key: THRIFT-123 URL: https://issues.apache.org/jira/browse/THRIFT-123 Project: Thrift Issue Type: New Feature Components: Java - Library Reporter: Pete Wyckoff Priority: Minor Attachments: thrift_java_tzlibtransport_added.patch TZlibTransport compatible with C++ version of TZlibTransport -- 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-1888) Java Thrift client can't connect to Python Thrift server on same host
[ https://issues.apache.org/jira/browse/THRIFT-1888?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1888. Resolution: Cannot Reproduce Fix Version/s: 1.0 Assignee: Jake Farrell This exception typically references no server listening on that ip:port. Closing with not enough information, if you can upload the the test server and client you where using i'll gladly repoen the ticket and take a look at it Java Thrift client can't connect to Python Thrift server on same host - Key: THRIFT-1888 URL: https://issues.apache.org/jira/browse/THRIFT-1888 Project: Thrift Issue Type: Bug Components: Python - Compiler Affects Versions: 0.9 Environment: Windows 7, Python 2.7.3, Java 1.7.0_11 Reporter: Shymal Raj Assignee: Jake Farrell Priority: Critical Fix For: 1.0 I have a very simple thrift server written in Python and a corresponding client in Java. I keep getting a connection refused error when I try to connect to the Python server from the Java client (see error below). However, I am able to connect to the Python server using a Python client. And if I run the Python server on a remote machine, then I am able to connect to it from the Java client. However, for my use case, both need to be on the same host. I think this was working in 0.8.0. org.apache.thrift.transport.TTransportException: java.net.ConnectException: Connection refused: connect at org.apache.thrift.transport.TSocket.open(TSocket.java:185) at org.apache.thrift.transport.TFramedTransport.open(TFramedTransport.java:81) Caused by: java.net.ConnectException: Connection refused: connect at java.net.DualStackPlainSocketImpl.connect0(Native Method) at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:69) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200) at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:157) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391) at java.net.Socket.connect(Socket.java:579) at org.apache.thrift.transport.TSocket.open(TSocket.java:180) ... 18 more -- 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-1854) trove support for lists of primitives
[ https://issues.apache.org/jira/browse/THRIFT-1854?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13611040#comment-13611040 ] Jake Farrell commented on THRIFT-1854: -- We have tried to keep the core java library as lean and dependency free as possible to allow for the library to be able to be plugged into any application easily. Guava was considered and not used due to this reason trove support for lists of primitives - Key: THRIFT-1854 URL: https://issues.apache.org/jira/browse/THRIFT-1854 Project: Thrift Issue Type: New Feature Components: Java - Compiler Reporter: Vitali Lovich Attachments: 0001-adding-support-to-use-Trove-0.9-lists-for-lists.patch, 0001-adding-support-to-use-Trove-lists-for-lists.patch When dealing with large collections of primitive types, there can be significant memory (i.e. using arrays of objects instead of arrays of primitives) runtime overhead (autoboxing/unboxing) using the default collections. Utilizing trove can significantly improve things. ideally support would be added for sets maps, but as a first pass lists would be great. -- 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-tabpanelfocusedCommentId=13611358#comment-13611358 ] Jake Farrell commented on THRIFT-1743: -- I think it would be great to have, just not at the top level of the project as it is php specific. I would like to see it in the lib/php folder and when making a release we can package it up separately similar to what is done for ruby, java and python 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
[jira] [Commented] (THRIFT-1876) Use enum names instead of casted integers in assignments
[ https://issues.apache.org/jira/browse/THRIFT-1876?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13598337#comment-13598337 ] Jake Farrell commented on THRIFT-1876: -- Patch looks good, go ahead and commit Use enum names instead of casted integers in assignments Key: THRIFT-1876 URL: https://issues.apache.org/jira/browse/THRIFT-1876 Project: Thrift Issue Type: Improvement Components: Delphi - Compiler Reporter: Jens Geyer Assignee: Jens Geyer Fix For: 1.0 Attachments: THRIFT-1876_Use_enum_names_instead_of_casted_integers_in_assignments.patch Same as in THRIFT-1318 with C#. It makes more sense to write {code} Self.Property = TMyEnumType.SomeValue; {code} instead of the C-ish casting style like in {code} Self.Property = TMyEnumType(-42); {code} And since it seems not to be possible to assign values other than the IDL-defined enum values, there is no reason left to use the cast. -- 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-1629) Ruby 1.9 Compatibility during Thrift configure, make, install
[ https://issues.apache.org/jira/browse/THRIFT-1629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1629. Resolution: Fixed Fix Version/s: 1.0 Assignee: Nick Zalabak (was: Jake Farrell) Committed, thanks Nick Ruby 1.9 Compatibility during Thrift configure, make, install - Key: THRIFT-1629 URL: https://issues.apache.org/jira/browse/THRIFT-1629 Project: Thrift Issue Type: Improvement Components: Ruby - Library Affects Versions: 0.8 Environment: Mac OSX, *nix Reporter: Nick Zalabak Assignee: Nick Zalabak Fix For: 1.0 Attachments: thrift-1629-ruby-thin-webserver.patch I downloaded the 0.8 stable version of Thrift and began by performing the configure, make tasks. It appears that this version of Thrift is not compatible with Ruby 1.9. The problem encountered is that Ruby library inside Thrift includes the Mongrel web server. Mongrel does not work with Ruby 1.9. A drop in replacement for Mongrel is the Thin web server, and there are also several other choices. I have submitted a pull request via Github to resolve this matter. https://github.com/apache/thrift/pull/23 Thanks. Nick Zalabak @techwhizbang -- 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-1629) Ruby 1.9 Compatibility during Thrift configure, make, install
[ https://issues.apache.org/jira/browse/THRIFT-1629?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13591603#comment-13591603 ] Jake Farrell commented on THRIFT-1629: -- Nick, any updates on this patch? Ruby 1.9 Compatibility during Thrift configure, make, install - Key: THRIFT-1629 URL: https://issues.apache.org/jira/browse/THRIFT-1629 Project: Thrift Issue Type: Improvement Components: Ruby - Library Affects Versions: 0.8 Environment: Mac OSX, *nix Reporter: Nick Zalabak Assignee: Jake Farrell I downloaded the 0.8 stable version of Thrift and began by performing the configure, make tasks. It appears that this version of Thrift is not compatible with Ruby 1.9. The problem encountered is that Ruby library inside Thrift includes the Mongrel web server. Mongrel does not work with Ruby 1.9. A drop in replacement for Mongrel is the Thin web server, and there are also several other choices. I have submitted a pull request via Github to resolve this matter. https://github.com/apache/thrift/pull/23 Thanks. Nick Zalabak @techwhizbang -- 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-1264) TSocketClient is queried by run loop after deallocation in Cocoa
[ https://issues.apache.org/jira/browse/THRIFT-1264?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1264. Resolution: Fixed Fix Version/s: 1.0 Committed, Thanks for the patch TSocketClient is queried by run loop after deallocation in Cocoa Key: THRIFT-1264 URL: https://issues.apache.org/jira/browse/THRIFT-1264 Project: Thrift Issue Type: Bug Components: Cocoa - Library Affects Versions: 0.7, 0.9 Environment: iPad, iOS SDK 4.3, iOS SDK 5.1 Reporter: Jan Rüth Priority: Critical Fix For: 1.0, 0.9 Attachments: THRIFT-1264.diff, TSocketClient.m When using TSocketClient in a Cocoa client and correctly managing the memory: {code:title=Server.m|borderStyle=solid} - (id)initWithServer:(NSString*)server port:(NSInteger)port { self = [super init]; if (self) { TSocketClient *transport = [[TSocketClient alloc] initWithHostname:server port:port]; TBinaryProtocol *protocol = [[TBinaryProtocolFactory sharedFactory] newProtocolOnTransport:transport]; Client *client = [[Client alloc] initWithProtocol:protocol]; // self.client is a retained property self.client = client; [client release]; [protocol release]; [transport release]; } return self; } - (void)dealloc { self.client = nil; [super dealloc]; } {code} (maybe this should be fixed in the cocoa example, memory management is erroneous there) After successfully releasing the object with the code above. One gets a EXC_BAD_ACCESS signal because the runloop send a responseToSelector: message to our object. With the selector stream:handleEvent: This all leads to TSocketClient which opens two NSStream objects and delegates it self to both, afterwards both Streams are scheduled in the runloop, which should actually notify the delegate when something happens to the stream like data is available, this obviously results in the runloop asking TSocketClient for previously described selector. However this mechanism is not used, the TNSStreamTransport class is subclassed and responsible for read/write. So why are the Streams schedules in the run loop in the first place? Why are the streams not closed and released when the object gets deallocated? I could fix this behavior by implementing a dealloc method in TSocketClient and making the Streams member variables {code:title=TSocketClient.h|borderStyle=solid} @interface TSocketClient : TNSStreamTransport { NSInputStream * inputStream; NSOutputStream * outputStream; } {code} {code:title=TSocketClient.m|borderStyle=solid} -(void)dealloc { [inputStream close]; [outputStream close]; [inputStream release]; [outputStream release]; [super dealloc]; } {code} However I still don't know if that is the right way. Suggestions? Edit: The bug is still present in 0.9 I attached a TSocketClient.m that fixes this Problem, the TSocketClient also keeps track of the streams and upon deallocation it closes the stream, removes it from the runloop and releases it (if arc is not enabled). This also removes a bug in non-arc environment that where the streams have a retaincount of +1 after deallocation such that the bug described here won't occur and the streams leak memory -- 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-1795) Race condition in TThreadedServerPool java implementation
[ https://issues.apache.org/jira/browse/THRIFT-1795?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13586692#comment-13586692 ] Jake Farrell commented on THRIFT-1795: -- Next release will be versioned at 9.1 or 1.0 depending on whats contained within that release. I'm assuming that FLUME-917 is a blocker for this Race condition in TThreadedServerPool java implementation - Key: THRIFT-1795 URL: https://issues.apache.org/jira/browse/THRIFT-1795 Project: Thrift Issue Type: Bug Components: Java - Library Affects Versions: 0.6.1, 0.7, 0.8, 0.9 Environment: RHEL 5.x derivatives, SUSE linux are the systems where this is intermittently reproducible Reporter: Venkat Ranganathan Assignee: Roger Meier Attachments: Thrift-1795.diff While running unit tests on flume[1], it was discovered that there have been intermittent failures on Redhat Linux 5.x derivatives and SUSE Linux environments (or the failures where more pronounced in those environments). While trying to debug this issue and removing Flume specific issues, I think there is a race condition in Thrift TThreadPool server implementation. We can reduce the problem to the basic issue The server is written in as below in its serve() method stopped_ = false while (!stopped_) try serve request except log message The stop method (executed typically from another thread) is implemented thus stopped_ = false interrupt and cleanup server transport The basic thought is that stopped_ being volatile, the writes to stopped_ will always be seen by the reading thread and there is no other synchronization required, essentially relying on the JSR 133 volatile description. The problem is that there is no check in the server run method whether it was asked to stop or not For example, the Flume unit test, once again reduced to what is needed for this discussion, does the following for testing the flume source lifecycle server.start -- which means starting a thread, whose run method will call TThreadPoolServer.serve described above server.stop It so happens that on Redhat Linux 5.x systems or more specifically with Linux kernels before the CFQ scheduler, there is a higher chance that server.stop can run before server thread's serve method is invoked. This means that the setting of stopped_ flag in the stop method is overwritten in the serve method.This causes the server to enter an infinite loop and eventually, the test timeout kicks in There is an easy fix - just set stopped_ to false in the constructor. But then it probably violates the contract on the state of a constructed server object. I see that in couple of other TServer implementations, stopped_ is initialize to true and only during the listen processing, stopped_ is set to false. If preserving this semantics is important, we should introduce another volatile variable (say started_), and carefully set started_ and stopped_ in places where we are not sure stopped_ might be overwritten, and check for both flags also in key locations (right after a thread starts with the server() method. This same issue can be evidenced in other variations of TServer implementations also. I can provide a patch if it is agreed that this is a bug that needs to be fixed. I can create a patch introducing a new started_ flag (which respects the current behavior in some of the classes where stopped_ is initialized to true), or initialize the Servers to initialize stopped_ to false and then not reset the stopped_ flag during the server execution (which is simplere and easy to fix, but makes a server just constructed to be not in stopped state). I don't know how important it is to maintain that behavior or if there is any reliance on that behavior Thanks Venkat -- 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-1791) thrift's namespace directive when generating haskell code
[ https://issues.apache.org/jira/browse/THRIFT-1791?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13581764#comment-13581764 ] Jake Farrell commented on THRIFT-1791: -- I closed the issue due to it being labeled a question. The haskell generator as of 0.9 and the dev snapshot does not currently use the namespace directive, a patch for this would be great or please feel free to create a new ticket for someone to take a look at adding it thrift's namespace directive when generating haskell code - Key: THRIFT-1791 URL: https://issues.apache.org/jira/browse/THRIFT-1791 Project: Thrift Issue Type: Question Components: Haskell - Compiler Affects Versions: 0.9 Environment: linux/fedora17 Reporter: Tomasz Kupczyk Priority: Minor Fix For: 1.0 Hello, I was wondering what effect has the namespace directive, or what effect should it have, when generating haskell code, let's assume I have a product.thrift file: namespace hs A.B.C struct Product { 1: i32 cost } Should this generate a haskell file that creates a module like this: module Product where [...] or like this: module A.B.C.Product where [...] For me it picks the first version. 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-1856) different comments generated on OSX vs Linux/Windows
[ https://issues.apache.org/jira/browse/THRIFT-1856?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13580935#comment-13580935 ] Jake Farrell commented on THRIFT-1856: -- On OS X the Maps key and value where being marked with required and optional comments within the serialize and deserialize functions, on linux the lex compiler is setting the optional flag on maps value field differently. The patch moved the optional or required comment to only be in the initial declaration of the variables defined in the idl and removes the comments from internally generated variables. different comments generated on OSX vs Linux/Windows Key: THRIFT-1856 URL: https://issues.apache.org/jira/browse/THRIFT-1856 Project: Thrift Issue Type: Bug Components: Java - Compiler Affects Versions: 0.9, 1.0 Environment: OSX 10.7 Ubuntu 12.04 Reporter: Vitali Lovich Assignee: Jake Farrell Attachments: mytest.thrift, Test.java.linux, Test.java.osx Compiling the same thrift definition on OSX Linux produces two slightly different outputs. Since our thrift files are committed in the repository, it makes it annoying to develop on OSX. -- 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-1791) thrift's namespace directive when generating haskell code
[ https://issues.apache.org/jira/browse/THRIFT-1791?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1791. Resolution: Fixed Fix Version/s: 1.0 The haskell generator does not currently use the namespace directive, if you would like to submit a patch for it to be used please see http://thrift.apache.org/docs/HowToContribute/ thrift's namespace directive when generating haskell code - Key: THRIFT-1791 URL: https://issues.apache.org/jira/browse/THRIFT-1791 Project: Thrift Issue Type: Question Components: Haskell - Compiler Affects Versions: 0.9 Environment: linux/fedora17 Reporter: Tomasz Kupczyk Priority: Minor Fix For: 1.0 Hello, I was wondering what effect has the namespace directive, or what effect should it have, when generating haskell code, let's assume I have a product.thrift file: namespace hs A.B.C struct Product { 1: i32 cost } Should this generate a haskell file that creates a module like this: module Product where [...] or like this: module A.B.C.Product where [...] For me it picks the first version. 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] [Closed] (THRIFT-1764) how to get the context of client when on a rpc call in server side?
[ https://issues.apache.org/jira/browse/THRIFT-1764?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1764. Resolution: Not A Problem Fix Version/s: 1.0 Please ask questions like this on the dev mailing list or on irc how to get the context of client when on a rpc call in server side? --- Key: THRIFT-1764 URL: https://issues.apache.org/jira/browse/THRIFT-1764 Project: Thrift Issue Type: Question Components: C++ - Library Affects Versions: 0.9 Environment: none Reporter: evensonliu Labels: features, rpc Fix For: 1.0 1. how to get the context of the client when on a rpc call in server side? 2. how to bind the socket to the ip specified in a multiple NIC environment? 3. does thrift support message reflections in c++? -- 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-1856) different comments generated on OSX vs Linux/Windows
[ https://issues.apache.org/jira/browse/THRIFT-1856?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1856. Resolution: Fixed Committed fix for this issue commit 1af5728 different comments generated on OSX vs Linux/Windows Key: THRIFT-1856 URL: https://issues.apache.org/jira/browse/THRIFT-1856 Project: Thrift Issue Type: Bug Components: Java - Compiler Affects Versions: 0.9, 1.0 Environment: OSX 10.7 Ubuntu 12.04 Reporter: Vitali Lovich Assignee: Jake Farrell Attachments: mytest.thrift, Test.java.linux, Test.java.osx Compiling the same thrift definition on OSX Linux produces two slightly different outputs. Since our thrift files are committed in the repository, it makes it annoying to develop on OSX. -- 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-1770) Killing a thrift 0.8 server with telnet
[ https://issues.apache.org/jira/browse/THRIFT-1770?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1770. Resolution: Not A Problem Killing a thrift 0.8 server with telnet Key: THRIFT-1770 URL: https://issues.apache.org/jira/browse/THRIFT-1770 Project: Thrift Issue Type: Bug Reporter: oliver z Priority: Critical I have a thrift 0.8 server running which is very easy to kill from outside of the network. Simply telnet to it and type some random chars in it like asdf - thats enough to kill the server with a OOM exception: 10:12:40.461 [Thread-1] [ERROR] o.a.t.server.THsHaServer - run() exiting due to uncaught error java.lang.OutOfMemoryError: Java heap space at java.nio.HeapByteBuffer.init(Unknown Source) ~[na:1.7.0_04] at java.nio.ByteBuffer.allocate(Unknown Source) ~[na:1.7.0_04] at org.apache.thrift.server.AbstractNonblockingServer$FrameBuffer.read(AbstractNonblockingServer.java:338) ~[libthrift-0.8.0.jar:0.8.0] at org.apache.thrift.server.AbstractNonblockingServer$AbstractSelectThread.handleRead(AbstractNonblockingServer.java:202) ~[libthrift-0.8.0.jar:0.8.0] at org.apache.thrift.server.TNonblockingServer$SelectAcceptThread.select(TNonblockingServer.java:198) ~[libthrift-0.8.0.jar:0.8.0] at org.apache.thrift.server.TNonblockingServer$SelectAcceptThread.run(TNonblockingServer.java:154) ~[libthrift-0.8.0.jar:0.8.0] I guess its pretty related to https://issues.apache.org/jira/browse/THRIFT-602 -- 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-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:all-tabpanel ] Jake Farrell closed THRIFT-1743. Resolution: Won't Fix Fix Version/s: 1.0 Assignee: Jake Farrell 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: Jake Farrell Fix For: 1.0, 0.9 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
[jira] [Commented] (THRIFT-1736) Visual Studio top level project files within msvc
[ https://issues.apache.org/jira/browse/THRIFT-1736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13580349#comment-13580349 ] Jake Farrell commented on THRIFT-1736: -- What about in contrib/msvc/* Visual Studio top level project files within msvc - Key: THRIFT-1736 URL: https://issues.apache.org/jira/browse/THRIFT-1736 Project: Thrift Issue Type: Improvement Reporter: Roger Meier improve visual studio support by introducing a top level solution file within top level msvc folder. see libusb for a good example: http://www.libusb.org/browser/libusb/msvc -- 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] [Assigned] (THRIFT-1856) different comments generated on OSX vs Linux/Windows
[ https://issues.apache.org/jira/browse/THRIFT-1856?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell reassigned THRIFT-1856: Assignee: Jake Farrell different comments generated on OSX vs Linux/Windows Key: THRIFT-1856 URL: https://issues.apache.org/jira/browse/THRIFT-1856 Project: Thrift Issue Type: Bug Components: Java - Compiler Affects Versions: 0.9, 1.0 Environment: OSX 10.7 Ubuntu 12.04 Reporter: Vitali Lovich Assignee: Jake Farrell Attachments: mytest.thrift, Test.java.linux, Test.java.osx Compiling the same thrift definition on OSX Linux produces two slightly different outputs. Since our thrift files are committed in the repository, it makes it annoying to develop on OSX. -- 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-1856) different comments generated on OSX vs Linux/Windows
[ https://issues.apache.org/jira/browse/THRIFT-1856?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13580100#comment-13580100 ] Jake Farrell commented on THRIFT-1856: -- When generating the test idl on both centos and os x I get a difference of centos not respecting the comment for optional fields where os x is working as expected. In your os x generated Test.java you have a duplicate line on 183 which I was unable to reproduce. different comments generated on OSX vs Linux/Windows Key: THRIFT-1856 URL: https://issues.apache.org/jira/browse/THRIFT-1856 Project: Thrift Issue Type: Bug Components: Java - Compiler Affects Versions: 0.9, 1.0 Environment: OSX 10.7 Ubuntu 12.04 Reporter: Vitali Lovich Attachments: mytest.thrift, Test.java.linux, Test.java.osx Compiling the same thrift definition on OSX Linux produces two slightly different outputs. Since our thrift files are committed in the repository, it makes it annoying to develop on OSX. -- 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-1830) Tutorials linking to SVN instead of git
[ https://issues.apache.org/jira/browse/THRIFT-1830?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1830. Resolution: Fixed Assignee: Jens Geyer website updated with patch Tutorials linking to SVN instead of git --- Key: THRIFT-1830 URL: https://issues.apache.org/jira/browse/THRIFT-1830 Project: Thrift Issue Type: Bug Components: Website Reporter: Carl Yeksigian Assignee: Jens Geyer Priority: Minor Attachments: THRIFT-1830_Tutorials_linking_to_SVN_instead_of_git_v2.patch All of the language tutorials currently have a link to the tutorial.thrift file, but in SVN. It should point to https://git-wip-us.apache.org/repos/asf/thrift/trunk/tutorial/tutorial.thrift?p=thrift.git;a=blob;f=tutorial/tutorial.thrift;hb=HEAD instead. All of the tutorials seem to be affected. -- 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-1708) Add event handlers for processor events
[ https://issues.apache.org/jira/browse/THRIFT-1708?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13538655#comment-13538655 ] Jake Farrell commented on THRIFT-1708: -- I'm good with splitting this into sub tickets for any remaining languages Add event handlers for processor events --- Key: THRIFT-1708 URL: https://issues.apache.org/jira/browse/THRIFT-1708 Project: Thrift Issue Type: New Feature Components: Java - Library Affects Versions: 0.9 Environment: all Reporter: Andrew Cox Assignee: Andrew Cox Priority: Minor Fix For: 1.0 Attachments: thrift-1708-processor-event-handlers.patch Integrates some code we've been using (here at facebook) to add event handlers that can handle processor events with the server event handlers in apache thrift. Processor events include: preRead (before reading arguments), postRead (after reading arguments), preWrite (before writing results), postWrite (after writing results), and processorError (when a non-IDL exception is thrown as a result of an error handling the request). The processor handler is given the method name and input and output protocol that will be used to process the request, and can inspect arguments on postRead, and results on pre/postWrite events. This change also enables event handlers for non-blocking servers. Some unit tests are included to exercise the new processor event handlers, and demonstrate how they can connect with server event handlers. It also fixes a minor bug I found while testing, where FrameBuffers on non-blocking servers could have been close()'d more than once. -- 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-1773) Python library should run on python 2.4
[ https://issues.apache.org/jira/browse/THRIFT-1773?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13528625#comment-13528625 ] Jake Farrell commented on THRIFT-1773: -- +1 for now, we will need to revisit this later, will open a separate holding ticket for pep-3110 compliance in a future release Python library should run on python 2.4 --- Key: THRIFT-1773 URL: https://issues.apache.org/jira/browse/THRIFT-1773 Project: Thrift Issue Type: Bug Components: Python - Library Affects Versions: 0.9 Reporter: Todd Lipcon Assignee: Todd Lipcon Fix For: 1.0 As of 0.9, the Python code seems to require Python = 2.6 (eg using new syntax not available in 2.4). Since many people still run Thrift-based apps on RHEL5, which includes only 2.4, we should avoid this dependency. -- 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-1784) pep-3110 compliance for exception handling
Jake Farrell created THRIFT-1784: Summary: pep-3110 compliance for exception handling Key: THRIFT-1784 URL: https://issues.apache.org/jira/browse/THRIFT-1784 Project: Thrift Issue Type: Improvement Components: Python - Library Affects Versions: 0.9, 1.0 Reporter: Jake Farrell Assignee: Jake Farrell -- 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] [Assigned] (THRIFT-1778) Configure requires manual intervention due to tar failure
[ https://issues.apache.org/jira/browse/THRIFT-1778?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell reassigned THRIFT-1778: Assignee: Jake Farrell Configure requires manual intervention due to tar failure - Key: THRIFT-1778 URL: https://issues.apache.org/jira/browse/THRIFT-1778 Project: Thrift Issue Type: Bug Components: Build Process Affects Versions: 0.8, 0.9 Environment: Fedora 16 Reporter: Bill Katz Assignee: Jake Farrell On configure, manual intervention is required where pax is unable to identify the format and user must enter . to quit pax. Problem is upstream in configure file. Here is pertinent snippet from config.log: configure:3482: $? = 0 configure:3522: tardir=conftest.dir eval tar --format=ustar -chf - $tardir conftest.tar tar: value 9900322 out of uid_t range 0..2097151 tar: Exiting with failure status due to previous errors This issue was noted in some other software as well: http://pl.digipedia.org/usenet/thread/11269/17209/ -- 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-1773) Python library should run on python 2.4
[ https://issues.apache.org/jira/browse/THRIFT-1773?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13509472#comment-13509472 ] Jake Farrell commented on THRIFT-1773: -- The latest version of Centos comes with python 2.6.6 which has the exception handling backported from pep-3110 (http://www.python.org/dev/peps/pep-3110). I changed the exception handling in THRIFT-1604 to support this and python 3.x clients. Python library should run on python 2.4 --- Key: THRIFT-1773 URL: https://issues.apache.org/jira/browse/THRIFT-1773 Project: Thrift Issue Type: Bug Components: Python - Library Affects Versions: 0.9 Reporter: Todd Lipcon As of 0.9, the Python code seems to require Python = 2.6 (eg using new syntax not available in 2.4). Since many people still run Thrift-based apps on RHEL5, which includes only 2.4, we should avoid this dependency. -- 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] [Assigned] (THRIFT-1773) Python library should run on python 2.4
[ https://issues.apache.org/jira/browse/THRIFT-1773?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell reassigned THRIFT-1773: Assignee: Jake Farrell Python library should run on python 2.4 --- Key: THRIFT-1773 URL: https://issues.apache.org/jira/browse/THRIFT-1773 Project: Thrift Issue Type: Bug Components: Python - Library Affects Versions: 0.9 Reporter: Todd Lipcon Assignee: Jake Farrell As of 0.9, the Python code seems to require Python = 2.6 (eg using new syntax not available in 2.4). Since many people still run Thrift-based apps on RHEL5, which includes only 2.4, we should avoid this dependency. -- 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-1749) Python TSSLSocket error handling obscures actual error
[ https://issues.apache.org/jira/browse/THRIFT-1749?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell updated THRIFT-1749: - Fix Version/s: 1.0 Python TSSLSocket error handling obscures actual error -- Key: THRIFT-1749 URL: https://issues.apache.org/jira/browse/THRIFT-1749 Project: Thrift Issue Type: Bug Components: Python - Library Affects Versions: 0.9 Reporter: Tyler Hobbs Assignee: Tyler Hobbs Fix For: 1.0 Attachments: 1749-exc-message-v1.txt If there is an SSL error with TSSLSocket, such as an invalid certificate, a TTransportException is raised that doesn't include the original error message, making it impossible to diagnose the issue. -- 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-1745) Python JSON protocol
[ https://issues.apache.org/jira/browse/THRIFT-1745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13487404#comment-13487404 ] Jake Farrell commented on THRIFT-1745: -- Frederic, Thank you for your work on this. Would you please attach the patch for this to the ticket. We can not accept gist or pull requests from github due to ASF licensing requirements. Once the test cases are added i'll gladly review and commit this patch. Python JSON protocol - Key: THRIFT-1745 URL: https://issues.apache.org/jira/browse/THRIFT-1745 Project: Thrift Issue Type: New Feature Components: Python - Library Affects Versions: 1.0 Reporter: Frederic Delbos Priority: Minor I write a JSON protocol for Python available here : https://gist.github.com/3948701 So far it passes all the tests. Also you need to add json to the python test suit and 'TJSONProtocol' in lib/py/src/protocol/__init__.py cheers -- 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-tabpanelfocusedCommentId=13486120#comment-13486120 ] Jake Farrell commented on THRIFT-1743: -- If this can go within the lib/php folder I think that is fine, but this should not be in the root of the project as it does not get utilized by anything else within Thrift 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 Fix For: 0.9 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
[jira] [Commented] (THRIFT-1353) Switch to performance branch, get rid of BinaryParser
[ https://issues.apache.org/jira/browse/THRIFT-1353?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13484542#comment-13484542 ] Jake Farrell commented on THRIFT-1353: -- John, We can not copy files from github and just add them to the codebase due to legal rights, please see http://thrift.apache.org/docs/HowToContribute/ for details on making contributions Switch to performance branch, get rid of BinaryParser - Key: THRIFT-1353 URL: https://issues.apache.org/jira/browse/THRIFT-1353 Project: Thrift Issue Type: Improvement Components: Node.js - Library Affects Versions: 0.7 Reporter: Hans Duedal Assignee: Henrique Mendonca Labels: node, nodejs Fix For: 1.0 Attachments: THRIFT-1353-noBinaryParser-BufferedTrans-Int64-v3.patch I vote that the thrift library switches to the performance branch at https://github.com/wadey/node-thrift/tree/performance I much prefer using the node.js buffers over the BinaryParser class, the performance branch seems focused on this very issue. Also it includes the excellent int64 implementation from broofa. What's not to like? -- 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-1353) Switch to performance branch, get rid of BinaryParser
[ https://issues.apache.org/jira/browse/THRIFT-1353?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13484622#comment-13484622 ] Jake Farrell commented on THRIFT-1353: -- Sorry John, didnt understand what your comment was implying. Henrique can you please take a look at this as you where the committer Switch to performance branch, get rid of BinaryParser - Key: THRIFT-1353 URL: https://issues.apache.org/jira/browse/THRIFT-1353 Project: Thrift Issue Type: Improvement Components: Node.js - Library Affects Versions: 0.7 Reporter: Hans Duedal Assignee: Henrique Mendonca Labels: node, nodejs Fix For: 1.0 Attachments: THRIFT-1353-noBinaryParser-BufferedTrans-Int64-v3.patch I vote that the thrift library switches to the performance branch at https://github.com/wadey/node-thrift/tree/performance I much prefer using the node.js buffers over the BinaryParser class, the performance branch seems focused on this very issue. Also it includes the excellent int64 implementation from broofa. What's not to like? -- 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-1536) Maven thrift plugin
[ https://issues.apache.org/jira/browse/THRIFT-1536?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13483150#comment-13483150 ] Jake Farrell commented on THRIFT-1536: -- yes, ive got a copy working with some changes that i'll be supplying a patch for soon. this will be available for the next release Maven thrift plugin --- Key: THRIFT-1536 URL: https://issues.apache.org/jira/browse/THRIFT-1536 Project: Thrift Issue Type: New Feature Reporter: Jake Farrell Assignee: Jake Farrell Attachments: maven-thrift-plugin.zip Working with David Trott to bring the Maven thrift Plugin he has written into the code base and deploy to maven central as part of the release process -- 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-1708) Add event handlers for processor events
[ https://issues.apache.org/jira/browse/THRIFT-1708?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13483772#comment-13483772 ] Jake Farrell commented on THRIFT-1708: -- Thanks Andrew, appreciated Add event handlers for processor events --- Key: THRIFT-1708 URL: https://issues.apache.org/jira/browse/THRIFT-1708 Project: Thrift Issue Type: New Feature Components: Java - Library Affects Versions: 0.9 Environment: all Reporter: Andrew Cox Assignee: Andrew Cox Priority: Minor Fix For: 1.0 Attachments: thrift-1708-processor-event-handlers.patch Integrates some code we've been using (here at facebook) to add event handlers that can handle processor events with the server event handlers in apache thrift. Processor events include: preRead (before reading arguments), postRead (after reading arguments), preWrite (before writing results), postWrite (after writing results), and processorError (when a non-IDL exception is thrown as a result of an error handling the request). The processor handler is given the method name and input and output protocol that will be used to process the request, and can inspect arguments on postRead, and results on pre/postWrite events. This change also enables event handlers for non-blocking servers. Some unit tests are included to exercise the new processor event handlers, and demonstrate how they can connect with server event handlers. It also fixes a minor bug I found while testing, where FrameBuffers on non-blocking servers could have been close()'d more than once. -- 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-274) Towards a working release/versioning process
[ https://issues.apache.org/jira/browse/THRIFT-274?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13483774#comment-13483774 ] Jake Farrell commented on THRIFT-274: - I agree with that, but also want to try and clean up some versioning where possible (im working on java right now and updating all java components to maven to improve testing, versioning and common functionality). -Jake 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 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 betan/rcn 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-1739) missing license header in node.js files
[ https://issues.apache.org/jira/browse/THRIFT-1739?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1739. Resolution: Fixed Some of the recent additions to node.js where missing the Apache license headers missing license header in node.js files --- Key: THRIFT-1739 URL: https://issues.apache.org/jira/browse/THRIFT-1739 Project: Thrift Issue Type: Bug Reporter: Jake Farrell Assignee: Jake Farrell Fix For: 1.0 -- 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-1739) missing license header in node.js files
Jake Farrell created THRIFT-1739: Summary: missing license header in node.js files Key: THRIFT-1739 URL: https://issues.apache.org/jira/browse/THRIFT-1739 Project: Thrift Issue Type: Bug Reporter: Jake Farrell Assignee: Jake Farrell Fix For: 1.0 -- 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-1709) Warning Bitwise-or operator used on a sign-extended operand; consider casting to a smaller unsigned type first in TBinaryProtocol.cs at ReadInt64()
[ https://issues.apache.org/jira/browse/THRIFT-1709?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1709. Resolution: Fixed tjake confirmed that new patch resolved memory issue observed. Committed Warning Bitwise-or operator used on a sign-extended operand; consider casting to a smaller unsigned type first in TBinaryProtocol.cs at ReadInt64() -- Key: THRIFT-1709 URL: https://issues.apache.org/jira/browse/THRIFT-1709 Project: Thrift Issue Type: Bug Components: C# - Library Affects Versions: 0.8, 0.9 Environment: Windows + Silverlight + WP7 Reporter: Jens Geyer Assignee: Jake Farrell Priority: Trivial Fix For: 0.9 Attachments: THIFT-1709_Bitwise_or_operator_used_on_a_signextended_operand_at_ReadInt64().patch, Thrift-1709.patch There's an annoying warning at the byte shift operations due to a missing cast at the bitwise-or. -- 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] [Reopened] (THRIFT-1709) Warning Bitwise-or operator used on a sign-extended operand; consider casting to a smaller unsigned type first in TBinaryProtocol.cs at ReadInt64()
[ https://issues.apache.org/jira/browse/THRIFT-1709?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell reopened THRIFT-1709: -- Assignee: Jake Farrell (was: Jens Geyer) OOM issues being reported with this patch, reopening ticket Warning Bitwise-or operator used on a sign-extended operand; consider casting to a smaller unsigned type first in TBinaryProtocol.cs at ReadInt64() -- Key: THRIFT-1709 URL: https://issues.apache.org/jira/browse/THRIFT-1709 Project: Thrift Issue Type: Bug Components: C# - Library Affects Versions: 0.8, 0.9 Environment: Windows + Silverlight + WP7 Reporter: Jens Geyer Assignee: Jake Farrell Priority: Trivial Fix For: 0.9 Attachments: THIFT-1709_Bitwise_or_operator_used_on_a_signextended_operand_at_ReadInt64().patch There's an annoying warning at the byte shift operations due to a missing cast at the bitwise-or. -- 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-1709) Warning Bitwise-or operator used on a sign-extended operand; consider casting to a smaller unsigned type first in TBinaryProtocol.cs at ReadInt64()
[ https://issues.apache.org/jira/browse/THRIFT-1709?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell updated THRIFT-1709: - Attachment: Thrift-1709.patch Reverts patch and adds unchecked to avoid unnecessary warnings caused by bitwise or Warning Bitwise-or operator used on a sign-extended operand; consider casting to a smaller unsigned type first in TBinaryProtocol.cs at ReadInt64() -- Key: THRIFT-1709 URL: https://issues.apache.org/jira/browse/THRIFT-1709 Project: Thrift Issue Type: Bug Components: C# - Library Affects Versions: 0.8, 0.9 Environment: Windows + Silverlight + WP7 Reporter: Jens Geyer Assignee: Jake Farrell Priority: Trivial Fix For: 0.9 Attachments: THIFT-1709_Bitwise_or_operator_used_on_a_signextended_operand_at_ReadInt64().patch, Thrift-1709.patch There's an annoying warning at the byte shift operations due to a missing cast at the bitwise-or. -- 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-1734) Front webpage is still advertising v0.8 as current release
[ https://issues.apache.org/jira/browse/THRIFT-1734?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1734. Resolution: Not A Problem Fix Version/s: 1.0 This is all autoversioned via the config file, not seeing 0.8.0 anywhere on the main page of http://thrift.apache.org Front webpage is still advertising v0.8 as current release -- Key: THRIFT-1734 URL: https://issues.apache.org/jira/browse/THRIFT-1734 Project: Thrift Issue Type: Bug Components: Website Reporter: Chris Stylianou Assignee: Jake Farrell Priority: Trivial Labels: release, releasegeneration, website Fix For: 1.0 The front webpage of http://thrift.apache.org is still displaying the current release version as v0.8, instead of the newly released v0.9 as displayed on the downloads page. I presume this is because the instructions at http://thrift.apache.org/docs/committers/HowToPublish do not specify that this page needs updating as well. -- 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] [Assigned] (THRIFT-1733) Fix RPM build issues on RHEL6/OL6 systems
[ https://issues.apache.org/jira/browse/THRIFT-1733?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell reassigned THRIFT-1733: Assignee: Jake Farrell Fix RPM build issues on RHEL6/OL6 systems - Key: THRIFT-1733 URL: https://issues.apache.org/jira/browse/THRIFT-1733 Project: Thrift Issue Type: Improvement Components: Build Process Affects Versions: 0.8 Environment: Red Hat 6 and Oracle Linux 6 systems Reporter: Kirby Files Assignee: Jake Farrell Attachments: thrift.spec.patch On my Oracle Linux 6 (OL6) systems, derived from RHEL6, the spec file in contrib/thrift.spec fails in a number of ways: it doesn't disable subdir builds, along with their numerous dependencies; has incorrect versioning; doesn't link libraries as the system expects; and doesn't run ldconfig after installing or uninstalling. Attached is a patch against the latest downloaded source to fix those issues. -- 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] [Reopened] (THRIFT-1728) Upgradation of httpcomponents
[ https://issues.apache.org/jira/browse/THRIFT-1728?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell reopened THRIFT-1728: -- Karthik, thanks for the contribution. If future tickets can you leave the status unchanged and just set the patch available tag, if a ticket is resolved then committers will not look at it as this state signifies there is no action needed. Thanks for the patch. Upgradation of httpcomponents - Key: THRIFT-1728 URL: https://issues.apache.org/jira/browse/THRIFT-1728 Project: Thrift Issue Type: Improvement Components: Java - Library Affects Versions: 0.8 Reporter: Karthik K Fix For: 1.0 Attachments: THRIFT-1728.patch Current codebase uses 4.1.x of httpcomponents. 4.2.x of httpcomponents GA has since been released. Let us keep up with the same. -- 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] [Reopened] (THRIFT-1414) bufferoverflow in c_glib buffered transport/socket client
[ https://issues.apache.org/jira/browse/THRIFT-1414?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell reopened THRIFT-1414: -- Andris, not sure why the status was changed not his ticket without the patch being added. Can you please rebase the patch against trunk. thanks bufferoverflow in c_glib buffered transport/socket client - Key: THRIFT-1414 URL: https://issues.apache.org/jira/browse/THRIFT-1414 Project: Thrift Issue Type: Bug Components: C glib - Library Affects Versions: 0.7 Environment: Server running on Windows 7 SP1 64bit based on csharp. Client running on Ubuntu 11.04 Server 64 bit (fresh install) based on c_glib. svn rev: 1190015M Reporter: Christian Zimnick Priority: Critical Attachments: THRIFT-1414.patch Original Estimate: 10m Remaining Estimate: 10m Quote of comment in source: --- if the buffer is still smaller than what we want to read, then just read it directly. --- But the code reading into the tempdata with size of the buffer and reading all data into this. file: lib/c_glib/transport/thrift_buffered_transport.c line 74/98 Also if the buffer is still bigger that what we want to read, then reading the buffer size. But recv blocks than and waiting of data if there nothing to read after the receiving data len. file: lib/c_glib/transport/thrift_buffered_transport.c line 118 i attached a patch that fix this problems but i dont know if all of this is correct. -- 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] [Assigned] (THRIFT-1643) Denial of Service attack in TBinaryProtocol.readString
[ https://issues.apache.org/jira/browse/THRIFT-1643?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell reassigned THRIFT-1643: Assignee: Jake Farrell (was: Roger Meier) Denial of Service attack in TBinaryProtocol.readString -- Key: THRIFT-1643 URL: https://issues.apache.org/jira/browse/THRIFT-1643 Project: Thrift Issue Type: Bug Components: Java - Library Affects Versions: 0.6.1, 0.8 Environment: All Reporter: Devesh Parekh Assignee: Jake Farrell Priority: Critical Labels: security Attachments: 0001-Address-denial-of-service-in-TCompactProtocol.patch, 0001-Add-test-for-TCompactProtocol-OOM-Denial-of-Service.patch, 0002-Add-test-for-TBinaryProtocol-OOM-Denial-of-Service.patch, 0003-Cleanup-length-checks-in-TCompactProtocol.patch, Attack.java, Foo.thrift Original Estimate: 24h Remaining Estimate: 24h In readString, if the string field's size is greater than the number of bytes remaining in the byte array to deserialize, libthrift will happily allocate a byte array of that size in readStringBody, filling the heap. -- 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-1643) Denial of Service attack in TBinaryProtocol.readString
[ https://issues.apache.org/jira/browse/THRIFT-1643?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1643. Resolution: Fixed Fix Version/s: 0.9 Assignee: Niraj Tolia (was: Jake Farrell) Committed to trunk and 0.9 branch pre-rc Denial of Service attack in TBinaryProtocol.readString -- Key: THRIFT-1643 URL: https://issues.apache.org/jira/browse/THRIFT-1643 Project: Thrift Issue Type: Bug Components: Java - Library Affects Versions: 0.6.1, 0.8 Environment: All Reporter: Devesh Parekh Assignee: Niraj Tolia Priority: Critical Labels: security Fix For: 0.9 Attachments: 0001-Address-denial-of-service-in-TCompactProtocol.patch, 0001-Add-test-for-TCompactProtocol-OOM-Denial-of-Service.patch, 0002-Add-test-for-TBinaryProtocol-OOM-Denial-of-Service.patch, 0003-Cleanup-length-checks-in-TCompactProtocol.patch, Attack.java, Foo.thrift Original Estimate: 24h Remaining Estimate: 24h In readString, if the string field's size is greater than the number of bytes remaining in the byte array to deserialize, libthrift will happily allocate a byte array of that size in readStringBody, filling the heap. -- 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-1722) C# WP7 Assembly addition beaks mono build
Jake Farrell created THRIFT-1722: Summary: C# WP7 Assembly addition beaks mono build Key: THRIFT-1722 URL: https://issues.apache.org/jira/browse/THRIFT-1722 Project: Thrift Issue Type: Sub-task Reporter: Jake Farrell Assignee: Jens Geyer Priority: Blocker -- 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-1722) C# WP7 Assembly addition beaks mono build
[ https://issues.apache.org/jira/browse/THRIFT-1722?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13473091#comment-13473091 ] Jake Farrell commented on THRIFT-1722: -- src/Properties/AssemblyInfo.cs(27,12): error CS0579: The attribute `System.Reflection.AssemblyTitleAttribute' cannot be applied multiple times src/Properties/AssemblyInfo.WP7.cs(27,12): (Location of the symbol related to previous error) src/Properties/AssemblyInfo.cs(28,12): error CS0579: The attribute `System.Reflection.AssemblyDescriptionAttribute' cannot be applied multiple times src/Properties/AssemblyInfo.WP7.cs(28,12): (Location of the symbol related to previous error) src/Properties/AssemblyInfo.cs(29,12): error CS0579: The attribute `System.Reflection.AssemblyConfigurationAttribute' cannot be applied multiple times src/Properties/AssemblyInfo.WP7.cs(29,12): (Location of the symbol related to previous error) src/Properties/AssemblyInfo.cs(30,12): error CS0579: The attribute `System.Reflection.AssemblyCompanyAttribute' cannot be applied multiple times src/Properties/AssemblyInfo.WP7.cs(30,12): (Location of the symbol related to previous error) src/Properties/AssemblyInfo.cs(31,12): error CS0579: The attribute `System.Reflection.AssemblyProductAttribute' cannot be applied multiple times src/Properties/AssemblyInfo.WP7.cs(31,12): (Location of the symbol related to previous error) src/Properties/AssemblyInfo.cs(32,12): error CS0579: The attribute `System.Reflection.AssemblyCopyrightAttribute' cannot be applied multiple times src/Properties/AssemblyInfo.WP7.cs(32,12): (Location of the symbol related to previous error) src/Properties/AssemblyInfo.cs(33,12): error CS0579: The attribute `System.Reflection.AssemblyTrademarkAttribute' cannot be applied multiple times src/Properties/AssemblyInfo.WP7.cs(33,12): (Location of the symbol related to previous error) src/Properties/AssemblyInfo.cs(34,12): error CS0579: The attribute `System.Reflection.AssemblyCultureAttribute' cannot be applied multiple times src/Properties/AssemblyInfo.WP7.cs(34,12): (Location of the symbol related to previous error) src/Properties/AssemblyInfo.cs(40,12): error CS0579: The attribute `System.Runtime.InteropServices.ComVisibleAttribute' cannot be applied multiple times src/Properties/AssemblyInfo.WP7.cs(40,12): (Location of the symbol related to previous error) src/Properties/AssemblyInfo.cs(43,12): error CS0579: The attribute `System.Runtime.InteropServices.GuidAttribute' cannot be applied multiple times src/Properties/AssemblyInfo.WP7.cs(43,12): (Location of the symbol related to previous error) src/Properties/AssemblyInfo.cs(55,12): error CS0579: The attribute `System.Reflection.AssemblyVersionAttribute' cannot be applied multiple times src/Properties/AssemblyInfo.WP7.cs(55,12): (Location of the symbol related to previous error) src/Properties/AssemblyInfo.cs(56,12): error CS0579: The attribute `System.Reflection.AssemblyFileVersionAttribute' cannot be applied multiple times src/Properties/AssemblyInfo.WP7.cs(56,12): (Location of the symbol related to previous error) Compilation failed: 12 error(s), 1 warnings C# WP7 Assembly addition beaks mono build - Key: THRIFT-1722 URL: https://issues.apache.org/jira/browse/THRIFT-1722 Project: Thrift Issue Type: Sub-task Reporter: Jake Farrell Assignee: Jens Geyer Priority: Blocker -- 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-1721) Dist broken due to 0.8.0 to 0.9.0 changes
[ https://issues.apache.org/jira/browse/THRIFT-1721?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell updated THRIFT-1721: - Attachment: Thrift-1721.patch New files missing from build created since 0.8.0 release Dist broken due to 0.8.0 to 0.9.0 changes - Key: THRIFT-1721 URL: https://issues.apache.org/jira/browse/THRIFT-1721 Project: Thrift Issue Type: Bug Reporter: Jake Farrell Assignee: Jake Farrell Attachments: Thrift-1721.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] [Closed] (THRIFT-1722) C# WP7 Assembly addition beaks mono build
[ https://issues.apache.org/jira/browse/THRIFT-1722?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1722. Resolution: Fixed Fix Version/s: 0.9 Committed C# WP7 Assembly addition beaks mono build - Key: THRIFT-1722 URL: https://issues.apache.org/jira/browse/THRIFT-1722 Project: Thrift Issue Type: Sub-task Reporter: Jake Farrell Assignee: Jake Farrell Priority: Blocker Fix For: 0.9 Attachments: Thrift-1722.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] [Closed] (THRIFT-1721) Dist broken due to 0.8.0 to 0.9.0 changes
[ https://issues.apache.org/jira/browse/THRIFT-1721?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1721. Resolution: Fixed Fix Version/s: 0.9 committed a fix for: lib/Makefile.am lib/cpp/test/Makefile.am lib/d/Makefile.am lib/php/Makefile.am lib/php/test/Makefile.am compiler/cpp/Makefile.am test/Makefile.am Dist broken due to 0.8.0 to 0.9.0 changes - Key: THRIFT-1721 URL: https://issues.apache.org/jira/browse/THRIFT-1721 Project: Thrift Issue Type: Bug Reporter: Jake Farrell Assignee: Jake Farrell Fix For: 0.9 Attachments: Thrift-1721.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] [Closed] (THRIFT-1725) Tutorial web pages for Delphi and C#
[ https://issues.apache.org/jira/browse/THRIFT-1725?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1725. Resolution: Fixed Thanks Jens, committed Tutorial web pages for Delphi and C# Key: THRIFT-1725 URL: https://issues.apache.org/jira/browse/THRIFT-1725 Project: Thrift Issue Type: Improvement Components: Website Affects Versions: 0.9 Reporter: Jens Geyer Assignee: Jens Geyer Labels: documentation Fix For: 0.9 Attachments: THRIFT-1725_Tutorial_web_pages_for_Delphi_and_CSharp.patch Added tutorials markup for Delphi and C# based on existing tutorials 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-1023) Thrift encoding (UTF-8) issue with Ruby 1.9.2
[ https://issues.apache.org/jira/browse/THRIFT-1023?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1023. Resolution: Fixed Assignee: Nathan Beyer (was: Jake Farrell) Thrift encoding (UTF-8) issue with Ruby 1.9.2 -- Key: THRIFT-1023 URL: https://issues.apache.org/jira/browse/THRIFT-1023 Project: Thrift Issue Type: Bug Components: Ruby - Library Affects Versions: 0.5 Environment: OSX, Ruby 1.9.2, Thrift Gem version 0.5.0 Reporter: Vincent Peres Assignee: Nathan Beyer Fix For: 0.9 Attachments: THRIFT-1023-build-ruby19.patch, THRIFT-1023-refactor-transport-protocol-for-ruby19.patch, THRIFT-1023-refactor-transport-protocol-for-ruby19-v2.patch, THRIFT-1023-refactor-transport-protocol-for-ruby19-v3.patch, THRIFT-1023-refactor-transport-protocol-for-ruby19-v4.patch, THRIFT-1023-refactor-transport-protocol-for-ruby19-v5.patch, THRIFT-1023-refactor-transport-protocol-for-ruby19-v6.patch, thrift-1023-utf8-encoding-issue.path I came up with an encoding issue coming from the Thrift library, and especially the BufferedTransport class. I've decided to write down few tests to give you a concrete example : # encoding: utf-8 require 'spec_helper' describe encoding do before do transport = Thrift::BufferedTransport.new(Thrift::Socket.new(MR_CONFIG['host'], 9090)) protocol = Thrift::BinaryProtocol.new(transport) @client = Apache::Hadoop::Hbase::Thrift::Hbase::Client.new(protocol) transport.open() @table_name = encoding_test @column_family = info: end it should create a new table do column = Apache::Hadoop::Hbase::Thrift::ColumnDescriptor.new{|c| c.name= @column_family} @client.createTable(@table_name, [column]).should be_nil end it should save standard caracteres do m= Apache::Hadoop::Hbase::Thrift::Mutation.new m.column = info:first_name m.value = Vincent m.value.encoding.should == Encoding::UTF_8 @client.mutateRow(@table_name, ID1, [m]).should be_nil end it should save UTF8 caracteres do m= Apache::Hadoop::Hbase::Thrift::Mutation.new m.column = info:first_name m.value = Thorbjørn m.value.encoding.should == Encoding::UTF_8 @client.mutateRow(@table_name, ID1, [m]).should be_nil end it should destroy the table do @client.disableTable(@table_name).should be_nil @client.deleteTable(@table_name).should be_nil end end It fails when it tries to save the UTF8 string including the caractere 'ø'. Here is the output : 1) encoding should save UTF8 caracteres Failure/Error: @client.mutateRow(@table_name, ID1, [m]).should be_nil incompatible character encodings: ASCII-8BIT and UTF-8 #/Users/vincentp/.rvm/gems/ruby-1.9.2-p0/gems/thrift-0.5.0/lib/thrift/transport/buffered_transport.rb:59:in `write' #/Users/vincentp/.rvm/gems/ruby-1.9.2-p0/gems/thrift-0.5.0/lib/thrift/protocol/binary_protocol.rb:107:in `write_string' #/Users/vincentp/.rvm/gems/ruby-1.9.2-p0/gems/thrift-0.5.0/lib/thrift/client.rb:35:in `write' #/Users/vincentp/.rvm/gems/ruby-1.9.2-p0/gems/thrift-0.5.0/lib/thrift/client.rb:35:in `send_message' # ./lib/thrift/hbase.rb:289:in `send_mutateRow' # ./lib/thrift/hbase.rb:284:in `mutateRow' # ./spec/thrift/cases/encoding_spec.rb:37:in `block (2 levels) in top (required)' Let me know if you need any other details, thank you ! -- 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-1023) Thrift encoding (UTF-8) issue with Ruby 1.9.2
[ https://issues.apache.org/jira/browse/THRIFT-1023?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13472606#comment-13472606 ] Jake Farrell commented on THRIFT-1023: -- Committed v6 patch Thrift encoding (UTF-8) issue with Ruby 1.9.2 -- Key: THRIFT-1023 URL: https://issues.apache.org/jira/browse/THRIFT-1023 Project: Thrift Issue Type: Bug Components: Ruby - Library Affects Versions: 0.5 Environment: OSX, Ruby 1.9.2, Thrift Gem version 0.5.0 Reporter: Vincent Peres Assignee: Jake Farrell Fix For: 0.9 Attachments: THRIFT-1023-build-ruby19.patch, THRIFT-1023-refactor-transport-protocol-for-ruby19.patch, THRIFT-1023-refactor-transport-protocol-for-ruby19-v2.patch, THRIFT-1023-refactor-transport-protocol-for-ruby19-v3.patch, THRIFT-1023-refactor-transport-protocol-for-ruby19-v4.patch, THRIFT-1023-refactor-transport-protocol-for-ruby19-v5.patch, THRIFT-1023-refactor-transport-protocol-for-ruby19-v6.patch, thrift-1023-utf8-encoding-issue.path I came up with an encoding issue coming from the Thrift library, and especially the BufferedTransport class. I've decided to write down few tests to give you a concrete example : # encoding: utf-8 require 'spec_helper' describe encoding do before do transport = Thrift::BufferedTransport.new(Thrift::Socket.new(MR_CONFIG['host'], 9090)) protocol = Thrift::BinaryProtocol.new(transport) @client = Apache::Hadoop::Hbase::Thrift::Hbase::Client.new(protocol) transport.open() @table_name = encoding_test @column_family = info: end it should create a new table do column = Apache::Hadoop::Hbase::Thrift::ColumnDescriptor.new{|c| c.name= @column_family} @client.createTable(@table_name, [column]).should be_nil end it should save standard caracteres do m= Apache::Hadoop::Hbase::Thrift::Mutation.new m.column = info:first_name m.value = Vincent m.value.encoding.should == Encoding::UTF_8 @client.mutateRow(@table_name, ID1, [m]).should be_nil end it should save UTF8 caracteres do m= Apache::Hadoop::Hbase::Thrift::Mutation.new m.column = info:first_name m.value = Thorbjørn m.value.encoding.should == Encoding::UTF_8 @client.mutateRow(@table_name, ID1, [m]).should be_nil end it should destroy the table do @client.disableTable(@table_name).should be_nil @client.deleteTable(@table_name).should be_nil end end It fails when it tries to save the UTF8 string including the caractere 'ø'. Here is the output : 1) encoding should save UTF8 caracteres Failure/Error: @client.mutateRow(@table_name, ID1, [m]).should be_nil incompatible character encodings: ASCII-8BIT and UTF-8 #/Users/vincentp/.rvm/gems/ruby-1.9.2-p0/gems/thrift-0.5.0/lib/thrift/transport/buffered_transport.rb:59:in `write' #/Users/vincentp/.rvm/gems/ruby-1.9.2-p0/gems/thrift-0.5.0/lib/thrift/protocol/binary_protocol.rb:107:in `write_string' #/Users/vincentp/.rvm/gems/ruby-1.9.2-p0/gems/thrift-0.5.0/lib/thrift/client.rb:35:in `write' #/Users/vincentp/.rvm/gems/ruby-1.9.2-p0/gems/thrift-0.5.0/lib/thrift/client.rb:35:in `send_message' # ./lib/thrift/hbase.rb:289:in `send_mutateRow' # ./lib/thrift/hbase.rb:284:in `mutateRow' # ./spec/thrift/cases/encoding_spec.rb:37:in `block (2 levels) in top (required)' Let me know if you need any other details, thank you ! -- 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-1718) Incorrect check in TFileTransportTest
[ https://issues.apache.org/jira/browse/THRIFT-1718?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1718. Resolution: Fixed Assignee: Diwaker Gupta (was: Jake Farrell) committed, thanks Incorrect check in TFileTransportTest - Key: THRIFT-1718 URL: https://issues.apache.org/jira/browse/THRIFT-1718 Project: Thrift Issue Type: Test Components: C++ - Library Affects Versions: 0.8 Reporter: Diwaker Gupta Assignee: Diwaker Gupta Priority: Minor Fix For: 0.9 Attachments: THRIFT-1718.patch TFileTransport:282, comment says: // Make sure TFileTransport called fsync at least once However, the test checks for greater than, resulting in failures. This diff brings the check in line with the comment and fixes the failing tests: {code} --- lib/cpp/test/TFileTransportTest.cpp +++ lib/cpp/test/TFileTransportTest.cpp @@ -278,7 +278,7 @@ void test_flush_max_us_impl(uint32_t flush_us, uint32_t write_us, const FsyncLog::CallList* calls = log.getCalls(); // We added 1 fsync call above. // Make sure TFileTransport called fsync at least once - BOOST_CHECK_GT(calls-size(), + BOOST_CHECK_GE(calls-size(), static_castFsyncLog::CallList::size_type(1)); const struct timeval* prev_time = NULL; {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] [Created] (THRIFT-1721) Dist broken due to 0.8.0 to 0.9.0 changes
Jake Farrell created THRIFT-1721: Summary: Dist broken due to 0.8.0 to 0.9.0 changes Key: THRIFT-1721 URL: https://issues.apache.org/jira/browse/THRIFT-1721 Project: Thrift Issue Type: Bug Reporter: Jake Farrell Assignee: Jake Farrell -- 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-1673) Ruby compile flags for extension for multi arch builds (os x)
[ https://issues.apache.org/jira/browse/THRIFT-1673?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1673. Resolution: Fixed Added CONFIG arch only line to allow for rvm build to compile without extra flags from ruby being included when only -arch flag was necessary Ruby compile flags for extension for multi arch builds (os x) - Key: THRIFT-1673 URL: https://issues.apache.org/jira/browse/THRIFT-1673 Project: Thrift Issue Type: Bug Components: Ruby - Library Affects Versions: 0.9 Environment: os x Reporter: Jake Farrell Assignee: Jake Farrell Fix For: 0.9 ld: warning: ld: warning: ignoring file thrift_native.o, file was built for unsupported file format ( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 1 0x 3 0x 0 0x 0 0x 0 0x 1 0x 0 0x 0 0x 0 ) which is not the architecture being linked (i386): thrift_native.oignoring file struct.o, file was built for unsupported file format ( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 1 0x 3 0x 0 0x 0 0x 0 0x 1 0x 0 0x 0 0x 0 ) which is not the architecture being linked (i386): struct.o -- 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-1717) Fix deb build in jenkins
Jake Farrell created THRIFT-1717: Summary: Fix deb build in jenkins Key: THRIFT-1717 URL: https://issues.apache.org/jira/browse/THRIFT-1717 Project: Thrift Issue Type: Bug Reporter: Jake Farrell Assignee: Jake Farrell -- 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-1717) Fix deb build in jenkins
[ https://issues.apache.org/jira/browse/THRIFT-1717?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13472044#comment-13472044 ] Jake Farrell commented on THRIFT-1717: -- Jenkins build servers missing dependencies: mono-devel python-support Fix deb build in jenkins Key: THRIFT-1717 URL: https://issues.apache.org/jira/browse/THRIFT-1717 Project: Thrift Issue Type: Bug Reporter: Jake Farrell Assignee: Jake Farrell -- 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-1704) Tornado support (Python)
[ https://issues.apache.org/jira/browse/THRIFT-1704?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13472057#comment-13472057 ] Jake Farrell commented on THRIFT-1704: -- Chris, i'm about to make the 0.9rc and would like to hold off on this till the next release as this hasnt been tested by more people yet Tornado support (Python) Key: THRIFT-1704 URL: https://issues.apache.org/jira/browse/THRIFT-1704 Project: Thrift Issue Type: New Feature Components: Python - Compiler, Python - Library Affects Versions: 0.9 Environment: Tornado 2.4.0 (https://github.com/facebook/tornado/tree/v2.4.0) Reporter: Chris Piro Attachments: thrift-1704-tornado-2.patch, thrift-1704-tornado.patch Add support for Tornado, the non-blocking server framework released by Facebook. The attached patch adds a {{--gen py:tornado}} option to the compiler, support bits to Python library, a tutorial server and client, and a modest unit test. The attached patch (against {{trunk}}) has been running in the critical path of a production web site for several months with modest load. It seems to work fine, though no serious attempt has been made to optimize for performance. some snippets from the tutorial server and client code, respectively: {code} class CalculatorHandler(object): def add(self, n1, n2, callback): callback(n1 + n2) def main(): handler = CalculatorHandler() processor = Calculator.Processor(handler) pfactory = TBinaryProtocol.TBinaryProtocolFactory() server = TTornado.TTornadoServer(processor, pfactory) server.bind(9090) server.start(1) ioloop.IOLoop.instance().start() {code} {code} transport = TTornado.TTornadoStreamTransport('localhost', 9090) pfactory = TBinaryProtocol.TBinaryProtocolFactory() client = Calculator.Client(transport, pfactory) yield gen.Task(transport.open) yield gen.Task(client.ping) sum_ = yield gen.Task(client.add, 1, 1) print 1 + 1 = {}.format(sum_) {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-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-tabpanelfocusedCommentId=13471251#comment-13471251 ] Jake Farrell commented on THRIFT-1715: -- fb303 also includes php and java libs which should have the --with option as well if being added for the other languages. Can you add this to your patch please 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 Priority: Trivial Labels: fb303 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] [Closed] (THRIFT-1707) [ruby] Adjust server_spec.rb for RSpec 2.11.x and Ruby 1.9.3
[ https://issues.apache.org/jira/browse/THRIFT-1707?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1707. Resolution: Fixed Assignee: Nathan Beyer Was testing on OS X Snow Leopard with default ruby version ruby 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0]. Full error was: 1) Server Thrift::ThreadPoolServer should serve inside a thread Failure/Error: Unable to find matching line from backtrace NameError: undefined method `__rspec_original_dup' for class `Thrift::ThreadPoolServer' I traced it back to rspec 2.11.0 issue https://github.com/rspec/rspec-mocks/issues/168 Converting to 'rspec', '~ 2.10.0' fixes this and then your patch runs perfectly. Committed with gemspec change back to rspec 2.10.0 [ruby] Adjust server_spec.rb for RSpec 2.11.x and Ruby 1.9.3 Key: THRIFT-1707 URL: https://issues.apache.org/jira/browse/THRIFT-1707 Project: Thrift Issue Type: Bug Components: Ruby - Library Reporter: Nathan Beyer Assignee: Nathan Beyer Fix For: 0.9 Attachments: THRIFT-1707-rewrite-server-spec.patch The message expectations in RSpec 2.11.x don't seem to work consistently on Ruby 1.9.x when Threads are used. This is causing a problem in a few tests in server_spec.rb. -- 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-1712) Add TBase class for c++
[ https://issues.apache.org/jira/browse/THRIFT-1712?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13470821#comment-13470821 ] Jake Farrell commented on THRIFT-1712: -- Martin, thanks for the initial patch. I like the idea of adding TBase to cpp, but do not like TBase.h using TJSONProtocol in the copyTo and the downgrades to boost and autoconf versions. Any possible test cases would be a good addition as well Add TBase class for c++ --- Key: THRIFT-1712 URL: https://issues.apache.org/jira/browse/THRIFT-1712 Project: Thrift Issue Type: New Feature Components: C++ - Compiler Affects Versions: 0.8 Reporter: Martin Vogt Priority: Minor Labels: base, c++, class Attachments: tbase_cpp.patch The generated c++ classes for struct does not have a common base class. -- 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-1708) Add event handlers for processor events
[ https://issues.apache.org/jira/browse/THRIFT-1708?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13469869#comment-13469869 ] Jake Farrell commented on THRIFT-1708: -- Andrew, this is a really great addition. I am reviewing the patch now and really like what i've seen of it so far. Would love to see the addition of this for C++, Python and any other languages as well, can you please add your other patches to this ticket broken out per language. Thanks Add event handlers for processor events --- Key: THRIFT-1708 URL: https://issues.apache.org/jira/browse/THRIFT-1708 Project: Thrift Issue Type: New Feature Components: Java - Library Affects Versions: 0.9 Environment: all Reporter: Andrew Cox Assignee: Andrew Cox Priority: Minor Fix For: 0.9 Attachments: thrift-1708-processor-event-handlers.patch Integrates some code we've been using (here at facebook) to add event handlers that can handle processor events with the server event handlers in apache thrift. Processor events include: preRead (before reading arguments), postRead (after reading arguments), preWrite (before writing results), postWrite (after writing results), and processorError (when a non-IDL exception is thrown as a result of an error handling the request). The processor handler is given the method name and input and output protocol that will be used to process the request, and can inspect arguments on postRead, and results on pre/postWrite events. This change also enables event handlers for non-blocking servers. Some unit tests are included to exercise the new processor event handlers, and demonstrate how they can connect with server event handlers. It also fixes a minor bug I found while testing, where FrameBuffers on non-blocking servers could have been close()'d more than once. -- 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-1709) Warning Bitwise-or operator used on a sign-extended operand; consider casting to a smaller unsigned type first in TBinaryProtocol.cs at ReadInt64()
[ https://issues.apache.org/jira/browse/THRIFT-1709?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1709. Resolution: Fixed Assignee: Jens Geyer committed Warning Bitwise-or operator used on a sign-extended operand; consider casting to a smaller unsigned type first in TBinaryProtocol.cs at ReadInt64() -- Key: THRIFT-1709 URL: https://issues.apache.org/jira/browse/THRIFT-1709 Project: Thrift Issue Type: Bug Components: C# - Library Affects Versions: 0.8, 0.9 Environment: Windows + Silverlight + WP7 Reporter: Jens Geyer Assignee: Jens Geyer Priority: Trivial Fix For: 0.9 Attachments: THIFT-1709_Bitwise_or_operator_used_on_a_signextended_operand_at_ReadInt64().patch There's an annoying warning at the byte shift operations due to a missing cast at the bitwise-or. -- 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-1710) Minor issues in test case code
[ https://issues.apache.org/jira/browse/THRIFT-1710?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1710. Resolution: Fixed committed Minor issues in test case code -- Key: THRIFT-1710 URL: https://issues.apache.org/jira/browse/THRIFT-1710 Project: Thrift Issue Type: Bug Components: Delphi - Library Affects Versions: 0.9 Reporter: Jens Geyer Assignee: Jens Geyer Fix For: 0.9 Attachments: THRIFT-1710_Minor_issues_in_test_case_code.patch The patch for THRIFT-1670 left some minor issues open. These are hereby fixed. * incorrect search paths in uses clause * unused variable in ReadResponse() * incorrectly formatted comment in IDL -- 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] [Reopened] (THRIFT-1558) Named Pipe and Anonymous Pipe transport for Windows
[ https://issues.apache.org/jira/browse/THRIFT-1558?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell reopened THRIFT-1558: -- Named Pipe and Anonymous Pipe transport for Windows --- Key: THRIFT-1558 URL: https://issues.apache.org/jira/browse/THRIFT-1558 Project: Thrift Issue Type: New Feature Components: C++ - Library Affects Versions: 0.9 Environment: Microsoft Windows / Visual Studio Reporter: Peace C Assignee: Roger Meier Labels: anonymous, named, pipe, thrift, transport Attachments: Pipe_snippets.cpp, Thrift-1558_xplatform_pipe_6-5-2012.patch, Thrift_Named_Pipe_Transport_Windows.patch, Thrift_transport_sample.patch This patch adds named anonymous pipe transport for Windows. The new classes do not affect *NIX builds. We've been using this code on Windows OSX for 6 months and I'm fairly confident in it. It has not been hammered by automated tests and I welcome stress testing to wring out any bugs. The TPipe and TPipeServer classes are generally modeled after TSocket and TSocketServer. The server of course uses TPipeServer to set up the server side then instantiates TPipe for communications. The client instantiates TPipe transport for connection to the server. Here are some code snippet examples from functions we've built. Variables such as 'pipename' are passed in to the functions. Error handling has been omitted. //--- // Server //--- #ifdef _WIN32 pipename = .\\pipe\\ + pipename; boost::shared_ptrTServerTransport transport(new TPipeServer(pipename, 1024, NumThreads)); //Named pipe #else //Mac, *NIX unlink(pipename.c_str()); boost::shared_ptrTServerTransport transport(new TServerSocket(pipename)); #endif boost::shared_ptrTServer server; boost::shared_ptrMyHandler handler(new MyHandler()); boost::shared_ptrTProcessor processor(new MyProcessor(handler)); boost::shared_ptrTTransportFactory tfactory(new TBufferedTransportFactory()); boost::shared_ptrTProtocolFactory pfactory(new TBinaryProtocolFactory()); if(NumThreads = 1) { //Single-threaded server server.reset(new TSimpleServer(processor, transport, tfactory, pfactory)); } else { //Multi-threaded server boost::shared_ptrThreadManager threadManager = ThreadManager::newSimpleThreadManager(NumThreads); boost::shared_ptrPlatformThreadFactory threadFactory = boost::shared_ptrPlatformThreadFactory(new PlatformThreadFactory()); threadManager-threadFactory(threadFactory); threadManager-start(); server.reset(new TThreadPoolServer(processor, transport, tfactory, pfactory, threadManager)); } printf(Starting the 'server'...\n); server-serve(); printf(done.\n); //--- // Client //--- #ifdef _WIN32 pipename = .\\pipe\\ + pipename; boost::shared_ptrTTransport pipe(new TPipe(pipename)); transport.reset(new TBufferedTransport(pipe)); #else //Mac, *nix boost::shared_ptrTTransport socket(new TSocket(pipename)); transport.reset(new TBufferedTransport(socket)); #endif boost::shared_ptrTProtocol protocol(new TBinaryProtocol(transport)); client.reset(new MyClient(protocol)); -- 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-1707) [ruby] Adjust server_spec.rb for RSpec 2.11.x and Ruby 1.9.3
[ https://issues.apache.org/jira/browse/THRIFT-1707?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13468255#comment-13468255 ] Jake Farrell commented on THRIFT-1707: -- Patch causes tests to fail for ruby 1.8.7 Finished in 3.01 seconds 355 examples, 2 failures, 1 pending Failed examples: rspec ./spec/server_spec.rb:102 # Server Thrift::ThreadPoolServer should serve inside a thread rspec ./spec/server_spec.rb:110 # Server Thrift::ThreadPoolServer should avoid running the server twice when retrying rescuable_serve [ruby] Adjust server_spec.rb for RSpec 2.11.x and Ruby 1.9.3 Key: THRIFT-1707 URL: https://issues.apache.org/jira/browse/THRIFT-1707 Project: Thrift Issue Type: Bug Components: Ruby - Library Reporter: Nathan Beyer Fix For: 0.9 Attachments: THRIFT-1707-rewrite-server-spec.patch The message expectations in RSpec 2.11.x don't seem to work consistently on Ruby 1.9.x when Threads are used. This is causing a problem in a few tests in server_spec.rb. -- 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-1645) Replace Object#tee with more conventional Object#tap in specs
[ https://issues.apache.org/jira/browse/THRIFT-1645?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1645. Resolution: Fixed Fix Version/s: 0.9 Assignee: Nathan Beyer Committed Replace Object#tee with more conventional Object#tap in specs - Key: THRIFT-1645 URL: https://issues.apache.org/jira/browse/THRIFT-1645 Project: Thrift Issue Type: Improvement Components: Ruby - Library Affects Versions: 0.8 Reporter: Nathan Beyer Assignee: Nathan Beyer Fix For: 0.9 Attachments: THRIFT-1645-replace-tee-with-tap.patch, THRIFT-1645-replace-tee-with-tap-v2.patch The spec_helper.rb defines an Object#tee method, which is functionally equivalent to Object#tap. Object#tap was added to Ruby 1.9 and to 1.8.7. Attached is a patch that replaces the usage of 'tee' with 'tap' and will define the 'tap' method if it's missing (should only happen when Ruby 1.8.6 or below is used). If there's no need to support such a low minimum, this could 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-1673) Ruby compile flags for extension for multi arch builds (os x)
[ https://issues.apache.org/jira/browse/THRIFT-1673?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13467090#comment-13467090 ] Jake Farrell commented on THRIFT-1673: -- To enable the multi arch the CFLAGS from ruby are needed, this is added in the extconf with Config::CONFIG[CFLAGS]. We could skip all other flags that ruby was compiled with and just use the arch flags as needed within this ticket originally with Config::CONFIG['CFLAGS'].scan( /(-arch )(\S+)/ ).map{|x,y| x + y + ' ' }.join(''). Thoughts? Ruby compile flags for extension for multi arch builds (os x) - Key: THRIFT-1673 URL: https://issues.apache.org/jira/browse/THRIFT-1673 Project: Thrift Issue Type: Bug Components: Ruby - Library Affects Versions: 0.9 Environment: os x Reporter: Jake Farrell Assignee: Jake Farrell Fix For: 0.9 ld: warning: ld: warning: ignoring file thrift_native.o, file was built for unsupported file format ( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 1 0x 3 0x 0 0x 0 0x 0 0x 1 0x 0 0x 0 0x 0 ) which is not the architecture being linked (i386): thrift_native.oignoring file struct.o, file was built for unsupported file format ( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 1 0x 3 0x 0 0x 0 0x 0 0x 1 0x 0 0x 0 0x 0 ) which is not the architecture being linked (i386): struct.o -- 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] [Reopened] (THRIFT-1673) Ruby compile flags for extension for multi arch builds (os x)
[ https://issues.apache.org/jira/browse/THRIFT-1673?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell reopened THRIFT-1673: -- Ruby compile flags for extension for multi arch builds (os x) - Key: THRIFT-1673 URL: https://issues.apache.org/jira/browse/THRIFT-1673 Project: Thrift Issue Type: Bug Components: Ruby - Library Affects Versions: 0.9 Environment: os x Reporter: Jake Farrell Assignee: Jake Farrell Fix For: 0.9 ld: warning: ld: warning: ignoring file thrift_native.o, file was built for unsupported file format ( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 1 0x 3 0x 0 0x 0 0x 0 0x 1 0x 0 0x 0 0x 0 ) which is not the architecture being linked (i386): thrift_native.oignoring file struct.o, file was built for unsupported file format ( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 1 0x 3 0x 0 0x 0 0x 0 0x 1 0x 0 0x 0 0x 0 ) which is not the architecture being linked (i386): struct.o -- 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-1591) Enable TCP_NODELAY for ruby gem
[ https://issues.apache.org/jira/browse/THRIFT-1591?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1591. Resolution: Fixed Fix Version/s: 0.9 Assignee: Christos Trochalakis Committed, thanks for the patch Enable TCP_NODELAY for ruby gem --- Key: THRIFT-1591 URL: https://issues.apache.org/jira/browse/THRIFT-1591 Project: Thrift Issue Type: Bug Reporter: Christos Trochalakis Assignee: Christos Trochalakis Fix For: 0.9 Attachments: 0001-add-tcp-nodelay.patch Ruby gem doesn't set NODELAY socket option like c++, c# or java. This patch enables TCP_NODELAY for client socket. -- 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-1571) Update Ruby HTTP transport for recent Ruby versions
[ https://issues.apache.org/jira/browse/THRIFT-1571?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1571. Resolution: Not A Problem Fix Version/s: 0.9 Assignee: Jake Farrell Current trunk all ready has a variant of this patch in it code resp = http.post(@url.request_uri, @outbuf, @headers) data = resp.body @inbuf = StringIO.new data @outbuf = /code Update Ruby HTTP transport for recent Ruby versions --- Key: THRIFT-1571 URL: https://issues.apache.org/jira/browse/THRIFT-1571 Project: Thrift Issue Type: Bug Components: Ruby - Library Affects Versions: 0.8 Reporter: Seth Hitchings Assignee: Jake Farrell Fix For: 0.9 Attachments: thrift-1571.patch Net::HTTP.post no longer returns the HTTP response body string as a second return value. From http://ruby-doc.org/stdlib-1.8.7/libdoc/net/http/rdoc/Net/HTTP.html: In version 1.1 (ruby 1.6), this method returns a pair of objects, a Net::HTTPResponse object and an entity body string. In version 1.2 (ruby 1.8), this method returns a Net::HTTPResponse object. The attached patch modifies http_client_transport.rb to get the response body from the returned Net::HTTPResponse object instead. -- 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-1356) Memory leak and other issues in TSocketClient
[ https://issues.apache.org/jira/browse/THRIFT-1356?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13465540#comment-13465540 ] Jake Farrell commented on THRIFT-1356: -- Matthew, Thank you for your work on this issue. Please see http://thrift.apache.org/docs/HowToContribute/ for contributing patches Memory leak and other issues in TSocketClient - Key: THRIFT-1356 URL: https://issues.apache.org/jira/browse/THRIFT-1356 Project: Thrift Issue Type: Bug Components: Cocoa - Library Affects Versions: 0.7 Environment: iOS 4.3 Reporter: Matthew Phillips Attachments: TSocketClient.m The socket setup code in TSocketClient seems to have been copied blindly from Apple's docs. The two problems with that are: (a) The example is for non-blocking event-based network IO, but Thrift uses it in blocking mode and does not handle the delegate events it registers for. This causes network operations to randomly hang. (b) It retains the input and output streams, which already have a retain count of 1, and which are then retained again by the superclass, causing a memory leak. -- 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-1034) Add a multiplexing Java client
[ https://issues.apache.org/jira/browse/THRIFT-1034?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13465556#comment-13465556 ] Jake Farrell commented on THRIFT-1034: -- If you could please add some unit tests to this I will commit it Add a multiplexing Java client -- Key: THRIFT-1034 URL: https://issues.apache.org/jira/browse/THRIFT-1034 Project: Thrift Issue Type: New Feature Components: Java - Library Environment: Java v1.4 or higher Reporter: Xing Jin Attachments: thrift-1034-patch.txt One of our recent projects requires to fetch responses from several hundred servers. All servers have similar settings. The client needs to send same request to all servers, and then fetch their responses. We would like to use non-blocking sockets to implement it, as it is much faster than setting up hundreds of blocking sockets. So in this patch, we create a client class, which sends a same request to multiple servers (using java.nio.selector and non-blocking socket), then fetches response from all these servers, and returns results as an array of ByteBuffer. We also pass a timeout value to the client, so that when a pre-defined time duration passes, the client would shutdown all sockets and return any available responses. It assumes all servers are non-blocking servers and all use TFramedTransport. We have done many local tests. We could generate some unittest if necessary. Appreciate any comments! -- 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] [Assigned] (THRIFT-1034) Add a multiplexing Java client
[ https://issues.apache.org/jira/browse/THRIFT-1034?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell reassigned THRIFT-1034: Assignee: Jake Farrell Add a multiplexing Java client -- Key: THRIFT-1034 URL: https://issues.apache.org/jira/browse/THRIFT-1034 Project: Thrift Issue Type: New Feature Components: Java - Library Environment: Java v1.4 or higher Reporter: Xing Jin Assignee: Jake Farrell Attachments: thrift-1034-patch.txt One of our recent projects requires to fetch responses from several hundred servers. All servers have similar settings. The client needs to send same request to all servers, and then fetch their responses. We would like to use non-blocking sockets to implement it, as it is much faster than setting up hundreds of blocking sockets. So in this patch, we create a client class, which sends a same request to multiple servers (using java.nio.selector and non-blocking socket), then fetches response from all these servers, and returns results as an array of ByteBuffer. We also pass a timeout value to the client, so that when a pre-defined time duration passes, the client would shutdown all sockets and return any available responses. It assumes all servers are non-blocking servers and all use TFramedTransport. We have done many local tests. We could generate some unittest if necessary. Appreciate any comments! -- 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] [Assigned] (THRIFT-771) Publish JMX metrics from Thrift servers
[ https://issues.apache.org/jira/browse/THRIFT-771?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell reassigned THRIFT-771: --- Assignee: Jake Farrell Publish JMX metrics from Thrift servers --- Key: THRIFT-771 URL: https://issues.apache.org/jira/browse/THRIFT-771 Project: Thrift Issue Type: New Feature Components: Java - Library Reporter: Bryan Duxbury Assignee: Jake Farrell It'd be great if we tracked metrics about the operation of our Thrift servers and published them via JMX. This would allow standard monitoring tools to track Thrift 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-1680) make install requires GNU make
[ https://issues.apache.org/jira/browse/THRIFT-1680?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13466044#comment-13466044 ] Jake Farrell commented on THRIFT-1680: -- Having a mix of on/off would complicate things unnecessarily, and how do we decide what is production ready (os x vs ubuntu vs ...). I prefer the all on and disable any that can not be build due to lacking dependencies or are specified using a --without flag. An option to only build the compiler would be a nice addition though, --compiler-only perhaps make install requires GNU make -- Key: THRIFT-1680 URL: https://issues.apache.org/jira/browse/THRIFT-1680 Project: Thrift Issue Type: Bug Components: C++ - Compiler Affects Versions: 0.8 Environment: NetBSD Reporter: James K. Lowden Assignee: Jake Farrell Priority: Minor Labels: bsdmake, gmake, make Attachments: Thrift-1680.patch Original Estimate: 3h Remaining Estimate: 3h test/cpp/Makefile.am includes targets whose dependency rule relies on the variable $ to pick up the first dependency. This variable is specific to GNU make; it is not supported by most BSD make programs. AFAICT this is the only such dependency on GNU make. I was able to build thrift using BSD make; I was prevented only from installing it (because install invokes tests). BSD make has no analog for $. The simplest fix I know of is to repeat the name of the first dependency the command. The second easiest fix would be to document the limitation. ;-) Three other suggestions, if I may: 1. It would be nice if the DIR for --with-boost=DIR were more clearly specified. It's not obvious that --with-boost=/usr/pkg is what's needed if the Boost headers are in /usr/pkg/include/boost. 2. The defaults indicated by configure --help are IMO misleading because they're the defaults *if* configure detects them. I would prefer all default to No, and for configure to stop with an error if --with-foo is specified and fails. It is otherwise exceedingly difficult to detect automatically whether the specified configuration was in fact installed. 3. The thrift error message is ridiculous: $ thrift --foo 21 | wc -l 78 The first line No output language(s) specified (less the !!!, please) suffices to indicate the syntax error. The user can more easily consult the manual to learn how to use the program than read 78 lines of output on his terminal. The help obscures the error. 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-1680) make install requires GNU make
[ https://issues.apache.org/jira/browse/THRIFT-1680?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13466047#comment-13466047 ] Jake Farrell commented on THRIFT-1680: -- initial patch committed fixing sub-issues. make install requires GNU make -- Key: THRIFT-1680 URL: https://issues.apache.org/jira/browse/THRIFT-1680 Project: Thrift Issue Type: Bug Components: C++ - Compiler Affects Versions: 0.8 Environment: NetBSD Reporter: James K. Lowden Assignee: Jake Farrell Priority: Minor Labels: bsdmake, gmake, make Attachments: Thrift-1680.patch Original Estimate: 3h Remaining Estimate: 3h test/cpp/Makefile.am includes targets whose dependency rule relies on the variable $ to pick up the first dependency. This variable is specific to GNU make; it is not supported by most BSD make programs. AFAICT this is the only such dependency on GNU make. I was able to build thrift using BSD make; I was prevented only from installing it (because install invokes tests). BSD make has no analog for $. The simplest fix I know of is to repeat the name of the first dependency the command. The second easiest fix would be to document the limitation. ;-) Three other suggestions, if I may: 1. It would be nice if the DIR for --with-boost=DIR were more clearly specified. It's not obvious that --with-boost=/usr/pkg is what's needed if the Boost headers are in /usr/pkg/include/boost. 2. The defaults indicated by configure --help are IMO misleading because they're the defaults *if* configure detects them. I would prefer all default to No, and for configure to stop with an error if --with-foo is specified and fails. It is otherwise exceedingly difficult to detect automatically whether the specified configuration was in fact installed. 3. The thrift error message is ridiculous: $ thrift --foo 21 | wc -l 78 The first line No output language(s) specified (less the !!!, please) suffices to indicate the syntax error. The user can more easily consult the manual to learn how to use the program than read 78 lines of output on his terminal. The help obscures the error. 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] [Closed] (THRIFT-1702) a thrift manual
[ https://issues.apache.org/jira/browse/THRIFT-1702?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1702. Resolution: Implemented Committed initial patch in Thrift-1680 which addresses problems stated within this issue. Avoiding moving --help to a man page to keep the install compact. a thrift manual --- Key: THRIFT-1702 URL: https://issues.apache.org/jira/browse/THRIFT-1702 Project: Thrift Issue Type: Improvement Components: Documentation Affects Versions: 0.9 Environment: any Reporter: James K. Lowden Assignee: Jake Farrell Labels: documentation, patch Fix For: 0.9 Attachments: main.diff, thrift.1 Original Estimate: 1h Remaining Estimate: 1h Attached is a manual for the Thrift compiler in mdoc format, and a patch to eliminate the brutal 80-line error message that was usage(). The man page may be previewed at http://www.schemamania.org/thrift/thrift.pdf. The tail end is incomplete because the information didn't happen to be included in the usage() text. I hope you agree the manual is easier to read and more convenient to use. -- 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-1644) Upgrade RSpec to 2.10.x and refactor specs as needed
[ https://issues.apache.org/jira/browse/THRIFT-1644?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Farrell closed THRIFT-1644. Resolution: Fixed Fix Version/s: 0.9 Assignee: Nathan Beyer (was: Jake Farrell) Committed, switched to rspec 2.11.0 and added mongrel pre version to gemspec. Upgrade RSpec to 2.10.x and refactor specs as needed Key: THRIFT-1644 URL: https://issues.apache.org/jira/browse/THRIFT-1644 Project: Thrift Issue Type: Improvement Components: Ruby - Library Affects Versions: 0.8 Reporter: Nathan Beyer Assignee: Nathan Beyer Labels: ruby Fix For: 0.9 Attachments: THRIFT-1644-upgrade-to-rspec-2101.patch The included patch updates the Ruby library to utilized RSpec 2.10.1. This required some refactoring of the actual specs as they were extending from ExampleGroup, which as far as I can tell is not supported in RSpec 2. There were also a few other changes I had to make to get the specs working, but I believe they maintain the original intent of all specs. There's likely additional clean up and trimming that can be done, but that should happen separately. -- 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-1704) Tornado support (Python)
[ https://issues.apache.org/jira/browse/THRIFT-1704?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13465337#comment-13465337 ] Jake Farrell commented on THRIFT-1704: -- Chris, thank you for the initial work on this patch. The latest stable version of tornado should be supported, currently its 2.4.0 so the patch is good in that regard. The unit tests should not fail if tornado support is not being used or available as this will be an optional configuration type Tornado support (Python) Key: THRIFT-1704 URL: https://issues.apache.org/jira/browse/THRIFT-1704 Project: Thrift Issue Type: New Feature Components: Python - Compiler, Python - Library Affects Versions: 0.9 Environment: Tornado 2.4.0 (https://github.com/facebook/tornado/tree/v2.4.0) Reporter: Chris Piro Attachments: thrift-1704-tornado.patch Add support for Tornado, the non-blocking server framework released by Facebook. The attached patch adds a {{--gen py:tornado}} option to the compiler, support bits to Python library, a tutorial server and client, and a modest unit test. The attached patch (against {{trunk}}) has been running in the critical path of a production web site for several months with modest load. It seems to work fine, though no serious attempt has been made to optimize for performance. some snippets from the tutorial server and client code, respectively: {code} class CalculatorHandler(object): def add(self, n1, n2, callback): callback(n1 + n2) def main(): handler = CalculatorHandler() processor = Calculator.Processor(handler) pfactory = TBinaryProtocol.TBinaryProtocolFactory() server = TTornado.TTornadoServer(processor, pfactory) server.bind(9090) server.start(1) ioloop.IOLoop.instance().start() {code} {code} transport = TTornado.TTornadoStreamTransport('localhost', 9090) pfactory = TBinaryProtocol.TBinaryProtocolFactory() client = Calculator.Client(transport, pfactory) yield gen.Task(transport.open) yield gen.Task(client.ping) sum_ = yield gen.Task(client.add, 1, 1) print 1 + 1 = {}.format(sum_) {code} particular concerns: * The library and generated code has only been tested with Tornado 2.4.0. Is there a preferred spot to note that dependency? * The unit test relies on Tornado to run and will fail if it's not available at {{make check}} time. What's the proper way to depend on Tornado / skip the test where Tornado is unavailable? -- 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