common/thrift.git
17 years agoThrift: Perl HttpClient and fixes.
David Reiss [Thu, 8 Nov 2007 01:05:46 +0000 (01:05 +0000)] 
Thrift: Perl HttpClient and fixes.

Summary:
Also updated the CONTRIBUTORS file.  Sorry, Boz.

Reviewed By: mcslee

Revert Plan: ok

Other Notes:
Submitted by Igor Afanasyev.
Reviewed by Jake Luciani.

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665327 13f79535-47bb-0310-9956-ffa450edef68

17 years agoDeal with UnsupportedEncodingException in TBinaryProtocol
Mark Slee [Wed, 7 Nov 2007 00:48:47 +0000 (00:48 +0000)] 
Deal with UnsupportedEncodingException in TBinaryProtocol

Summary: In case you are running on a horrendous JVM that doesn't have UTF-8 support

Reviewed By: dreiss

Test Plan: Compile.

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665326 13f79535-47bb-0310-9956-ffa450edef68

17 years agoAdd include_once statements for generated PHP code that depends upon other types
Mark Slee [Tue, 6 Nov 2007 22:11:29 +0000 (22:11 +0000)] 
Add include_once statements for generated PHP code that depends upon other types

Reviewed By: root

Test Plan: Generate PHP code for a .thrift file with an include in it

Other Notes: Reviewed by Todd Lipcon from AmieStreet

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665325 13f79535-47bb-0310-9956-ffa450edef68

17 years agoMissing configure check for strerror function
Mark Slee [Tue, 6 Nov 2007 22:10:24 +0000 (22:10 +0000)] 
Missing configure check for strerror function

Reviewed By: dreiss

Test Plan: Run configure script

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665324 13f79535-47bb-0310-9956-ffa450edef68

17 years ago-- ensure that flush is called in close() of any wrapper transport
Aditya Agarwal [Tue, 6 Nov 2007 06:33:06 +0000 (06:33 +0000)] 
-- ensure that flush is called in close() of any wrapper transport

Summary:
- unflushed data should be flushed when transport is closed
- this diff calls flush for TBufferedTransport and TFramedTransport

Reviewed By: dreiss

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665323 13f79535-47bb-0310-9956-ffa450edef68

17 years agoAdd programatic shutdown option to Java Thrift servers
Mark Slee [Sat, 3 Nov 2007 05:30:32 +0000 (05:30 +0000)] 
Add programatic shutdown option to Java Thrift servers

Summary: Same paradigm as in C++ model. Allow ServerTransport to be interrupted to block an accept loop and cleanly stop serving client requests.

Reviewed By: dreiss

Test Plan: Invoke shutdown() method on a TServer

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665322 13f79535-47bb-0310-9956-ffa450edef68

17 years agoMake Java TbinaryProtocol enfore UTF-8
Mark Slee [Sat, 3 Nov 2007 04:48:43 +0000 (04:48 +0000)] 
Make Java TbinaryProtocol enfore UTF-8

Summary: Java Strings have to have an encoding, they can't just be binary. The constructor and getBytes() method enforce this, so we are standardizing on UTF-8 to avoid string-mangling.

Reviewed By: dreiss

Test Plan: Code all works the exact same in the normal case, and doesn't mangle characters beyond ASCII or ISO-LATIN-1

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665321 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[TMemoryBuffer: an in-memory buffer acting like a transport]
lklots [Fri, 2 Nov 2007 23:01:27 +0000 (23:01 +0000)] 
[TMemoryBuffer: an in-memory buffer acting like a transport]

Summary: This is the php equivalent of the cpp TMemoryBuffer.
         It is simply a transport that stores read and fetches write
         requests to and from a string.

Trac Bug: #

Blame Rev:

Reviewed By: dreiss

Test Plan: Tested using thrift de/serialization. Wrote thrift objeccts
           to the buffer and then read them later to resconstruct them.
           Tested exceptional cases.

Revert Plan: ok

Database Impact: none

Memcache Impact: none

Other Notes:

EImportant:

- begin *PUBLIC* platform impact section -
Bugzilla: #
- end platform impact -

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665320 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift_protocol] need negative testing for default inclusion
hzhao [Fri, 2 Nov 2007 03:18:28 +0000 (03:18 +0000)] 
[thrift_protocol] need negative testing for default inclusion

Reviewed By: dweatherford
Test Plan: dev026 build

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665319 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] return empty string instead of NULL
dweatherford [Fri, 2 Nov 2007 02:22:25 +0000 (02:22 +0000)] 
[thrift] return empty string instead of NULL

Summary: Turns out they're different, oops
Reviewed By: marcel
Test Plan: recompile, reinstall, synapse:tablet.get() on a nonexistent cell (which returns an empty string)
Revert: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665318 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Create directories with more permissive modes.
David Reiss [Thu, 1 Nov 2007 17:15:35 +0000 (17:15 +0000)] 
Thrift: Create directories with more permissive modes.

Summary:
How many times has no one else been able to use your awesome Python script
because the Thrift generated files are in a directory that they can't access?
Never again!  We now create directories with mode 0777.
Of course, your process umask will ensure that they are actually created
with mode 0755.  (This is how the mkdir command works.)

Reviewed By: mcslee

Test Plan:
Rebuilt thrift, then did this:
dreiss@dreiss-vmware:dir_mode:thrift/test$ rm -rf gen-*
dreiss@dreiss-vmware:dir_mode:thrift/test$ thrift -cpp  -java -php -py ThriftTest.thrift
dreiss@dreiss-vmware:dir_mode:thrift/test$ ls -ld gen-*
drwx------ 2 dreiss dreiss 4096 2007-10-18 12:20 gen-cpp
drwx------ 3 dreiss dreiss 4096 2007-10-18 12:20 gen-java
drwx------ 2 dreiss dreiss 4096 2007-10-18 12:20 gen-php
drwx------ 3 dreiss dreiss 4096 2007-10-18 12:20 gen-py
dreiss@dreiss-vmware:dir_mode:thrift/test$ rm -rf gen-*
dreiss@dreiss-vmware:dir_mode:thrift/test$ ../compiler/cpp/thrift -cpp  -java -php -py ThriftTest.thrift
dreiss@dreiss-vmware:dir_mode:thrift/test$ ls -ld gen-*
drwxr-xr-x 2 dreiss dreiss 4096 2007-10-18 12:20 gen-cpp
drwxr-xr-x 3 dreiss dreiss 4096 2007-10-18 12:20 gen-java
drwxr-xr-x 2 dreiss dreiss 4096 2007-10-18 12:20 gen-php
drwxr-xr-x 3 dreiss dreiss 4096 2007-10-18 12:20 gen-py
dreiss@dreiss-vmware:dir_mode:thrift/test$

