Commit Graph

526 Commits

Author SHA1 Message Date
Mark Slee
748d83f65f xsd_attrs are a FieldList now, so you can have multiple of them and they are typed
Reviewed By: xsd


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664984 13f79535-47bb-0310-9956-ffa450edef68
2007-02-07 01:20:08 +00:00
Mark Slee
81cf1e550d Thrift code-gen optimizations to use raw pointers where possible
Reviewed By: aditya


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664983 13f79535-47bb-0310-9956-ffa450edef68
2007-02-07 00:54:49 +00:00
Mark Slee
43b6c6378e Protocol should hang onto shared pointer for protection but always use underlying raw pointer
Reviewed By: aditya


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664982 13f79535-47bb-0310-9956-ffa450edef68
2007-02-07 00:54:17 +00:00
Mark Slee
7df0e2a9aa Thrift support for the xsd_nillable attribute
Reviewed By: dave


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664981 13f79535-47bb-0310-9956-ffa450edef68
2007-02-06 21:03:18 +00:00
Mark Slee
86c87b0fe1 NAmespace PHP exceptions in catch block properly and add getName() method to generated structs
Reviewed By: ari


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664980 13f79535-47bb-0310-9956-ffa450edef68
2007-02-06 07:11:23 +00:00
Aditya Agarwal
e12d48596d -- TBufferedRouterTransport being renamed to TPipedTransport
Summary:
- TBufferedRouterTransport is the most nonsensical name I have ever
  heard of

Reviewed By: slee

Test Plan: it compiles


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664979 13f79535-47bb-0310-9956-ffa450edef68
2007-02-06 03:25:13 +00:00
Aditya Agarwal
5a429586f8 -- Protocol and transport factories now wrap around a single protocol/transport
Summary:
- This is an analagous to the C++ change made in r31441

Reviewed By: slee


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664978 13f79535-47bb-0310-9956-ffa450edef68
2007-02-06 02:51:15 +00:00
Aditya Agarwal
6a5bcaa754 -- Protocol and transport factories now wrap around a single protocol/transport
Summary:
- This is an analagous to the C++ change made in r31441

Reviewed By: slee


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664977 13f79535-47bb-0310-9956-ffa450edef68
2007-02-06 02:50:56 +00:00
Aditya Agarwal
f954f97b96 -- Allow specification of socket timeouts in thrift python socket code
Reviewed By: slee


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664976 13f79535-47bb-0310-9956-ffa450edef68
2007-02-06 01:26:12 +00:00
Aditya Agarwal
5c468196dc -- Protocol and transport factories now wrap around a single protocol/transport
Summary:
- This is an analagous to the C++ change made in r31441

Reviewed By: cheever, mcslee


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664975 13f79535-47bb-0310-9956-ffa450edef68
2007-02-06 01:14:33 +00:00
Mark Slee
21135c300b Adding XSD attribute support
Reviewed By: dave


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664974 13f79535-47bb-0310-9956-ffa450edef68
2007-02-05 21:52:08 +00:00
Mark Slee
74eea207a0 svn adding t_doc.h
Summary: charlie you missed this one!

Reviewed By: cheever


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664973 13f79535-47bb-0310-9956-ffa450edef68
2007-02-05 21:47:03 +00:00
Martin Kraemer
ee341cb57b Thrift: Supported for file descriptor == 0 and cleanup error output
Summary:
Thrift improperly initialized file descriptors to zero and treated 0 and an invalid value.  0 is a valid file descriptor.  Also, commented out error message on client disconnect for TThreadPoolServer

Reviewed By: Marc & Karl

Revert Plan: revertible

Notes:


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664972 13f79535-47bb-0310-9956-ffa450edef68
2007-02-05 21:40:38 +00:00
Martin Kraemer
92a2eac8cb Thrift: Exception message is protected and accessible to derived classes.
Summary:
Exception message is protected and accessible to derived classes.

Reviewed By: Karl

Revert Plan: revertible

