Commit Graph

674 Commits

Author SHA1 Message Date
Marc Slemko
d42a2c2bf9 Rationalized include-directory schema
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664747 13f79535-47bb-0310-9956-ffa450edef68
2006-08-10 03:30:18 +00:00
Marc Slemko
c09a65aa4b fixed test build
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664743 13f79535-47bb-0310-9956-ffa450edef68
2006-08-09 01:20:16 +00:00
Marc Slemko
1669885931 More boosification of thrift driver, server, transport and protocol code
Modified TestServer to use thread-pool manager 


	


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664737 13f79535-47bb-0310-9956-ffa450edef68
2006-08-04 03:16:10 +00:00
Marc Slemko
35452346e6 Converted concurrency classes to use boost::shared_ptr and boost::weak_ptr:
Wrapped all thrift code in facebook::thrift:: namespace


	


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664736 13f79535-47bb-0310-9956-ffa450edef68
2006-08-03 19:01:37 +00:00
Marc Slemko
6f038a7b60 Converted concurrency classes to use boost::shared_ptr and boost::weak_ptr:
Wrapped all thrift code in facebook::thrift:: namespace


	


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664735 13f79535-47bb-0310-9956-ffa450edef68
2006-08-03 18:58:09 +00:00
Marc Slemko
03eafbeac9 Added BNF describing proposed logical wire format for Thrift message streams
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664734 13f79535-47bb-0310-9956-ffa450edef68
2006-08-02 20:01:22 +00:00
Marc Slemko
c778297bd0 autoconf/automake/libtool-ized thrift cpp bits:
Fixed to build on solaris.
    Used clock_gettime() where available
    Fixed rounding of time to ms

			       


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664733 13f79535-47bb-0310-9956-ffa450edef68
2006-07-25 02:26:35 +00:00
Marc Slemko
e03da189af autoconf/automake:
Fixed handling of bits/socket.h MSG_NODELAY
	


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664732 13f79535-47bb-0310-9956-ffa450edef68
2006-07-21 21:32:36 +00:00
Marc Slemko
9d4a3e2a78 autoconf/automake/libtool-ized thrift cpp bits:
Moved the original Makefile => Makefile.slee

			       


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664731 13f79535-47bb-0310-9956-ffa450edef68
2006-07-21 19:53:48 +00:00
Marc Slemko
9f0ba255a9 autoconf/automake line noise for linux/osx builds
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664730 13f79535-47bb-0310-9956-ffa450edef68
2006-07-21 03:53:13 +00:00
Marc Slemko
fe5ba12e4a More test code added...
more bugs found

facebook::thrift::concurrency::ThreadManager::add
	Fixed dispatch error that resulted in only one of N worker threads ever getting notified of work

facebook::thrift::concurrency::ThreadManager
	Cleaned up addWorker/removeWorker and stop logic so that adding/removing workers doesn't wake up 
	all blocked workers.

facebook::thrift::concurrency::Thread
facebook::thrift::concurrency::Runnable
	Fixed initialization logic so that runnable can return the thread that runs it


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664729 13f79535-47bb-0310-9956-ffa450edef68
2006-07-20 21:16:27 +00:00
Marc Slemko
03dedd9bd5 Fixed a few problems found on linux x86_64 version
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664728 13f79535-47bb-0310-9956-ffa450edef68
2006-07-20 00:58:47 +00:00
Marc Slemko
740343dad2 Forgot this one
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664727 13f79535-47bb-0310-9956-ffa450edef68
2006-07-20 00:31:02 +00:00
Marc Slemko
525c202df4 Forgot this one
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664726 13f79535-47bb-0310-9956-ffa450edef68
2006-07-20 00:29:35 +00:00
Marc Slemko
d466b211fd Bring up of thread manager
facebook::thrift::concurrency::test.ThreadManagerTest::test00
	Launch N tasks that block for time T, verify they all complete and that the thread manager cleans up properly
	when it goes out of scope
	


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664725 13f79535-47bb-0310-9956-ffa450edef68
2006-07-20 00:04:18 +00:00
Marc Slemko
9f27a4eb7d More bullet proofing of timer manager
facebook::thrift::concurrency::TimerManager::stop
	Added proper cleanup of unprocessed tasks and shutdown of dispatcher thread to stop

facebook::thrift::concurrency::TimerManager::~TimerManager
	Call stop if manager wasn't explicitly stopped

facebook::thrift::concurrency::test.TimerManagerTest
	Calculate error margin for timeout expiration and verify it's within bounds
	Verify manager stops properly when it goes out of scope
	


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664724 13f79535-47bb-0310-9956-ffa450edef68
2006-07-19 20:02:22 +00:00
Marc Slemko
8a40a76b27 Added thread factory test - problems in thread
Fixed stupid typo in  TimerManager::start


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664723 13f79535-47bb-0310-9956-ffa450edef68
2006-07-19 17:46:50 +00:00
Marc Slemko
0e53ccdb8b Another checkpoint of initial cut at thread pool manager for thrift and related concurrency classes.
Added TimerManager -  I can't live without one after all.

Added Util - handy place for common time operations et al.

Initial test code


git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664722 13f79535-47bb-0310-9956-ffa450edef68
2006-07-17 23:51:05 +00:00
Marc Slemko
66949879ff Checkpoint of initial cut at thread pool manager for thrift and related concurrency classes.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664721 13f79535-47bb-0310-9956-ffa450edef68
2006-07-15 01:52:39 +00:00
Mark Slee
6e53644ce5 Thrift now works in PHP, hot stuff
Summary: End to end communication working in Thrift with PHP

Problem: It's a bit slower than pillar still. Need to find out why.

Reviewed By: aditya

Test Plan: Unit tests are in the test directory. Get lucas on the PHP case...




git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664720 13f79535-47bb-0310-9956-ffa450edef68
2006-06-30 18:28:50 +00:00
Mark Slee
4e0d962693 Thrift: move /lib/cpp code into /lib/cpp/src
Summary: Clean separation of src and buildfiles etc. is key

Reviewed By: aditya





git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664719 13f79535-47bb-0310-9956-ffa450edef68
2006-06-26 23:56:08 +00:00
Mark Slee
f3c322b4a3 Thrift: getting rid of U32s for map/list/set/string lengths and field ids etc.
Summary: U32s are on the out. Make way for the I32.

Reviewed By: aditya





git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664718 13f79535-47bb-0310-9956-ffa450edef68
2006-06-26 23:52:22 +00:00
Mark Slee
8d7e1f62a8 Update Thrift CPP libraries to work with new generated source, change underlying buffers to use uint8_t* instead of std::string
Summary: Major overhaul to the CPP libraries.

Reviewed By: aditya

Test Plan: Again, keep an eye out for the unit tests commit

Notes: Initial perf tests show that Thrift is not only more robust than Pillar, but its implementation is actually around 10-20% faster. We can do about 10 RPC function calls with small data payloads in under 2ms. THAT IS FAST. THAT IS THRIFTY.




git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664714 13f79535-47bb-0310-9956-ffa450edef68
2006-06-07 06:48:56 +00:00
Mark Slee
e8540637aa Rev 2 of Thrift, the Pillar successor
Summary: End-to-end communications and serialization in C++ is working

Reviewed By: aditya

Test Plan: See the new top-level test/ folder. It vaguely resembles a unit test, though it could be more automated.

Revert Plan: Revertible

Notes: Still a LOT of optimization work to be done on the generated C++ code, which should be using dynamic memory in a number of places. Next major task is writing the PHP/Java/Python generators.




git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@664712 13f79535-47bb-0310-9956-ffa450edef68
2006-05-30 09:24:40 +00:00