JoelKatz
f2beb82b97
Pathfinding dispatch improvements
...
* Keep requests forwards, flip only on insert
* Insert requests in more sensible order (after new, before old)
* Remove a redundant cache/request check
2014-02-17 17:26:50 -08:00
JoelKatz
505f029edb
Clean up 'destination_currencies' in new pathfinding reply
2014-01-23 13:24:43 -08:00
JoelKatz
815659b898
Replace a lock with an atomic in new pathfinding
2014-01-23 13:24:33 -08:00
Vinnie Falco
c95dccfec6
Move PathRequests to separate files
2014-01-21 10:28:36 -05:00
JoelKatz
4591658160
PathRequests object to own all path requests.
2014-01-10 22:53:57 -08:00
JoelKatz
cd8234acba
Pathfinding bugfix. Missing lock.
2014-01-07 15:57:46 -08:00
JoelKatz
de85a7c2bd
Pathfinding improvements:
...
* Make each path request track whether it needs updating.
* Improve new request handling, reverse order for processing requests.
* Break to handle new requests immediately.
* Make mPathFindThread an integer rather than a bool. Allow two threads.
* For old pathfinding, if the ledger is unspecified, use the PathRequest's RippleLineCache.
* Log new pathfinding request latencies.
* Suspend processing requests if server is backed up.
2014-01-07 15:57:46 -08:00
Vinnie Falco
087301933a
General refactoring, using C++11
...
* Remove broken RecycledObjectPool
* Fix beast::ServiceQueue using List instead of LockFreeStack
* Add class semaphore, fixes broken Semaphore
* Move crytpo module files to new beast directory
* Use c++11 replacements for boost and beast types:
- std::atomic instead of beast::Atomic
- std::function instead of boost::function, beast::function
- std::unique_ptr instead of beast::ScopedPointer
- std::shared_ptr instead of boost::shared_ptr
* Remove modules:
- beast_db
- beast_crypto
- beast_extras
* Remove unnecessary classes:
- AbstractFifo
- AddConst
- AtomicCounter
- AtomicFlag
- AtomicPointer
- AtomicState
- CopyConst
- Expression
- ForwardList
- IfCond
- Interval
- IntrusiveArray
- KeyvaDB
- PointerToOther
- PointerTraits
- RemoveConst
- RemoveConstVolatile
- RemoveReference
- RemoveVolatile
- SharedObjectArray
- SingleThreadedSharedObject
- SophiaDB factory
- SortedSet
- WeakReference
- beast::unique_ptr
2014-01-07 15:57:45 -08:00
JoelKatz
51aef120a1
Pathfinding performance improvements:
...
* Use a single RippleLineCache, even for 'fast' requests
* Use a ledger copy to avoid stalling other code
2013-12-08 23:52:54 -08:00
Vinnie Falco
b660d82516
Make TxFormats a Meyers singleton
2013-11-20 10:16:46 -08:00
JoelKatz
a3024352ba
Pathfinding improvements.
2013-11-12 21:08:52 -08:00
JoelKatz
74c65cfdc5
Cleanup path request logging.
2013-11-11 19:29:56 -08:00
JoelKatz
399760fda9
Assign each path finding request an ID and track its lifecycle.
2013-11-11 18:32:45 -08:00
JoelKatz
4620b667e7
Fix a race condition if PathRequest::doCreate races with the path being processed.
2013-11-07 22:30:11 -08:00
JoelKatz
6b2f654a30
Improve path filtering:
...
1) Ignore paths with very low liquidity
2) Allow an extra filling path to be added if needed
2013-11-03 02:20:18 -08:00
JoelKatz
18fc854bf3
Better tracking of resources associated with pathfinding.
2013-09-26 10:26:15 -07:00
Vinnie Falco
fcd689afbf
Update copyright notice and licenses
2013-09-25 17:27:06 -07:00
Vinnie Falco
89b1859929
Refactor Application shutdown using new Service, AsyncService interfaces
2013-09-19 17:18:43 -07:00
Vinnie Falco
846b8e339c
Tidy and rename all Ripple source files
2013-09-13 16:58:24 -07:00