Notes:


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664971 13f79535-47bb-0310-9956-ffa450edef68
2007-02-05 20:58:41 +00:00
ccheever
f53b5cfed2 adding documentation syntax to thrift
see DocTest.thrift for examples.

todo: integrate parsed documentation into code generation

review: marc k, mcslee
test plan: DocTest.thrift


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664970 13f79535-47bb-0310-9956-ffa450edef68
2007-02-05 20:33:11 +00:00
Martin Kraemer
10640d8935 Thrift fixes for Exceptions and TServerSocket
Summary:
TServerSocket detected file des. 0 as an invalid file des.  This has been fixed.

Reviewed By: Steve

Revert Plan: Revertible

Notes:


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664969 13f79535-47bb-0310-9956-ffa450edef68
2007-02-03 01:59:12 +00:00
Mark Slee
f23cfd810c TFileTransport %lu => %u
Summary: compiler warnings are lame

Reviewed By: aditya


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664968 13f79535-47bb-0310-9956-ffa450edef68
2007-02-02 00:09:51 +00:00
Mark Slee
8cbda85be5 Prevent direct instantation of ThreadManager
Reviewed By: marc


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664967 13f79535-47bb-0310-9956-ffa450edef68
2007-02-01 23:05:38 +00:00
Mark Slee
739dbe55ae Bring C++ thrift stress test up to date with new constructs
Reviewed By: marc


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664966 13f79535-47bb-0310-9956-ffa450edef68
2007-02-01 22:55:30 +00:00
Mark Slee
b3cb62959e Adding threaded server to Thrift
Summary: Spawns a new thread for each client connection

Reviewed By: marc


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664965 13f79535-47bb-0310-9956-ffa450edef68
2007-02-01 22:55:00 +00:00
Mark Slee
7a20a14a06 Fix bufferedroutertransport overflow bugs
Reviewed By: aditya


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664964 13f79535-47bb-0310-9956-ffa450edef68
2007-02-01 21:39:50 +00:00
Mark Slee
7ff3245bfa Default values and nullification for thrift code
Summary: All things are null now, unless you specify a default value!

Reviewed By: marc


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664963 13f79535-47bb-0310-9956-ffa450edef68
2007-02-01 05:26:18 +00:00
dave
29cbeb6235 Thrift: Fix xsd:sequence and xsd:all minOccurs/maxOccurs generation
The minOccurs and maxOccurs attributes should appear on the elements, rather than the containers.

for a thrift struct, we produce:
<sequence>
<element name="some_element"> <!-- max is implicitly 1 -->
<element name="some_optional_element" minOccurs="0"> <!-- max is
implicitly 1 -->
...

for a thrift list, we produce
<sequence>
<element name="the_list_element" minOccurs="0" maxOccurs="unbounded">
</sequence>

for a thrift struct tagged with xsd_all, we produce

<all>
<element name="some_element" minOccurs="0"/>  <!-- max is implicitly 1
-->
</all>

Reviewed By: mcslee

Test Plan: sandbox

Revert Plan: revertible

Notes:


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664962 13f79535-47bb-0310-9956-ffa450edef68
2007-02-01 00:17:28 +00:00
Mark Slee
cb126a0c19 Fix for TBufferedTransport double-buffer-size strings
Reviewed By: aditya


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664961 13f79535-47bb-0310-9956-ffa450edef68
2007-01-31 08:31:29 +00:00
dave
492d223118 Thrift: Finish namespace generation from xsd_namespace command
In .thrift file:

xsd_namespace "http://api.facebook.com/v1"

Turns up in the xsd output as:

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 targetNamespace="http://api.facebook.com/v1"
 xmlns="http://api.facebook.com/v1"
 elementFormDefault="qualified">

to properly accommodate our generated xml

Thank you, Slee.

Reviewed By: mcslee

Test Plan: sandbox

Revert Plan: revertible