Revert Plan: ok

Other Notes:
With some help from external contributor Ben Maurer.

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665317 13f79535-47bb-0310-9956-ffa450edef68

17 years agoTHRIFT: update the thrift extension
boz [Thu, 1 Nov 2007 07:37:45 +0000 (07:37 +0000)] 
THRIFT: update the thrift extension

Summary: more ZTS stuff

Reviewed By: hzhao

Test Plan: the same tests still pass

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665316 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] Merge protocol/transport changes from tfb/www
dweatherford [Wed, 31 Oct 2007 23:30:56 +0000 (23:30 +0000)] 
[thrift] Merge protocol/transport changes from tfb/www

Summary: Supporting the thrift_protocol extension.
  Relevant changesets are r66531, r66700, r66708
Reviewed By: mcslee
Test Plan: same code already runs in tfb trunk, php -l
Revert: svn

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665315 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] erlang structs now compile
eletuchy [Wed, 31 Oct 2007 13:40:48 +0000 (13:40 +0000)] 
[thrift] erlang structs now compile

Summary: if "cond and cond ->" is not valid erlang,
         if "cond andalso cond ->" is.

Reviewed By: cpiro

Test Plan: generated erlang from and thrift file with structs ...
           generated code compiles

Revert Plan: sure

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665314 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] PHP generator: extension support
dweatherford [Wed, 31 Oct 2007 06:03:54 +0000 (06:03 +0000)] 
[thrift] PHP generator: extension support

Summary: Adds php code generation to take advantage of the php
  'thrift_protocol' extension (currently for deserialization only)

  Requires you to swap your protocol for a TBinaryProtocolAccelerated
  (which just inherits TBinaryProtocol without actually adding any
  new functionality) and that you use a TFramedTransport or wrap your
  transport in a TBufferedTransport.

  TBinaryProtocolAccelerated is currently only in tfb/www/lib (or will
  be momentarily).

Reviewed By: mcslee
Test Plan: synapse_feed uses this in my sandbox, works fine
Revert: svn

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665313 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] PHP thrift_protocol extension
dweatherford [Wed, 31 Oct 2007 04:22:12 +0000 (04:22 +0000)] 
[thrift] PHP thrift_protocol extension

Summary: Implement a deserializer for thrift integral types and containers
  in C++ for extra performance. To be combined with compiler support to
  generate code that uses the extension + TBinaryProtocolAccelerated to
  enable it.

Reviewed By: mcslee
Test Plan: runs fine in my sandbox...
Revert: svn

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665312 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] Output dir selection + updated TSCons
dweatherford [Wed, 31 Oct 2007 02:18:14 +0000 (02:18 +0000)] 
[thrift] Output dir selection + updated TSCons

Summary: Allows setting the output directory via the new '-o dir' cmdline option.

  TSCons is updated to use this to put the output in the right place no matter
  the cwd, so doing dependent builds from different directories won't break.

Reviewed By: martin
Test Plan: mkdir /tmp/honk; thrift -cpp -java -javabean -php -phpi -py -rb -xsd -perl -erl -ocaml -hs -cocoa -o /tmp/honk Tablet.thrift
Revert: svn

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665311 13f79535-47bb-0310-9956-ffa450edef68

17 years agoFix handling of ruby write parameters due to nil vs false
Mark Slee [Tue, 30 Oct 2007 16:55:47 +0000 (16:55 +0000)] 
Fix handling of ruby write parameters due to nil vs false

Summary: Need to check for != nil, not just boolean expression

Reviewed By: mcslee

Test Plan: Send a boolean "false" value

Other Notes: Patch submitted by Patrick Collison

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665310 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Reorganize Cocoa library.
David Reiss [Wed, 24 Oct 2007 03:35:36 +0000 (03:35 +0000)] 
Thrift: Reorganize Cocoa library.

Summary:
External patch from Andrew McGeachie.
Just shuffle the Cocoa library files around.

Reviewed By: mcslee

Test Plan: In Andrew we trust.

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665309 13f79535-47bb-0310-9956-ffa450edef68

17 years agoMake the Java generator respect the optional keyword in struct writers
Mark Slee [Wed, 24 Oct 2007 02:56:24 +0000 (02:56 +0000)] 
Make the Java generator respect the optional keyword in struct writers

Reviewed By: dreiss

Test Plan: Generate Java code. Check functionality and safe compile

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665308 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] gut Erlang Thrift configuration; start using get_env
Christopher Piro [Tue, 23 Oct 2007 09:47:15 +0000 (09:47 +0000)] 
[thrift] gut Erlang Thrift configuration; start using get_env

Summary: I patterned some config stuff after iserve, but Erlang's built-in stuff is better

Reviewed By: gopher

Test Plan: works with recent ch server

Revert Plan: ok

Other Notes: default config given in thrift.app

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665307 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] Updating gen_phpi for new header format
dweatherford [Tue, 23 Oct 2007 00:26:44 +0000 (00:26 +0000)] 
[thrift] Updating gen_phpi for new header format

Summary: This was still sending/expecting the old style (no version field); should be fixed now.
Reviewed By: mcslee
Test Plan: build and use Tablemaster and Tablet interfaces with gen-phpi
Revert: svn
DiffCamp Revision: 1435

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665306 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] clean up error logging in Erlang
Christopher Piro [Fri, 19 Oct 2007 21:34:31 +0000 (21:34 +0000)] 
[thrift] clean up error logging in Erlang

