David Reiss [Tue, 9 Mar 2010 05:19:32 +0000 (05:19 +0000)]
cpp: TNonBlockingServer: Use separate monitor for max queue
We were using the same monitor for max queue size and empty queue, this
meant the notifies might be going to the wrong place.
This change significantly reduces the time spent in futex calls in
loaded servers.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920667
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Tue, 9 Mar 2010 05:19:30 +0000 (05:19 +0000)]
cpp: Let Monitors share Mutex instances
- Let Monitor objects share a Mutex() instance so that more than one
condition can be implemented on top of a single mutex protecting an
important data structure.
- Make Mutex and Monitor noncopyable
- Add an accessor to Mutex() so the underlying pthread_mutex_t* can be
retrieved for passing to pthread_condwait
- Change Monitor to use the actual Mutex class instead of creating a
naked pthread_mutex_t on its own
- Add new constructors to Monitor
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920666
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Tue, 9 Mar 2010 05:19:27 +0000 (05:19 +0000)]
cpp: Exit TNonBlockingServer on memmory allocation failure
setrlimit causes bad_alloc exceptions, but undefined behavior occurs if
we don't exit. It is not typical for libraries to call exit, but it is
not clear what other behavior is possible.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920665
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Tue, 9 Mar 2010 05:19:25 +0000 (05:19 +0000)]
cpp: TNonBlockingServer overload handling and optimizations
- Establish a mechanism for TNonBlockingServer to handle overloads by
limiting the number of connections accepted or in-process.
- Provide a framework for further work in handling server overloads.
- Limit memory consumption of connection object pool.
- Drop connections when overloaded.
- Add overload-handling behavior allowing pending tasks to be dropped
from the front of the task queue (short of the ability to terminate
running tasks, these are the oldest tasks in the system and thus the
most likely to be beyond their freshness date). This reduces the
chance of spending valuable CPU time processing a request that the
client has already timed out.
- Uses a single persistent pipe() to communicate task completion instead
of constructing and monitoring a new socketpair() for every task in
the system.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920664
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Tue, 9 Mar 2010 05:19:22 +0000 (05:19 +0000)]
THRIFT-660. php: Use the accelerator to write return values from servers
Previously, we only used the acclerator module for clients to
write calls and read returns. Now PHP servers will use it for
writing returns. We cannot use it to read calls on the server side
(without modifications), because the module requires that
the structure type be known before reading the message header.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920663
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Tue, 9 Mar 2010 05:19:20 +0000 (05:19 +0000)]
THRIFT-659. php: Make php_thrift_protocol handle std::exception cleanly
Any std::exceptions thrown from within the extension will now be
converted into php exceptions.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920662
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Tue, 9 Mar 2010 05:19:18 +0000 (05:19 +0000)]
THRIFT-475. python: Eliminate DeprecationWarning
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920661
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Tue, 9 Mar 2010 05:19:16 +0000 (05:19 +0000)]
THRIFT-658. python: Add THttpClient.setTimeout()
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920660
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Tue, 9 Mar 2010 05:19:14 +0000 (05:19 +0000)]
THRIFT-661. java: Detect EOF in TIOStreamTransport
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920659
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Tue, 9 Mar 2010 05:19:11 +0000 (05:19 +0000)]
THRIFT-657. java: Detect negative length in TBinaryProtocol
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920658
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Tue, 9 Mar 2010 05:19:08 +0000 (05:19 +0000)]
THRIFT-655. Allow structs to be typedef'ed
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920657
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Tue, 9 Mar 2010 05:14:34 +0000 (05:14 +0000)]
THRIFT-656. java: TDeserializer.toString is misnamed
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920656
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Tue, 9 Mar 2010 00:49:14 +0000 (00:49 +0000)]
THRIFT-706. cpp: Fix memory leak of string_buf_ in TCompactProtocol
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@920597
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Fri, 5 Mar 2010 07:51:51 +0000 (07:51 +0000)]
THRIFT-564. Support arbitrary annotations on struct fields
This is subtly different from a type annotation, since some bits of
metadata only make sense in the context of a single structure field,
like whether the field is required, or whether the C++ code should use
a pointer for it.
This change doesn't define any meaningful annotations. It just sets up
the parsing infrastructure.
I have no idea if $10 will work with older versions of yacc. It seems
to work fine with bison.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@919325
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Tue, 2 Mar 2010 18:49:02 +0000 (18:49 +0000)]
THRIFT-710. java: TBinaryProtocol should access buffers directly when possible
This patch makes TBinaryProtocol use direct buffer access in the relevant methods. Performance testing indicates as much as 2x speed boost, though your mileage may vary.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@918147
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Tue, 2 Mar 2010 18:39:57 +0000 (18:39 +0000)]
THRIFT-711. java: TFramedTransport should support direct buffer access
This patch adds direct buffer read access to TFramedTransport as well as a simple test for reading, direct buffer reading, and writing.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@918142
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Tue, 2 Mar 2010 18:34:00 +0000 (18:34 +0000)]
THRIFT-720. rb: HTTPClientTransport ignores url parameters
This patch causes the url parameters to be sent as expected. Patch by Tony Kamenick.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@918137
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Sun, 28 Feb 2010 05:19:38 +0000 (05:19 +0000)]
THRIFT-716. java: Field names can conflict with local variables in code for unions
This patch resolves the name clash issue by removing the unnecessary parameters from the generated method and using the protected variables directly instead.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@917130
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Sat, 27 Feb 2010 05:47:15 +0000 (05:47 +0000)]
THRIFT-715. rb: Add additional test case for serialization of false boolean fields
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@916911
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Fri, 26 Feb 2010 21:38:42 +0000 (21:38 +0000)]
THRIFT-689. java: Notify client of recoverable protocol errors on java server
When a protocol error occurs, the server will now send back a message containing the exception. Clients should be able to detect and rethrow these exceptions as appropriate.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@916825
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Fri, 26 Feb 2010 00:56:02 +0000 (00:56 +0000)]
THRIFT-695. python: [de]serialize convenience functions
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@916508
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Tue, 23 Feb 2010 19:06:25 +0000 (19:06 +0000)]
THRIFT-713. java: Java compareTo method throws NPE when any field isn't set.
This patch fixes a somewhat egregious bug in the generated compareTo for non-union structs and avoids possible NPEs.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@915499
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Tue, 23 Feb 2010 15:46:46 +0000 (15:46 +0000)]
add newline to the end of struct.c to make some whiney compilers happy
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@915398
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Fri, 19 Feb 2010 20:00:55 +0000 (20:00 +0000)]
remove an erroneously added newline in ruby generated structs
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@911957
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Thu, 18 Feb 2010 23:19:42 +0000 (23:19 +0000)]
THRIFT-553. rb: thrift structs should be comparable (<=>)
This patch adds the spaceship operator to the struct and union base classes, enabling object comparisons between objects without regenerating code.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@911644
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Thu, 18 Feb 2010 22:00:45 +0000 (22:00 +0000)]
THRIFT-712. rb: Inspect should print binary fields as hex instead of escaped string
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@911610
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Thu, 18 Feb 2010 20:28:27 +0000 (20:28 +0000)]
THRIFT-708. rb: Is set checking methods
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@911557
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Thu, 18 Feb 2010 18:27:51 +0000 (18:27 +0000)]
THRIFT-685. java: Direct buffer access to improve deserialization performance
This initial patch adds direct buffer access support to TDeserializer and TCompactProtocol, with the framework in place to be extended to other areas.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@911510
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Thu, 18 Feb 2010 17:42:06 +0000 (17:42 +0000)]
THRIFT-709. Print enum value names in Ruby
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@911500
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Wed, 17 Feb 2010 23:10:48 +0000 (23:10 +0000)]
add some missing files to Manifest
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@911217
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Wed, 17 Feb 2010 22:29:49 +0000 (22:29 +0000)]
bump rev on ruby gem version
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@911200
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Wed, 17 Feb 2010 22:27:27 +0000 (22:27 +0000)]
THRIFT-707. Support old-style constructors for Union structs
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@911199
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Wed, 17 Feb 2010 20:01:29 +0000 (20:01 +0000)]
THRIFT-703. Attempting to hash an unset union struct results in NPE
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@911162
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Tue, 16 Feb 2010 21:19:01 +0000 (21:19 +0000)]
THRIFT-697. Union support in Ruby
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@910700
13f79535-47bb-0310-9956-
ffa450edef68
T Jake Luciani [Mon, 15 Feb 2010 03:24:55 +0000 (03:24 +0000)]
THRIFT-550: Added javascript support
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@910158
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Fri, 12 Feb 2010 22:49:40 +0000 (22:49 +0000)]
THRIFT-702. TUnion's toString method throws NPE if the union is unset
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@909645
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Wed, 10 Feb 2010 23:23:35 +0000 (23:23 +0000)]
don't put all the test cases and generated classes into the jar - reduces size of jar from ~1M to ~200k.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@908746
13f79535-47bb-0310-9956-
ffa450edef68
Andrew McGeachie [Wed, 10 Feb 2010 01:03:01 +0000 (01:03 +0000)]
THRIFT-687. Fix memory leak in TSocketServer.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@908303
13f79535-47bb-0310-9956-
ffa450edef68
Andrew McGeachie [Wed, 10 Feb 2010 00:56:09 +0000 (00:56 +0000)]
THRIFT-686. Adding TMemoryBuffer implementation to Cocoa
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@908301
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Tue, 26 Jan 2010 20:06:36 +0000 (20:06 +0000)]
THRIFT-691. haskell: Don't block required prelude definitions
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@903393
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Mon, 25 Jan 2010 19:31:31 +0000 (19:31 +0000)]
THRIFT-683. Remove profanity
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@902941
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Thu, 21 Jan 2010 03:20:01 +0000 (03:20 +0000)]
THRIFT-684. java: Add constructor to TNonblockingServerSocket to accept InetSocketAddress
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@901513
13f79535-47bb-0310-9956-
ffa450edef68
Todd Lipcon [Tue, 19 Jan 2010 05:18:55 +0000 (05:18 +0000)]
THRIFT-643. smalltalk: Generated code doesnt load on Squeak3.10.2-7179-basic and PharoCore-1.0-10491rc1 images
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@900660
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Sat, 16 Jan 2010 09:13:20 +0000 (09:13 +0000)]
THRIFT-675. java: Generated findByValue() should just switch on value instead of mapping
This patch removes the map-based enum value lookup and replaces it with a static switch statement.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@899911
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Fri, 15 Jan 2010 17:40:31 +0000 (17:40 +0000)]
THRIFT-677. java: IntRangeSet.java ignores first element in the constructor array
This change removes IntRangeSet from the codebase
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@899729
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Fri, 15 Jan 2010 17:30:40 +0000 (17:30 +0000)]
THRIFT-604: rb: nonblocking_server assumes that socket.read returns exactly one message
This patch causes every message currently in the buffer to be processed before going on.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@899725
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Fri, 15 Jan 2010 17:29:26 +0000 (17:29 +0000)]
THRIFT-608. java: Option parameter is ignored for one constructors in THsHaServer
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@899723
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Fri, 15 Jan 2010 17:27:52 +0000 (17:27 +0000)]
THRIFT-678. html: HTML generator should include per-field docstrings
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@899722
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Fri, 15 Jan 2010 17:20:04 +0000 (17:20 +0000)]
THRIFT-674. java: Generated read() should just switch directly on field.id
This patch gets rid of an unnecessary map lookup and null check in generated structs' read method, amounting a noticeable performance improvement.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@899721
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Mon, 11 Jan 2010 19:13:18 +0000 (19:13 +0000)]
THRIFT-560. haskell: Add tutorial
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@898015
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Mon, 11 Jan 2010 19:13:14 +0000 (19:13 +0000)]
THRIFT-560. haskell: Add THttpClient
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@898013
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Mon, 11 Jan 2010 19:12:56 +0000 (19:12 +0000)]
THRIFT-560. haskell: Move to ByteString and compiler fixes
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@898012
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Wed, 6 Jan 2010 23:12:09 +0000 (23:12 +0000)]
THRIFT-671. rb: Ruby compact protocol implementation gets mixed up when there are fields that don't fit in the delta space
This patch adds a test and a fix for the problem.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@896712
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Wed, 6 Jan 2010 23:10:24 +0000 (23:10 +0000)]
Bump rubygem version up to 0.2.0, now that we're released and all.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@896711
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Thu, 31 Dec 2009 18:59:15 +0000 (18:59 +0000)]
THRIFT-670. java: Unions don't skip unrecognizable fields correctly
This patch adds a test and a fix for the bug.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@894924
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Thu, 31 Dec 2009 18:18:00 +0000 (18:18 +0000)]
THRIFT-668. java: Using a map in an exception type will generate a class that does not implement Comperable-> that will generate a stub that does not compile
The compiler was incorrectly assuming that exceptions were comparable. Now, exceptions are treated just like structs.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@894919
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Mon, 28 Dec 2009 18:49:03 +0000 (18:49 +0000)]
(no ticket). java: Make Unions print binary values more tersely
Bytes were getting sign-extended out into giant strings of f's. This change makes sure only the bottom byte is used.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@894222
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Fri, 18 Dec 2009 19:41:11 +0000 (19:41 +0000)]
THRIFT-632. java: Constants of enum types don't behave well
This patch causes constants of all types to be resolved differently by the compiler, and makes it so that constants of enum types contain a reference to the enum type so that code generators can produce the correct names.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@892358
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Fri, 18 Dec 2009 19:34:25 +0000 (19:34 +0000)]
THRIFT-653. java: Fix toString method for enums
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@892357
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Wed, 9 Dec 2009 19:30:01 +0000 (19:30 +0000)]
THRIFT-645. java: Create ant rules for running the test client and server
I didn't make these depend on compile-test since ant doesn't seem to
detect that the class files are up to date, so it takes a really long
time to recompile everything.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@888931
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Wed, 9 Dec 2009 19:29:59 +0000 (19:29 +0000)]
THRIFT-592. php: Make the test client work properly after r815878
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@888930
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Wed, 9 Dec 2009 19:29:48 +0000 (19:29 +0000)]
THRIFT-592. php: Make the tutorial work properly after r815878
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@888929
13f79535-47bb-0310-9956-
ffa450edef68
Todd Lipcon [Mon, 7 Dec 2009 00:42:38 +0000 (00:42 +0000)]
THRIFT-622. Add appropriate licensing information to get Thrift ready for a release.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@887812
13f79535-47bb-0310-9956-
ffa450edef68
Todd Lipcon [Thu, 3 Dec 2009 01:18:44 +0000 (01:18 +0000)]
THRIFT-637. python: Fix mixing of oneway and regular requests in TNonblockingServer
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@886646
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Thu, 19 Nov 2009 17:26:38 +0000 (17:26 +0000)]
THRIFT-551. java: Enumeration doesn't generate real enum in Java
This patch makes the compiler generate actual Enum classes.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@882211
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Tue, 17 Nov 2009 21:56:43 +0000 (21:56 +0000)]
THRIFT-628. java: Hash code method for _Fields objects does not behave as expected
This patch switches to using the hashcode of the actual field id, instead of the field id enumeration.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@881559
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Fri, 13 Nov 2009 04:52:10 +0000 (04:52 +0000)]
THRIFT-621. cpp: Fix generated files using "apache" namespaces
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@835739
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Thu, 12 Nov 2009 20:52:25 +0000 (20:52 +0000)]
THRIFT-623. java: Use a Java enum to represent field ids in generated structs
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@835538
13f79535-47bb-0310-9956-
ffa450edef68
T Jake Luciani [Thu, 12 Nov 2009 03:01:33 +0000 (03:01 +0000)]
THRIFT-619: Perl server and example
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@835206
13f79535-47bb-0310-9956-
ffa450edef68
T Jake Luciani [Thu, 12 Nov 2009 02:44:42 +0000 (02:44 +0000)]
THRIFT-626: Increase timeouts for socket requests
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@835203
13f79535-47bb-0310-9956-
ffa450edef68
T Jake Luciani [Thu, 12 Nov 2009 02:36:30 +0000 (02:36 +0000)]
THRIFT-590: send/recv timeout values interchanged in perl socket lib
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@835200
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Wed, 11 Nov 2009 21:01:35 +0000 (21:01 +0000)]
THRIFT-624. java: compareTo is broken for Unions with binary fields
This patch adds a special case for byte[] values in TUnion. It also fixes a related bug in TBaseHelper for comparing two byte arrays.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@835065
13f79535-47bb-0310-9956-
ffa450edef68
Esteve Fernandez [Wed, 11 Nov 2009 18:32:25 +0000 (18:32 +0000)]
THRIFT-210. c#: Add support for TFramedTransport
author: Michael Greene (euphoria)
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@835006
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Mon, 9 Nov 2009 15:55:22 +0000 (15:55 +0000)]
THRIFT-565. java: Structs containing typedefs for incomparable objects will be considered comparable
This patch causes the compiler to fully unwrap typedefs when determining comparability.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@834119
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Wed, 4 Nov 2009 00:30:10 +0000 (00:30 +0000)]
THRIFT-620. java: Compact Protocol should call readAll, not read
This patch switches to calling readAll instead of read.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@832633
13f79535-47bb-0310-9956-
ffa450edef68
Andrew McGeachie [Tue, 3 Nov 2009 18:52:15 +0000 (18:52 +0000)]
THRIFT-613. Make generated objects implement the NSCoding protocol.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@832507
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Wed, 28 Oct 2009 17:07:14 +0000 (17:07 +0000)]
THRIFT-612. python: Fix exception bug in TFramedTransport.cstringio_refill
readFrame was being called without "self."
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@830673
13f79535-47bb-0310-9956-
ffa450edef68
Andrew McGeachie [Tue, 27 Oct 2009 20:27:49 +0000 (20:27 +0000)]
THRIFT-614. Add some more info to the exception that gets thrown when THTTPClient encounters an unexpected NSURLResponse object.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@830329
13f79535-47bb-0310-9956-
ffa450edef68
Andrew McGeachie [Tue, 27 Oct 2009 20:23:02 +0000 (20:23 +0000)]
THRIFT-521. Change @synthesize property declarations to @dynamic for happy compiling on OS X 10.6 as well as 10.5
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@830326
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Wed, 21 Oct 2009 06:09:16 +0000 (06:09 +0000)]
pynames
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@827893
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Wed, 21 Oct 2009 05:51:28 +0000 (05:51 +0000)]
THRIFT-606. cpp: Fix build on Solaris Nevada
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@827890
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Thu, 15 Oct 2009 01:24:26 +0000 (01:24 +0000)]
THRIFT-589. java: Add Field Name to Field ID Mapping
Java Thrift structs now have a static mapping of field name to field ID.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@825371
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Thu, 15 Oct 2009 01:20:34 +0000 (01:20 +0000)]
THRIFT-603. rb: Struct read method does not call validate
After reading a struct, we will now call the struct's validate method.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@825369
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Fri, 2 Oct 2009 00:56:53 +0000 (00:56 +0000)]
THRIFT-529. java: Change generated constructors so that application code evolves better
Optional fields are now excluded from constructors.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@820857
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Thu, 1 Oct 2009 22:52:25 +0000 (22:52 +0000)]
THRIFT-477. java: remove extra methods generated for collections
I have rolled back the patch originally applied in this issue.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@820831
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Thu, 1 Oct 2009 20:53:45 +0000 (20:53 +0000)]
THRIFT-446. java: PartialDeserialization in Java
This patch adds a partialDeserialize method to TDeserializer that allows you to request a specific subfield of the serialized data.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@820786
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Fri, 25 Sep 2009 20:28:35 +0000 (20:28 +0000)]
THRIFT-588. java: Generated .equals method throws NPE for thrift object
If other is null, then they're not equal.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@818998
13f79535-47bb-0310-9956-
ffa450edef68
Esteve Fernandez [Thu, 24 Sep 2009 10:22:00 +0000 (10:22 +0000)]
THRIFT-586. python: TSocket incorrectly sets the exception type when an end of file error occurs
TTransportException's type was set to "Transport not open" in some cases, which should
be its message.
Use named arguments and set the type for TTransportException to END_OF_FILE in TSocket#read
and TSocket#write.
reviewer: dreiss
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@818429
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Mon, 21 Sep 2009 16:52:48 +0000 (16:52 +0000)]
THRIFT-572. java: Union compareTo is broken
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@817317
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Sat, 19 Sep 2009 01:59:13 +0000 (01:59 +0000)]
THRIFT-587. cpp: Properly set addrLen before accept calls
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@816850
13f79535-47bb-0310-9956-
ffa450edef68
Esteve Fernandez [Thu, 17 Sep 2009 19:19:11 +0000 (19:19 +0000)]
generate Twisted code in a separate directory (gen-py.twisted)
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@816340
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Wed, 16 Sep 2009 16:57:05 +0000 (16:57 +0000)]
THRIFT-584. php: Generate a better directory structure
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@815878
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Wed, 16 Sep 2009 16:50:00 +0000 (16:50 +0000)]
THRIFT-583. python: Allow new-style classes for Interfaces
The original new-style class only affected structs, enums, and
exceptions.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@815874
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Wed, 9 Sep 2009 17:18:57 +0000 (17:18 +0000)]
THRIFT-574. erlang: Support framed transport for servers
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@813054
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Wed, 2 Sep 2009 22:15:55 +0000 (22:15 +0000)]
THRIFT-575. Allow required fields in function parameters
r665255 was a bit too aggressive. "optional" was causing confusion,
but there doesn't seem to be any harm in allowing "required".
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@810713
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Wed, 2 Sep 2009 20:05:07 +0000 (20:05 +0000)]
THRIFT-569. rb: Segmentation Fault when using BinaryProtocolAccelerated in Ruby
This patch checks to make sure that a value is a string before treating it as one.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@810689
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Tue, 1 Sep 2009 23:18:34 +0000 (23:18 +0000)]
THRIFT-572. rb: fix RSTRING for 1.9 compatibility
Use a macro compatible with Ruby 1.9.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@810303
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Tue, 1 Sep 2009 23:03:47 +0000 (23:03 +0000)]
THRIFT-409. java: Add "union" to Thrift
This patch introduces new IDL syntax for creating Unions, explicityly single-valued structs. While the parser changes are portable, this patch only includes the actual generated code changes for the Java library. Other libraries can continue to generate a struct with the same fields and remain compatible until they are able to implement the full shebang.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@810300
13f79535-47bb-0310-9956-
ffa450edef68
Bryan Duxbury [Tue, 1 Sep 2009 22:32:50 +0000 (22:32 +0000)]
THRIFT-571. rb: compact_protocol.c:89: warning: format not a string literal and no format arguments
This patch solves the issue for those of you on Ruby 1.9.1.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@810288
13f79535-47bb-0310-9956-
ffa450edef68
David Reiss [Tue, 1 Sep 2009 21:36:46 +0000 (21:36 +0000)]
Minor whitespace fixes in the Java generator and gen-code
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@810255
13f79535-47bb-0310-9956-
ffa450edef68