Notes:


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664960 13f79535-47bb-0310-9956-ffa450edef68
2007-01-31 02:49:01 +00:00
Mark Slee
0d9199e709 xsd_namespace keyword for thrift
Summary: So you can Spaceify the Shiznits

Reviewed By: fett


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664959 13f79535-47bb-0310-9956-ffa450edef68
2007-01-31 02:08:30 +00:00
Mark Slee
aaa23ed4ea Move var declarations out of switch blocks in Thrift
Summary: Strict G++ compliance

Reviewed By: fett


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664958 13f79535-47bb-0310-9956-ffa450edef68
2007-01-30 19:52:05 +00:00
dave
4637bfbff8 Thrift: Small changes to support XSD generation
xs:restriction -> xsd:restriction
minoccurs -> minOccurs

Reviewed By: marc

Test Plan: sandbox

Revert Plan: revertible

Notes:


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664957 13f79535-47bb-0310-9956-ffa450edef68
2007-01-30 19:50:30 +00:00
Mark Slee
2006d99d25 Thrift gen'd code now checks for field ID AND type matches
Summary: Will call skip() even if FID matches when there is an invalid field type identifier

Reviewed By: corson


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664956 13f79535-47bb-0310-9956-ffa450edef68
2007-01-29 17:58:54 +00:00
Mark Slee
a7747c2525 Fix HashMap => AbstractMap conversions in Java test thrift code
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664955 13f79535-47bb-0310-9956-ffa450edef68
2007-01-29 17:35:54 +00:00
Mark Slee
cb09cfa322 Update configure.ac to include compiler/cpp directory
Reviewed By: aditya


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664954 13f79535-47bb-0310-9956-ffa450edef68
2007-01-27 01:58:17 +00:00
Mark Slee
6d7d595858 Ruby support for Thrift
Summary: Just client support so far.

Reviewed By: tbr-doug


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664953 13f79535-47bb-0310-9956-ffa450edef68
2007-01-27 01:44:22 +00:00
Martin Kraemer
50919171b7 Thrift: indentation
Summary:
sigh mixed indentation sytyles.

Reviewed By: Slee

Test Plan: Test by building..

Revert Plan: revertible

Notes:


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664952 13f79535-47bb-0310-9956-ffa450edef68
2007-01-26 01:41:03 +00:00
Mark Slee
0788a70568 Separate thrift into libthrift and libthriftnb
Summary: libthriftnb is the one that requires libevent. It was really annoying that you always had to put -levent in your link step to build thrift programs when youa re not using any of the c++ nonblocking stuff. This way, if you're using nonblocking you can do that, but the normal case is easier to link.

Reviewed By: makefile


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664951 13f79535-47bb-0310-9956-ffa450edef68
2007-01-25 08:14:50 +00:00
Mark Slee
6f5e2cb3ea Fix relative paths in test dirs
Reviewed By: makefile


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664950 13f79535-47bb-0310-9956-ffa450edef68
2007-01-25 08:01:28 +00:00
Mark Slee
eb0d024ee1 Full automake/autoconf compliance for thrift
Summary: Including the compiler!!!

Reviewed By: automake


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664949 13f79535-47bb-0310-9956-ffa450edef68
2007-01-25 07:58:55 +00:00
Mark Slee
79e025b3e8 Fix bootstrap for the jwang
Summary: SORRY MY HAX)RDS WAS BROKED

Reviewed By: jwang


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664948 13f79535-47bb-0310-9956-ffa450edef68
2007-01-25 06:28:24 +00:00
Aditya Agarwal
2c9f2fb0bd -- ThriftLogfile is finally done.
Summary:
- Everything seems to be working well..

Reviewed By: tbr - slee