Summary: pushed all formatting out of thrift_error_logger.erl, reenable crash logs, standardize

Reviewed By: eletuchy

Test Plan: works with latest ch server

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665305 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] TSocket host and port getters
dweatherford [Fri, 19 Oct 2007 01:03:32 +0000 (01:03 +0000)] 
[thrift] TSocket host and port getters

Summary: "Porting" this feature from PHP; I find it useful in the Synapse client.
Reviewed By: mcslee
Test Plan: It compiles, ship it!
Revert: svn

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665304 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Kill a warning.
David Reiss [Wed, 17 Oct 2007 03:39:55 +0000 (03:39 +0000)] 
Thrift: Kill a warning.

Summary:
These should always have been const.

Reviewed By: mcslee

Test Plan:
Re-ran the dense protocol test.

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665303 13f79535-47bb-0310-9956-ffa450edef68

17 years agoGenerate REST code properly for objects/struct arguments
Mark Slee [Mon, 15 Oct 2007 21:32:12 +0000 (21:32 +0000)] 
Generate REST code properly for objects/struct arguments

Reviewed By: hzhao

Test Plan: Data store API

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665302 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] make thrift_logger.erl more robust against badmatch
Christopher Piro [Sat, 13 Oct 2007 05:15:33 +0000 (05:15 +0000)] 
[thrift] make thrift_logger.erl more robust against badmatch

Summary: more robust logic theres

Reviewed By: eletuchy

Test Plan: ok

Revert Plan: ok

Other Notes: the precommit hooks should forbid out-of-towners from being cited as reviewers

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665301 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] Erlang Thrift 'oop:get' -> 'This#'
Christopher Piro [Sat, 13 Oct 2007 05:10:52 +0000 (05:10 +0000)] 
[thrift] Erlang Thrift 'oop:get' -> 'This#'

Summary: the client structures aren't oop objects, they're vanilla records ... adjust accordingly

Reviewed By: eletuchy

Test Plan: ok

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665300 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] retool oop.erl, fix tBufferedTransportFactory.erl
Christopher Piro [Sat, 13 Oct 2007 01:11:46 +0000 (01:11 +0000)] 
[thrift] retool oop.erl, fix tBufferedTransportFactory.erl

Summary: oop.erl used to assume that an undef or function_clause meant a method wasn't defined, but sometimes a method does exist and an undef happens while it's executing.

Case in point, getTransport in tBufferedTransportFactory totally didn't work and instead of exiting, oop.erl fell back silently to tTransportFactory, so everywhere I thought I was talking to tBufferedTransport, I was talking directly to the tSocket.  borkborkbork.

Blame: all me baby

Reviewed By: eletuchy

Test Plan: channel server works

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665299 13f79535-47bb-0310-9956-ffa450edef68

17 years agomade tutorial.thrift executable
pkeyani [Wed, 10 Oct 2007 05:22:31 +0000 (05:22 +0000)] 
made tutorial.thrift executable

Summary: made tutorial.thrift executable

Trac Bug: #

Blame Rev:

Reviewed By: mcslee

Test Plan: tested locally

Revert Plan: revertable

Notes:

EImportant:

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665298 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] TSocketPool::addServer, c++ version
dweatherford [Tue, 9 Oct 2007 22:57:23 +0000 (22:57 +0000)] 
[thrift] TSocketPool::addServer, c++ version

Summary: Same thing as the previous PHP change. Also includes a new constructor for easy building of a TSocketPool with a single host (for later filling in via addServer) without extra std::vector boxing/unboxing.

Reviewed By: mcslee

Test Plan: Synapse c++ client at r62896 uses this.

Revert: OK

TracCamp Project: Thrift

DiffCamp Revision: 909

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665297 13f79535-47bb-0310-9956-ffa450edef68

17 years agoJava Thrift objects implement common base interface
Mark Slee [Tue, 9 Oct 2007 20:55:10 +0000 (20:55 +0000)] 
Java Thrift objects implement common base interface

Reviewed By: dreiss

Test Plan: Generate java code and run against new library.

Revert: OK

DiffCamp Revision: 900

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665296 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] don't scope non-service types in Erlang
Christopher Piro [Tue, 9 Oct 2007 04:41:48 +0000 (04:41 +0000)] 
[thrift] don't scope non-service types in Erlang

Summary: kind of funny ... exact same patch as for the Ruby version; both were unexposed until I tried using reflection_limited

Test Plan: thx but nothx

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665295 13f79535-47bb-0310-9956-ffa450edef68

17 years agoUse json encoding logic for <list> and <set> args in Thrift PHP/REST
Mark Slee [Mon, 8 Oct 2007 22:31:03 +0000 (22:31 +0000)] 
Use json encoding logic for <list> and <set> args in Thrift PHP/REST

Reviewed By: hzhao

Test Plan: Data store API interface

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665294 13f79535-47bb-0310-9956-ffa450edef68

17 years agoPython automated test patch
Mark Slee [Fri, 5 Oct 2007 00:13:24 +0000 (00:13 +0000)] 
Python automated test patch

Summary: Submitted by Ben Maurer

Reviewed By: dreiss

Test Plan: Automated python testing for Thrift, lovely.

Revert: OK

DiffCamp Revision: 737

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665293 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: TNullTransport for PHP.
David Reiss [Thu, 4 Oct 2007 23:02:01 +0000 (23:02 +0000)] 
Thrift: TNullTransport for PHP.

Summary:
We have this in C++.  Adding an implementation for PHP.

Reviewed By: mcslee

Test Plan:
Used it while testing web code.

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665292 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] don't scope non-service types in Ruby
Christopher Piro [Thu, 4 Oct 2007 01:54:11 +0000 (01:54 +0000)] 
[thrift] don't scope non-service types in Ruby

Summary: non-service types live in the top-level namespace, so look for them there. example from FacebookService.rb (accessing Service from reflection_limited_types.rb):

              FIELDS = {
         -      0 => {:type => TType::STRUCT, :name => 'success', :class => reflection_limited_types.Service}
         +      0 => {:type => TType::STRUCT, :name => 'success', :class => Service}
              }

         preferable to adding a "module honk_types ... end" around honk_types.rb ... non-service types should land in top-level space (or whatever ruby_namespace has been defined).  if ruby_namespace even works ... who knows

