summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/sys
Commit message (Collapse)AuthorAgeFilesLines
* Merged r680937. Added error handling for case where socket cannot be ↵Gordon Sim2008-07-301-5/+10
| | | | | | accepted e.g. due to constraints on file handles. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@680939 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1198: Solaris ECF (port) based PollerAndrew Stitcher2008-07-301-0/+301
| | | | | | | Patch from Manuel Teira git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@680921 13f79535-47bb-0310-9956-ffa450edef68
* Related to QPID-1198: Moved posix platform specific "strerror" code toAndrew Stitcher2008-07-303-1/+81
| | | | | | | platform specific directory git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@680920 13f79535-47bb-0310-9956-ffa450edef68
* Removed unused functionsAndrew Stitcher2008-07-293-44/+5
| | | | | | | | | Removed unused Thread and Socket functions - These functions also cause problems with Solaris compilations Remove unused client connector functionality git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@680833 13f79535-47bb-0310-9956-ffa450edef68
* Small comment tidyAndrew Stitcher2008-07-291-1/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@680831 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1198 (Partial): Missing header files that are really neededAndrew Stitcher2008-07-295-3/+8
| | | | | | | | | | Patches from Manuel Teira. Compilation works on Linux due to implicit header inclusions but fails on Solaris Some tightening up of std and global namespace use. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@680830 13f79535-47bb-0310-9956-ffa450edef68
* Fix for client busy looping whilst waiting for a messageAndrew Stitcher2008-07-291-2/+6
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@680691 13f79535-47bb-0310-9956-ffa450edef68
* Refactor of EpollPoller to make PollerHandler lifecycle easierAndrew Stitcher2008-07-283-25/+41
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@680395 13f79535-47bb-0310-9956-ffa450edef68
* Remove unused Module.h header file.Gordon Sim2008-07-281-50/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@680318 13f79535-47bb-0310-9956-ffa450edef68
* Refactored so that Dispatcher is now independent from DispatchHandleAndrew Stitcher2008-07-243-28/+34
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@679276 13f79535-47bb-0310-9956-ffa450edef68
* Fix "ignoring return value" warning from LockFile.h.Alan Conway2008-07-151-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@676963 13f79535-47bb-0310-9956-ffa450edef68
* Honour timeout in BlockingQueue::pop(); added test for ↵Gordon Sim2008-07-101-1/+1
| | | | | | | | | SubscriptionManager::get() where no message exists. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@675477 13f79535-47bb-0310-9956-ffa450edef68
* Some small changes which clean up header file inclusionsAndrew Stitcher2008-07-096-21/+34
| | | | | | | | and generally start to tidy up the network layer so that it's a bit easier to implement new network transports git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@675338 13f79535-47bb-0310-9956-ffa450edef68
* Remove unused Serializer code.Alan Conway2008-07-082-252/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@674955 13f79535-47bb-0310-9956-ffa450edef68
* Revert un-necessary Plugin complications. Better solution for plugin ↵Alan Conway2008-07-081-12/+14
| | | | | | extension points coming up... git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@674915 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1148 - from Manuel TieraAlan Conway2008-07-083-14/+94
| | | | | | | | | | | | | | | | Lock file abstraction in sys/ with implementation portable to Linux and Solaris. Changes by myself: - Makefile.am - must be updated for any new/renamed/removed source files. - Exception.h, Daemon.h, LockFile.h: Replaced throwIf() with if (...) throw ErrnoException(...) The idiom throwIf(call-system-function(), "msg", errno) is incorret (my fault, not Manuels). It assumes the first argument that makes a system call call will be evaluated before the last one which fetches errno. This may not be true on some compilers/platforms. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@674865 13f79535-47bb-0310-9956-ffa450edef68
* Cluster prototype: handles client-initiated commands (not dequeues)Alan Conway2008-07-045-6/+243
| | | | | | | | | | | | | | | | Details - Cluster.cpp: serializes all frames thru cluster (see below) - broker/ConnectionManager: Added handler chain in front of Connection::received. - sys::Fork and ForkWithMessage - abstractions for forking with posix impl. - tests/ForkedBroker.h: test utility to fork a broker process. - broker/SignalHandler: Encapsulated signal handling from qpidd.cpp - Various minor logging & error message improvements to aid debugging. NB: current impl will not scale. It is functional working starting point so we can start testing & profiling to find the right optimizations. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@674107 13f79535-47bb-0310-9956-ffa450edef68
* Added timeout to SubscriptionManager::get(), LocalQueue::get() and ↵Alan Conway2008-07-012-63/+44
| | | | | | BlockingQueue::get() git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@673158 13f79535-47bb-0310-9956-ffa450edef68
* Plugin framework change: single PluginFactory creates per-target Plugin ↵Alan Conway2008-06-261-14/+12
| | | | | | instances. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@672032 13f79535-47bb-0310-9956-ffa450edef68
* - use flock to lock data dir rather than a lock file.Alan Conway2008-06-252-27/+48
| | | | | | | - removed troublesome global constructor in Mutex initialization. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@671604 13f79535-47bb-0310-9956-ffa450edef68
* Propagate error messages across the Demux between network & user threads.Alan Conway2008-06-121-3/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@667205 13f79535-47bb-0310-9956-ffa450edef68
* Added exceptions to sys::Waitable.Alan Conway2008-06-062-9/+121
| | | | | | | | Fixed client side deadlock involving client::Bounds. Fixed incorrect exception messages during connection shutdown. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@664114 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1108 patch from Manuel TeiraCarl C. Trieloff2008-06-031-20/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@662613 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1113 Management cleanup and performance enhancementsTed Ross2008-06-021-0/+52
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@662470 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1087Ted Ross2008-05-218-105/+31
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@658886 13f79535-47bb-0310-9956-ffa450edef68
* Added check to exclude old gcc compilers for atomic ops.Alan Conway2008-05-212-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@658849 13f79535-47bb-0310-9956-ffa450edef68
* Replaced AtomicCount with AtomicValue template. Alan Conway2008-05-214-53/+183
| | | | | | | Uses gcc atomics for gcc on i686/x86_64, falls back to mutex otherwise. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@658816 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1050: Patch from Ted Ross:Gordon Sim2008-05-127-27/+117
| | | | | | | | | | | | | | | | | 1) Durability for federation links (broker-to-broker connections) 2) Improved handling of federation links: a) Links can be created even if the remote broker is not reachable b) If links are lost, re-establishment will occur using an exponential back-off algorithm 3) Durability of exchanges is now viewable through management 4) ManagementAgent API has been moved to an interface class to reduce coupling between the broker and manageable plug-ins. 5) General configuration storage capability has been added to the store/recover interface. This is used for federation links. 6) Management object-ids for durable objects are now themselves durable. (Note: some refactoring needed around ProtocolAccess needed to try and reduce dependencies) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@655563 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1040: Patch from Ted Ross: Asynchronous ConnectorAndrew Stitcher2008-05-096-10/+109
| | | | | | | Code to allow non-blocking connection of new sockets git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@654666 13f79535-47bb-0310-9956-ffa450edef68
* More RDMA Work in ProgressAndrew Stitcher2008-04-294-147/+66
| | | | | | | | | | Changes to client buffering Buffering improvement to server Removed unused state machine from RdmaIO code Move the write throttling due to limited write buffers into the RdmaIO code git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@652180 13f79535-47bb-0310-9956-ffa450edef68
* Removed some unnecessary #includesAndrew Stitcher2008-04-292-3/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@652120 13f79535-47bb-0310-9956-ffa450edef68
* QPID-974: allow the size of the queue of outgoing frames to be restrictedGordon Sim2008-04-292-15/+28
| | | | | | | | QPID-544: tidy up configuration (ensuring desired settings are used correctly, allowing tcp socket options to be set etc) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@652083 13f79535-47bb-0310-9956-ffa450edef68
* Work In Progress:Andrew Stitcher2008-04-288-0/+1481
| | | | | | | | | Added initial rdma code including test server and client Turn off rdma support by default but autoconf should now detect whether necessary rdma/ibverbs libs and headers are present git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@652053 13f79535-47bb-0310-9956-ffa450edef68
* * Renamed the Acceptor class to be the ProtocolFactory classAndrew Stitcher2008-04-222-36/+28
| | | | | | | | | which better approximates its current behaviour * Slightly refactored TCPIOPlugin to better approximate how it would look when we implement a proper AsynchConnector git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@650657 13f79535-47bb-0310-9956-ffa450edef68
* Refactored Acceptor code to allow multiple acceptors to be present in the brokerAndrew Stitcher2008-04-182-8/+22
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@649689 13f79535-47bb-0310-9956-ffa450edef68
* Split AsynchIOAcceptor into IOHandler and connection control codeAndrew Stitcher2008-04-183-140/+195
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@649666 13f79535-47bb-0310-9956-ffa450edef68
* Refactored IO Thread creation so that it happens in the Broker classAndrew Stitcher2008-04-172-49/+25
| | | | | | | | | | | - There is now a single Poller created by the Broker class that is passed to the Acceptor for use in network IO. It can also now be passed to anything else that wants to put work in the IO threads - The Broker class itself is now responsible for actually creating the threads git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@648904 13f79535-47bb-0310-9956-ffa450edef68
* Refactored the IO framework that sits on top of Poller so that it uses a ↵Andrew Stitcher2008-04-1511-83/+153
| | | | | | | | | | generalised IOHandle. This means that you can define new classes derived from IOHandle (other than Socket) that can also be added to a Poller and waited for. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@648288 13f79535-47bb-0310-9956-ffa450edef68
* QPID-648: more flexible sasl implementation (patch provided by ↵Gordon Sim2008-04-141-6/+12
| | | | | | mfarrellee@redhat.com) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@647940 13f79535-47bb-0310-9956-ffa450edef68
* Fixed time classes for some changes that misunderstood how they are supposedAndrew Stitcher2008-04-072-16/+47
| | | | | | | to be used (and documented them better to hopefully avoid this in the future) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@645685 13f79535-47bb-0310-9956-ffa450edef68
* AsynchIoAcceptor.cpp: Limit output from codec to one buffer per 'idle' call.Gordon Sim2008-04-071-1/+1
| | | | | | | | PreviewConnectionCodec: Generate output frames for encoding while available and while they can fit in the buffer given git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@645470 13f79535-47bb-0310-9956-ffa450edef68
* Fixed logger warning on F9.Alan Conway2008-04-021-4/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@643957 13f79535-47bb-0310-9956-ffa450edef68
* Prevent broker exit on receiving connection with invalid protocol version.Gordon Sim2008-03-311-4/+6
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@642959 13f79535-47bb-0310-9956-ffa450edef68
* Removed unused files.Alan Conway2008-03-271-164/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@641969 13f79535-47bb-0310-9956-ffa450edef68
* Re-enable the establishment of inter-broker links.Gordon Sim2008-03-261-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@641281 13f79535-47bb-0310-9956-ffa450edef68
* Fix compile errors/warnings with gcc 4.3Alan Conway2008-03-254-7/+9
| | | | | | | | | | | | | - added missing #includes that were implicitly included via old headers. - add namespace-qualifiers to fix "changes meaning of name" warnings. - ./qpid/ptr_map.h:51: fixed "qualified return value" warning. - use const char* for "conversion from string constant to ‘char*’" warnings Applied patch from https://issues.apache.org/jira/browse/QPID-869 remove depenency on boost/date_time, causes warnings with gcc 4.3. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@640806 13f79535-47bb-0310-9956-ffa450edef68
* Fixed use of intrusive_ptr in code that was missedAndrew Stitcher2008-03-251-6/+7
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@640702 13f79535-47bb-0310-9956-ffa450edef68
* Qualify names to fix gcc 4.3 compile errors.Alan Conway2008-03-182-7/+7
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@638604 13f79535-47bb-0310-9956-ffa450edef68
* Make AsyncIOAcceptor multi-protocol:Alan Conway2008-03-185-156/+142
| | | | | | | | | - ConnectionCodec interface replaces ConnectionInputHandle, moves encoding/decoding out of AsyncIOAcceptor. - ConnectionCodec::Factory replaces ConnectionInputHandlerFactory - Acceptor creates version-specific ConnectionCodec based on protocol header. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@638590 13f79535-47bb-0310-9956-ffa450edef68
* rubygen/0-10/specification.rb:Alan Conway2008-03-113-8/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Simplified enum mapping/encoding. - struct encoding - ostream << operators src/qpid/Serializer.h - free funciton serialization - separate Encoder/Decoder for const correctness - split() to allow separate encode/decode for complex cases. src/qpid/amqp_0_10/Assembly.cpp, Assembly.h: AMQP 0-10 final Assembly src/qpid/amqp_0_10/Codec.h - Replaced enable_if with overloads, simpler & more flexible. src/qpid/amqp_0_10/Frame.cpp, .h: AMQP 0-10 final frame. src/qpid/amqp_0_10/Holder.h: - provide const and non-const apply src/qpid/amqp_0_10/Segment.cpp, .h: AMQP 0-10 final Segment. src/qpid/amqp_0_10/apply.h - ConstApplyFunctor for const apply. src/qpid/amqp_0_10/built_in_types.h - SerializableString encoding src/qpid/amqp_0_10/complex_types.cpp, .h - const application - Action base class for command/control. src/qpid/framing/AMQBody.h - removed 0-10 final changes, moving integration point down the stack. src/qpid/sys/Shlib.h - removed unused and uncompilable (on some compilers) function. src/qpid/sys/Time.h, .cpp - ostream << for AbsTime and Duration. src/tests/Assembly.cpp, Segment.cpp, apply.cpp, serialize.cpp: testing new code. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@636126 13f79535-47bb-0310-9956-ffa450edef68