Test Plan: Tested using search


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664947 13f79535-47bb-0310-9956-ffa450edef68
2007-01-25 03:27:43 +00:00
Mark Slee
938bc38e7d Fix Makefile to use thrifty.yy and thriftl.ll
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664946 13f79535-47bb-0310-9956-ffa450edef68
2007-01-25 02:10:07 +00:00
Mark Slee
cc11b06c01 Rename some thrif tcompiler files
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664945 13f79535-47bb-0310-9956-ffa450edef68
2007-01-25 02:07:22 +00:00
Mark Slee
9e288d4f7a Add some smaller test cases and fix new single protocol/transport C++ test
Reviewed By: aditya


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664944 13f79535-47bb-0310-9956-ffa450edef68
2007-01-24 23:42:12 +00:00
Aditya Agarwal
68f08ee5f5 -- Error recovery code for thrift logfile
Summary:
- perform some basic corruption checks:
   1) Event larger than chunk
   2) Event larger than specified max
   3) Event crossing chunk boundary etc.
- If error encountered, then try to perform some recovery

Reviewed By: Slee

Test Plan: Going to test now...need to check in because of compile issues

Notes:
- These checks take care of the case when there is a dirty read from the filesystem (which
  we have encountered with the netapps). The recovery involves trying to perform the read
  again from ths FS and if that fails skipping the chunk altogether.
  Keep in mind that this might only be useful for idempotent systems (e.g. search redolog).


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664943 13f79535-47bb-0310-9956-ffa450edef68
2007-01-24 23:39:10 +00:00
Mark Slee
c425780847 Thrift socket should not perror in the TRYAGAIN state
Reviewed By: wayne


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664942 13f79535-47bb-0310-9956-ffa450edef68
2007-01-24 23:14:30 +00:00
Mark Slee
c42ecd5cfe No more getInputTransport vs getOutputTransport in protocols
Summary: It is just getTransport ow

Reviewed By: aditya


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664941 13f79535-47bb-0310-9956-ffa450edef68
2007-01-24 22:57:20 +00:00
Aditya Agarwal
9abb0d69b7 -- Change concept of protocol and transport factory
Summary:
- Transport factories now wrap around one transport
- Protocol factories now wrap around one transport (as opposed to a pair of input/output
   transports)
- TServer now takes input/output transport and protocol factories

The motivation for this change is that you could concievably want to use a different protocol or
transport for input and output. An example is that incoming data is encoded using binary protocol
but outgoing data is encrypted XML (with encryption being done on the transport level).

This change should be mostly backwards compatible because the TServer classes have constructors
that take a transport factory and use that for both the input and transport factories. The only
change might be for anyone who is using the C++ client code directly i.e. instantiating
TBinaryProtocol() directly because the constructor now only accepts one transport.

Reviewed By: Slee

Test Plan: Everything compiles (for both thrift and search).

Notes:
I am going to make the same changes in all the supported languages after this...


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664940 13f79535-47bb-0310-9956-ffa450edef68
2007-01-24 22:53:54 +00:00
Mark Slee
bf05a6069e Generate pargs an presult helpers in C++ to be more efficient in thrift
Summary: Copy construction is the pits. Avoid it at all costs.

Reviewed By: aditya


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664939 13f79535-47bb-0310-9956-ffa450edef68
2007-01-24 22:53:07 +00:00
Mark Slee
1921d2046b Fix C++ Thrift test code to work with new gen'd code interface
Reviewed By: tbr-aditya


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664938 13f79535-47bb-0310-9956-ffa450edef68
2007-01-24 19:43:06 +00:00
Mark Slee
f9373397c3 Nonblockingserver constructor that uses binary protocol factory by default
Reviewed By: tbr-aditya


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664937 13f79535-47bb-0310-9956-ffa450edef68
2007-01-24 19:41:57 +00:00
Aditya Agarwal
502ea8a3c8 -- thrift logfile fixes
Summary:
-- numChunks was broken and that was causing a lot of strange downstream behaviour

Reviewed By: tbr slee


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664936 13f79535-47bb-0310-9956-ffa450edef68
2007-01-24 02:24:35 +00:00
Mark Slee
8896a54720 No need to generate private __construct() function if the class is already final
Reviewed By: lucas


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664935 13f79535-47bb-0310-9956-ffa450edef68
2007-01-23 23:22:35 +00:00