Reviewed By: mcslee

Test Plan: now reflection_limited works with my simple Ruby client

           honestly, there's no test suite for these?  TODO:cpiro

Revert: OK

TracCamp Project: Thrift

DiffCamp Revision: 735

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665291 13f79535-47bb-0310-9956-ffa450edef68

17 years agoMake REST PHP deserializer generated PHP code support map/list/set
Mark Slee [Thu, 4 Oct 2007 01:19:20 +0000 (01:19 +0000)] 
Make REST PHP deserializer generated PHP code support map/list/set

Summary: list/set are comma-separated and explode, map is JSON decoded

Reviewed By: hzhao

Test Plan: Invoke API methods via JSON

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665290 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[Explicitly declare shared_ptr]
yunfang [Wed, 3 Oct 2007 22:59:41 +0000 (22:59 +0000)] 
[Explicitly declare shared_ptr]
Summary:
just some simple styling changes. moving  using boost::shared_ptr to .cpp
  and using the full path name in .h
Reviewed by: boz, dreiss
Test Plan: compiled and tested on the adfinder

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665289 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] fix Ruby codegen: capitalize module name for enums
Christopher Piro [Wed, 3 Oct 2007 07:13:44 +0000 (07:13 +0000)] 
[thrift] fix Ruby codegen: capitalize module name for enums

Summary: all module names must be capitalized in Ruby -- if the enum name from the interface isn't capitalized \
         then it's a runtime error, e.g. in fb303_types.rb:

         -module fb_status
         +module Fb_status

Reviewed By: mcslee

Test Plan: fb303 now works with Ruby binding

Revert: OK

TracCamp Project: Thrift

DiffCamp Revision: 692

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665288 13f79535-47bb-0310-9956-ffa450edef68

17 years agoFix 32-bit Python encoding integer issue
Mark Slee [Tue, 2 Oct 2007 04:44:48 +0000 (04:44 +0000)] 
Fix 32-bit Python encoding integer issue

Summary: Python on 32-bit platforms 2.4+ wants to keep hexconstants positive, therefore converting 0x800000000 to a (long) type to keep that. This causes issues when performing comparison with a signed negative integer.

Reviewed By: dreiss

Test Plan: Python on 32 bit 2.4+ system making Thrift calls

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665287 13f79535-47bb-0310-9956-ffa450edef68

17 years agoFix missing break statements in Java ProtocolUtil
Mark Slee [Tue, 2 Oct 2007 04:43:31 +0000 (04:43 +0000)] 
Fix missing break statements in Java ProtocolUtil

Summary: Oops. switch statement n00b error.

Reviewed By: jssarma

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665286 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] Erlang Thrift changes, take 3
Christopher Piro [Tue, 2 Oct 2007 01:33:37 +0000 (01:33 +0000)] 
[thrift] Erlang Thrift changes, take 3

Summary: svn ci missed a bunch of paths ... blew away the whole thing and copied from the git repo.  this is getting ridiculous.

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665285 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] otpification and sane configuration for Erlang Thrift
Christopher Piro [Tue, 2 Oct 2007 00:35:12 +0000 (00:35 +0000)] 
[thrift] otpification and sane configuration for Erlang Thrift

Summary: a small victory in the neverending quest of OTPifying this binding -- search for config files in ./conf/ (relative to the cwd of the emulator).  for example, when you start the channel server, ./conf/{channel,thrift}.conf should exist.  better than having to recompile to change a configuration ... reconfig should take care of that in running code.

Test Plan: works with channel server

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665284 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] revert 61883
Christopher Piro [Tue, 2 Oct 2007 00:24:07 +0000 (00:24 +0000)] 
[thrift] revert 61883

Summary: i suck at git/svn ... commited not enough and with no commitlog

Notes: YOU'RE DOING IT WRONG

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665283 13f79535-47bb-0310-9956-ffa450edef68

17 years agoMerge branch 'otp'
Christopher Piro [Tue, 2 Oct 2007 00:05:04 +0000 (00:05 +0000)] 
Merge branch 'otp'

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665282 13f79535-47bb-0310-9956-ffa450edef68

17 years agoMerging more server support and exception fixes for Cocoa
Mark Slee [Mon, 24 Sep 2007 19:24:53 +0000 (19:24 +0000)] 
Merging more server support and exception fixes for Cocoa

Summary: Submitted by Andrew McGeachie.

Reviewed By: mcslee

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665281 13f79535-47bb-0310-9956-ffa450edef68

17 years agoTHRIFT: Make the mutex assignable
boz [Sat, 22 Sep 2007 23:08:11 +0000 (23:08 +0000)] 
THRIFT: Make the mutex assignable

Summary: we need to use a shared_ptr instead of an old fashioned one if we're
going to stick with this PIMPL model

Reviewed By: dreiss, marc

Test Plan: test program didn't fail or leak memory, foreman (fb303 client)
worked without problem

Revert Plan: just make sure you find some other solution to this problem

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665280 13f79535-47bb-0310-9956-ffa450edef68

17 years agoTHRIFT: Mutex and ReadWriteMutex leaked memory, now they don't
boz [Thu, 20 Sep 2007 23:24:16 +0000 (23:24 +0000)] 
THRIFT: Mutex and ReadWriteMutex leaked memory, now they don't

Summary: also added myself to CONTRIBUTORS.

Reviewed By: marc

Test Plan: the following program no longer leaks memory (valgrind):

int main(int argc, char **argv){
  Mutex mu;
  mu.lock();
  mu.unlock();
}

Revert Plan: ok

Notes: this is kind of important

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665279 13f79535-47bb-0310-9956-ffa450edef68

17 years agoMerging latest minor Cocoa changes
Mark Slee [Wed, 19 Sep 2007 21:12:52 +0000 (21:12 +0000)] 
Merging latest minor Cocoa changes

Summary: BinaryProtocol handling of null strings, destructor, and contributors email fix. Submitted by Andrew McGeachie

Reviewed By: mcslee

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665278 13f79535-47bb-0310-9956-ffa450edef68

17 years agoWhoops forgot to actually svn add Andrew's files
Mark Slee [Wed, 19 Sep 2007 21:10:18 +0000 (21:10 +0000)] 
Whoops forgot to actually svn add Andrew's files

Summary: Tricky svn add command will get you every time

Reviewed By: dreiss

Test Plan: test/ tutorial/ Cocoa code

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665277 13f79535-47bb-0310-9956-ffa450edef68

17 years agoOO perl accessors for Thrift objects
Mark Slee [Wed, 19 Sep 2007 06:49:30 +0000 (06:49 +0000)] 
OO perl accessors for Thrift objects

Summary: Submitted by Jake Luciani

Reviewed By: cpiro

Test Plan: Supplied in test/tutorial code

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665276 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] checking in generated reflection code into java library
eletuchy [Wed, 19 Sep 2007 01:23:19 +0000 (01:23 +0000)] 
[thrift] checking in generated reflection code into java library

Summary: Generated this code using:
          /usr/local/share/thrift/if/reflection_limited.thrift

Reviewed By: dreiss

Test Plan: compiled chat_importer (a java FacebookService) against this.

Revert Plan: sure

Database Impact:

Memcache Impact:

Other Notes:

EImportant:

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665275 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Prep for release.
David Reiss [Tue, 18 Sep 2007 19:46:00 +0000 (19:46 +0000)] 
Thrift: Prep for release.

Summary:
- make dist is no fun.  Had to add a lot of stuff to Makefile.am to
  make sure stuff got included in the tarball.
- Added a permanent NEWS file with the release notes for this release.
- clean.sh removes ylwrap also.
- Gave it a real version for make dist.
- Added ACLOCAL_AMFLAGS to lib/cpp/Makefile.am to make it easier to
  work on configure.ac.
- Made concurrency_test a non-installed binary because
  no one wants to install it.
- Dropped some symlinks that were annoying make dist.
- Updated README.

Test Plan:
./bootstrap.sh && ./configure && make dist
Compared contents of tarball to source tree.
Did this from a fresh git tree so no gross untracked files would be around.
On devrs: ./bootstrap.sh && ./configure && make install DESTDIR=/tmp/relinst1
Made sure concurrency_test was built but not installed.
Checked zlib URL with firefox.

Reviewed By: mcslee

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665274 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] spruce up Erlang binding for tonight's release
Christopher Piro [Tue, 18 Sep 2007 06:23:33 +0000 (06:23 +0000)] 
[thrift] spruce up Erlang binding for tonight's release

Summary:
 * got rid of most of the otp_base jonx ... save that for a future release unfortunately
 * cleaned up the tutorial server, added -erl to tutorial.thrift's shebang
 * made better README and TODO

Test Plan: checked out a copy, read my directions, built and ran the tutorial, and pretended that it didn't blow

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665273 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] fix _thrift for inheriting services
Christopher Piro [Tue, 18 Sep 2007 02:14:31 +0000 (02:14 +0000)] 
[thrift] fix _thrift for inheriting services

Summary: obviously Iain's fault

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665272 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] give the generated Erlang service file a _thrift
Christopher Piro [Tue, 18 Sep 2007 00:07:42 +0000 (00:07 +0000)] 
[thrift] give the generated Erlang service file a _thrift

Summary: Before they were names Service.erl, but the Service module name should be reserved for more important things.  Namespaces what?

Test Plan: with channel server

Riders: also fixes whitespace, puts -erl in its right place

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665271 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Put today's date as the next Thrift release.
David Reiss [Mon, 17 Sep 2007 23:53:58 +0000 (23:53 +0000)] 
Thrift: Put today's date as the next Thrift release.

Reviewed By: root

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665270 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Re-committing zlib.
David Reiss [Mon, 17 Sep 2007 23:20:38 +0000 (23:20 +0000)] 
Thrift: Re-committing zlib.

Summary:
Same as the last (reverted) zlib patch,
but this time with way more awesome support for building
with no zlib headers installed.

Reviewed By: mcslee

Test Plan:
- Did lots of really pathological stuff in my VMware.
- On devrs004:
  ./bootstrap.sh && ./configure && make && make install DESTDIR=/tmp/tzinst && echo "Yay"

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665269 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Fix fingerprinting bug.
David Reiss [Mon, 17 Sep 2007 21:16:32 +0000 (21:16 +0000)] 
Thrift: Fix fingerprinting bug.

Summary:
Fingerprints were'nt being initialized properly because I forgot to move
the initialization from t_struct to t_type.  Fixed that.
Also, typedefs weren't generating fingerprints for their true types.

Reviewed By: mcslee

Test Plan:
This didn't work before with -cpp -dense.  Now it does.
typedef list<i32> ilist
struct foo { 1: ilist l }

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665268 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Compile without libevent.
David Reiss [Mon, 17 Sep 2007 21:15:47 +0000 (21:15 +0000)] 
Thrift: Compile without libevent.

Summary:
- Totally re-did the libevent check.
- Thrift now compiles and instals cleanly without libevent.
- (libevent is still needed to build libthriftnb.)

Reviewed By: mcslee

Test Plan:
- Ran configure and make in various configurations in my VMware.
- Clean build and install of Thrift on devrs004 (into /tmp).

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665267 13f79535-47bb-0310-9956-ffa450edef68

17 years agoUpdating TSCons.py to provide capability of passing additional flags to thrift beside...
mvaradachari [Mon, 17 Sep 2007 20:40:16 +0000 (20:40 +0000)] 
Updating TSCons.py to provide capability of passing additional flags to thrift besides the default flag --cpp. EX: scons_env(env,'--py --php')

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665266 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift - typo in comment
Martin Kraemer [Mon, 17 Sep 2007 06:58:47 +0000 (06:58 +0000)] 
Thrift - typo in comment

Summary:
Not really worth notice.  Just fixing some stray uppercase chars in a comment block.

Trac Bug: #

Blame Rev:

Reviewed By:

Test Plan:

Revert Plan:

Database Impact:

Memcache Impact:

Other Notes:

EImportant:

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665265 13f79535-47bb-0310-9956-ffa450edef68

17 years ago[thrift] C++: Pass std::exception from server to client
dweatherford [Sat, 15 Sep 2007 08:49:48 +0000 (08:49 +0000)] 
[thrift] C++: Pass std::exception from server to client

Summary: Rather than an uncaught exception dropping the connection, catching std::exception (and anything derived from it) and passing its message payload back in the form of a T_EXCEPTION message is a much cleaner response.
Reviewed By: mcslee
Test Plan: compile generated code for Synapse's tablet interface, throw a generic exception at the server, observe the message for the exception arising from the client in the form of a TApplicationException (instead of the previous 'no more data to read' exception)
Revert: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665264 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Reverting TZlibTransport
David Reiss [Sat, 15 Sep 2007 01:54:56 +0000 (01:54 +0000)] 
Thrift: Reverting TZlibTransport

Summary:
Stupid Red Hat.
The dev boxes don't have the development packages for zlib.

Blame Rev: 59856

Reviewed By: mcslee

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665263 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Zlib transport.
David Reiss [Sat, 15 Sep 2007 01:44:47 +0000 (01:44 +0000)] 
Thrift: Zlib transport.

Summary:
Add a new transport to the C++ library: TZLibTransport.
This wraps another transport (just like TBufferedTransport),
compresses the data written to it, and uncompresses the data it reads.

Reviewed By: mcslee

Test Plan:
For ax_lib_zlib.m4
 - Ran ./bootstrap.sh.
 - Looked at configure.
 - Ran ./configure.
 - Looked at config.status
 - Ran ./configure --with-zlib=/usr.
 - Looked at config.status
 - Changed configure.ac to AC_LIB_ZLIB(1.2.4)
 - Ran ./configure.
 - Watched it fail.

For TZlibTransport
 - test/ZlibTest.cpp
 - Code coverage (hotness) report sent with review.
 - 100% line coverage for all the good stuff.

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665262 13f79535-47bb-0310-9956-ffa450edef68

17 years agoAdd missing writeEnd calls
Mark Slee [Fri, 14 Sep 2007 22:18:09 +0000 (22:18 +0000)] 
Add missing writeEnd calls

Summary: When flush is called this also should be

Reviewed By: aditya

Test Plan: Use w/ PipedTransport. Should writeEnd() when an exception is thrown

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665261 13f79535-47bb-0310-9956-ffa450edef68

17 years agoUpdate the Thrift CONTRIBUTORS file
Mark Slee [Fri, 14 Sep 2007 19:45:12 +0000 (19:45 +0000)] 
Update the Thrift CONTRIBUTORS file

Summary: A bunch of people belong on this list. So we added them.

Reviewed By: root

Test Plan: This is a text file

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665260 13f79535-47bb-0310-9956-ffa450edef68

17 years agoMerge more cocoa changes from Andrew McGeachie
Mark Slee [Fri, 14 Sep 2007 19:44:30 +0000 (19:44 +0000)] 
Merge more cocoa changes from Andrew McGeachie

Reviewed By: dreiss

Test Plan: To be provided later by McGeachie. Compiler builds fine. Does not affect other libraries.

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665259 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Update syntax files for Vim and Emacs.
David Reiss [Wed, 12 Sep 2007 01:45:12 +0000 (01:45 +0000)] 
Thrift: Update syntax files for Vim and Emacs.

Summary:
Add recognition of the new Thrift keyword cocoa_prefix to
thrift.vim and thrift.el.

Reviewed By: mcslee

Test Plan: We don't need no stinkin' test plans!

Revert Plan: ok

Other Notes:
AWESOMESAUCE!  Thrift now supports namespaces, packages, prefixes, and modules.

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665258 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Clean up and test TDenseProtocol
David Reiss [Tue, 11 Sep 2007 22:09:42 +0000 (22:09 +0000)] 
Thrift: Clean up and test TDenseProtocol

Summary:
- TDenseProtocol now includes a part of the struct fingerprint in
  the serialized message, to protect from unserialzing trash.
- A lot of cleanups and commenting for TDenseProtocol.
- A lot of test cases for same.

Reviewed By: mcslee

Test Plan: test/DenseProtoTest.cpp

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665257 13f79535-47bb-0310-9956-ffa450edef68

17 years agoAdd JavaDoc comments to generated Thrift Java code
Mark Slee [Mon, 10 Sep 2007 22:33:05 +0000 (22:33 +0000)] 
Add JavaDoc comments to generated Thrift Java code
         Reviewed By: dreiss
           Test Plan: Generate Java code from .thrift file w/ javadoc comments
              Revert: OK
               Notes: My first backend diffcamp review

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665256 13f79535-47bb-0310-9956-ffa450edef68

17 years agoModify Thrift parser to disallow optional/required keywords in argument lists
Mark Slee [Mon, 10 Sep 2007 22:08:49 +0000 (22:08 +0000)] 
Modify Thrift parser to disallow optional/required keywords in argument lists

Reviewed By: dreiss

Test Plan: Toss an optional/required in an arg list, check that it's ignored and compiler spits a warning

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665255 13f79535-47bb-0310-9956-ffa450edef68

17 years agoAdding Cocoa generator to Thrift
Mark Slee [Mon, 10 Sep 2007 21:00:23 +0000 (21:00 +0000)] 
Adding Cocoa generator to Thrift

Summary: Thanks to Andrew McGeachie for doing this

Reviewed By: dreiss

Test Plan: No merge/build issues. Will solicit McGeachie for additions to test/cocoa in the future

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665254 13f79535-47bb-0310-9956-ffa450edef68

17 years agoMerge Java get/set Size and Iterator changes from Dave Engberg
Mark Slee [Mon, 10 Sep 2007 20:53:23 +0000 (20:53 +0000)] 
Merge Java get/set Size and Iterator changes from Dave Engberg

Reviewed By: dreiss

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665253 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: TDenseProtocol using variable-length integers.
David Reiss [Fri, 7 Sep 2007 01:34:12 +0000 (01:34 +0000)] 
Thrift: TDenseProtocol using variable-length integers.

Reviewed By: mcslee

Test Plan:
test/DenseProtoTest.cpp

Still have to test:
- Bounds checking.
- borrow/consume on TBuffered and TFramed.

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665252 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: New methods for C++ transports.
David Reiss [Fri, 7 Sep 2007 01:26:30 +0000 (01:26 +0000)] 
Thrift: New methods for C++ transports.

Summary:
To support the upcoming variable-length encoding of integers in
TDenseProtocol, augment Thrift transports with two new methods:
borrow and consume.  Borrow copies some data out of the transport
without consuming it, and consume... consumes it.

Reviewed By: mcslee

Test Plan:
Thrift compiles.
Should check in variable-length integer code for TDenseProtocol
right after this (git ruulz).

Revert Plan: revert stuff that uses these methods also.

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665251 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Python TBufferedTransport improvements.
David Reiss [Wed, 5 Sep 2007 01:14:09 +0000 (01:14 +0000)] 
Thrift: Python TBufferedTransport improvements.

Summary:
The Python version of TBufferedTransport now uses input buffering.
It is also compatible with the fasbinary module.

Reviewed By: mcslee

Test Plan:
test/FastbinaryTest.py

dreiss@dreiss-vmware:~/gp/thrift/test/py$ strace -f ./TestClient.py 2>&1 | grep recv | wc -l
99
# Install new version in other terminal
dreiss@dreiss-vmware:~/gp/thrift/test/py$ strace -f ./TestClient.py 2>&1 | grep recv | wc -l
14

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665250 13f79535-47bb-0310-9956-ffa450edef68

17 years ago-- adding hostinfo and time to GlobalOutput
Aditya Agarwal [Wed, 5 Sep 2007 01:01:15 +0000 (01:01 +0000)] 
-- adding hostinfo and time to GlobalOutput

Summary:
- makes thrift errors a lot more useful

Reviewed By: jwang, mcslee

Test Plan: tested with search

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665249 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Python installation.
David Reiss [Wed, 5 Sep 2007 00:47:32 +0000 (00:47 +0000)] 
Thrift: Python installation.

Summary:
Added the configure script variable PY_PREFIX which serves the same purpose
for Python as --prefix does for C/C++.  We chose to do this because Python
has different conventions for where to install libraries.

Reviewed By: mcslee

Test Plan:
Full clean builds and installs of Thrift from the Thrift root,
with and without PY_PREFIX.  Watched output of make install.

Ran configure from lib/py without PY_PREFIX, with PY_PREFIX and with
PY_PREFIX in the environment.  Checked config.status for each.

Revert Plan: okay

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665248 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: TDenseProtocol.
David Reiss [Tue, 4 Sep 2007 21:49:53 +0000 (21:49 +0000)] 
Thrift: TDenseProtocol.

Summary:
- Made some stuff in TBinaryProtocol protected instead of private.
- Added a preliminary version of TDenseProtocol.  This is still
  super highly experimental and gross, and I wrote a super scary
  comment to explain that to anyone foolish enough to try to use
  this in its current state.

Reviewed By: mcslee

Test Plan: test/DenseProtoTest.cpp

Revert Plan: ok

Memcache Impact:
Save memory if/when people use it.

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665247 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Slight tweaks to local reflection.
David Reiss [Tue, 4 Sep 2007 21:31:04 +0000 (21:31 +0000)] 
Thrift: Slight tweaks to local reflection.

Summary:
Local reflection typespecs for structs now have a dummy T_STOP field at the end
so we don't have to check the size on every iteration.
They also contain information about which fields are optional.
Also put a static pointer to the reflection in each structure.

Reviewed By: mcslee

Test Plan: test/DenseLinkingTest.thrift

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665246 13f79535-47bb-0310-9956-ffa450edef68

17 years agoSummary: Checking in fix to TFileTransport to remove redundant behavior of readEvent...
James Wang [Fri, 31 Aug 2007 23:45:53 +0000 (23:45 +0000)] 
Summary: Checking in fix to TFileTransport to remove redundant behavior of readEvent -- just return NULL or the next event
Also, checking in changes to the php generation code I made awhile ago, but forgot to check in

Reviewed By: aditya, mcslee

Test Plan: Compiled thrift and falcon, and confirmed that falcon's print binary still worked

Revert Plan: revertible

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665245 13f79535-47bb-0310-9956-ffa450edef68

17 years agoMerge some java gen fixes from Johan Oskarsson
Mark Slee [Fri, 31 Aug 2007 20:06:36 +0000 (20:06 +0000)] 
Merge some java gen fixes from Johan Oskarsson

Summary: Making Isset inner classes static because they don't need to reference their owner, and killing some unused variables.

Reviewed By: dreiss

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665244 13f79535-47bb-0310-9956-ffa450edef68

17 years ago-- cleaning up some Makefile issues
Aditya Agarwal [Fri, 31 Aug 2007 08:03:05 +0000 (08:03 +0000)] 
-- cleaning up some Makefile issues

Reviewed By: jwang

Test Plan: compiled

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665243 13f79535-47bb-0310-9956-ffa450edef68

17 years ago-- reset all state when seeking to a chunk
Aditya Agarwal [Fri, 31 Aug 2007 07:54:40 +0000 (07:54 +0000)] 
-- reset all state when seeking to a chunk

Summary:
- this was causing some bizarre issues with seeking to a particular point in the log
- I can't believe we haven't run into this before

Reviewed By: jwang

Test Plan: replayed log file from a partiicular point

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665242 13f79535-47bb-0310-9956-ffa450edef68

17 years agoAdd get_true_type call to RB generator
Mark Slee [Fri, 31 Aug 2007 04:30:52 +0000 (04:30 +0000)] 
Add get_true_type call to RB generator

Summary: Issue with typedefs failing, submitted by kevin clark @ powerset

Reviewed By: mcslee

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665241 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Local Reflection for C++.
David Reiss [Fri, 31 Aug 2007 01:42:55 +0000 (01:42 +0000)] 
Thrift: Local Reflection for C++.

Summary:
The compiler now takes a "-dense" flag that will cause it to
generate some extra metadata for C++.  This metadata will be used by
TDenseProtocol.  This should be the last compiler change necessary
to enable that feature.

Reviewed By: mcslee

Test Plan: test/DenseLinkingTest.thrift

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665240 13f79535-47bb-0310-9956-ffa450edef68

17 years agoAdd -javabean option to Thrift
Mark Slee [Fri, 31 Aug 2007 00:55:28 +0000 (00:55 +0000)] 
Add -javabean option to Thrift

Summary: In case you want getters and setters and iterators and magic. Submitted by Dave Engberg

Reviewed By: dreiss

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665239 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Forgot to commit these fixes.
David Reiss [Thu, 30 Aug 2007 23:18:31 +0000 (23:18 +0000)] 
Thrift: Forgot to commit these fixes.

Summary:
Small git error.  These changes should have gone in my last commit.

Reviewed By: mcslee

Test Plan: Same as the last one.

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665238 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Generate fingerprints for non-structs.
David Reiss [Thu, 30 Aug 2007 23:12:37 +0000 (23:12 +0000)] 
Thrift: Generate fingerprints for non-structs.

Summary:
This is going to be needed to support TDenseProtocol.

Reviewed By: mcslee

Test Plan:
Clean build of Thrift.
Ran if/regen.sh.  No change to generated C++ or Python.
gdb thrift -cpp ThriftTest.thrift.  Made sure they were being generated.

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665237 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Handle absence of fastbinary.so
David Reiss [Thu, 30 Aug 2007 23:07:45 +0000 (23:07 +0000)] 
Thrift: Handle absence of fastbinary.so

Summary:
- Wrap import of fastbinary in a try/catch, setting it to None if it fails.
- Don't try to fastbinary.encode/decode if fastbinary is None.
- Always generate thrift_spec, even if it is None.
- Don't try to fastbinary.encode/decode if thrift_spec is None.

Reviewed By: mcslee

Test Plan:
test/py/Test{Client,Server}.py
Manually delete my fastbinary.so, they worked fine.
Changed them to use Accelerated protocol.  They still worked fine because
the test falls through to the normal generated code.
Installed fastbinary.so, everything worked fine (eventually).

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665236 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Pre-generate reflection_limited for Python.
David Reiss [Thu, 30 Aug 2007 03:30:22 +0000 (03:30 +0000)] 
Thrift: Pre-generate reflection_limited for Python.

Summary:
- Give reflection_limited a nice clean Python module.
- if/regen.sh now generates reflection_limited for Python and copies it to src.
- Added the generated Python for reflection_limited to version control.
- lib/py/setup.py installs reflection_limited.
- lib/py/cleanup.sh now removes build (make sure to run as root).
- The C++ version of reflection_limited was also updated by regen.sh.

Reviewed By: mcslee

Test Plan:
- Clean build and install.
- Look at the installed Python files.
- python -c 'from thrift.reflection.limited.ttypes import *'

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665235 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Support for explicit Python module declaration.
David Reiss [Thu, 30 Aug 2007 00:58:43 +0000 (00:58 +0000)] 
Thrift: Support for explicit Python module declaration.

Summary:
Previously, Thrift used the name of the .thrift file as the python module name.
This wasn't very flexible.  Now the python module can be explicitly declared.
Also, there was no need for t_py_generator to inherit from t_oop_generator.

Reviewed By: mcslee

Test Plan:
cd test/py/explicit_module
./runtest.sh

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665234 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Python libraries install into /usr, not /usr/local
David Reiss [Wed, 29 Aug 2007 23:17:32 +0000 (23:17 +0000)] 
Thrift: Python libraries install into /usr, not /usr/local

Summary:
It seems like the Python convention is that random janky libraries
are installed in /usr/lib/pythonX.Y/site-packages.  This patch follows
that convention, even though it is pretty gross to ignore --prefix.

Reviewed By: mcslee

Test Plan: make install thrift python libs on my box.

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665233 13f79535-47bb-0310-9956-ffa450edef68

17 years agoAutoconf fixes
Mark Slee [Wed, 29 Aug 2007 04:36:53 +0000 (04:36 +0000)] 
Autoconf fixes

Summary: Need these after some recent changes to rebuild with Engeleman's fix

Reviewed By: aditya

Test Plan: Build compiler

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665232 13f79535-47bb-0310-9956-ffa450edef68

17 years agoMerge patch from Dan Engeleman for Java utility constructors
Mark Slee [Wed, 29 Aug 2007 04:36:28 +0000 (04:36 +0000)] 
Merge patch from Dan Engeleman for Java utility constructors

Summary: As well as a packaging fix

Reviewed By: aditya

Test Plan: Generate test files, look at Java obj constructors

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665231 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Install reflection_limited.thrift
David Reiss [Wed, 29 Aug 2007 00:58:14 +0000 (00:58 +0000)] 
Thrift: Install reflection_limited.thrift

Summary:
Building fb303 is hard enough without including limited reflection.
This change will install reflection_limited.thrift into /usr/share/thrift/if
so it will be easier for fb303 to find (we won't have to dig it out of the
thrift source directory).

Reviewed By: mcslee, marc

Test Plan:
./bootstrap.sh && ./configure && make && sudo make install
(on my vmware box).

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665230 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Fix a compile error.
David Reiss [Tue, 28 Aug 2007 22:18:22 +0000 (22:18 +0000)] 
Thrift: Fix a compile error.

Summary:
The fingerprint code was generating invalid C++ code.

Blame Rev: 57192

Reviewed By: mcslee

Test Plan:
Recompiled thrift.
Thrifted DebugProtoTest with new compiler.
Compiled and rand DebugProtoTest.

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665229 13f79535-47bb-0310-9956-ffa450edef68

17 years agoThrift: Fix untriggerable bug.
David Reiss [Tue, 28 Aug 2007 21:09:06 +0000 (21:09 +0000)] 
Thrift: Fix untriggerable bug.

Reviewed By: mcslee

Test Plan: Compiled the Thrift compiler.

Revert Plan: ok

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665228 13f79535-47bb-0310-9956-ffa450edef68