Nik Bougalis
28c7827f14
Calculate program file directories:
...
* Determine location of database files in Config
* Inject database directory or file path in PeerFinder and Validators
* PeerFinder and Validators will share the same sqlite file
2014-03-01 11:53:57 -08:00
JoelKatz
e055dc1513
WebSocket dispatch changes.
...
Don't let one connection hold a thread for too long without
having to wait for another turn
2014-02-28 12:18:15 -08:00
JoelKatz
c173f14fc0
Give pathfinding updates priority over client and RPC requests
2014-02-28 12:15:41 -08:00
Howard Hinnant
cd30e552a7
Fix clang warnings
2014-02-28 12:15:12 -08:00
Vinnie Falco
9bf1a76e91
Remove unused classes
2014-02-28 12:03:33 -08:00
Vinnie Falco
2957b688fd
PeerFinder and Peers fixes:
...
- Fix bootcache incorrect failure on socket cancel
- Fix peer connect race on stop
- Simplify some loops
- Require boost 1.55 via static_assert
2014-02-28 12:03:33 -08:00
Nik Bougalis
04a55e35b6
Fix variable mismatch for job counts
2014-02-26 14:29:00 -08:00
JoelKatz
955ce45448
Fix the assert on a self-connect
2014-02-24 22:30:04 -08:00
Vinnie Falco
995e64a205
PeerFinder fixes:
...
* Fix split horizon using recent address cache
* Change message tuning parameters to reduce dead messages
* Improved peer handout algorithm for addresses
* Improved handout algorithm for redirects
* Improved selection algorithm for autoconnect
* Faster autoconnection strategy
* Consolidate deadline timers
* Send empty endpoints message as a socket ping
* Fix hop count adjustments for live cache filtering
* Remove broken Peer::isConnected function
* Optimized Livecache for handouts
* Optimized Bootcache for handouts
* Remove uptime metric from Bootcache entries
* Add histogram to Livecache print output
2014-02-24 19:25:01 -08:00
Vinnie Falco
bf085f0ef3
New utility classes, containers, C++14 compatibility, and fixes:
...
* Add std::equal_to <void> (since C++14)
* Add heterogeneous std::equal (since C++14)
* Add maybe_const
* Add empty_base_optimization
* Add is_constructible specialization for pair, tuple
* Add aged associative containers:
- aged_set, aged_map, aged_multiset, aged_multimap
- aged_unordered_set, aged_unordered_map,
- aged_unordered_multiset, aged_unordered_multimap
* Fix auto keyword pass by reference
* Fix basic_seconds_clock warning and project file
2014-02-24 19:25:01 -08:00
David Schwartz
1374b37882
Remove dead serializer signature code
2014-02-24 18:28:44 -08:00
JoelKatz
e275f4eb9d
Handle a removed peer when counting ledger use
2014-02-24 18:28:43 -08:00
JoelKatz
652d809129
Validate params before dispatching
2014-02-24 18:28:43 -08:00
JoelKatz
c186519bcf
Ledger fetch fixes.
2014-02-24 18:28:42 -08:00
Nik Bougalis
870fb4f291
Fix missing break on mtCLUSTER handler
2014-02-24 18:28:42 -08:00
Nik Bougalis
7cd63489f4
Refactor Job tracking and statistics gathering
2014-02-23 01:47:35 -08:00
Vinnie Falco
616a53888e
Use forward_tuple to prevent needless copies
2014-02-22 21:33:01 -08:00
Vinnie Falco
a336cc26f9
Remove deprecated IPAddress
2014-02-22 21:33:00 -08:00
Howard Hinnant
382088c456
Add find_create stat to InboundLedgers
2014-02-22 21:33:00 -08:00
JoelKatz
38ba7e695a
Don't hold the master lock
2014-02-21 14:46:57 -08:00
JoelKatz
996326a00e
Configurable fetch depth.
2014-02-17 17:26:58 -08:00
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
41c0702408
Fix custom currency parsers
2014-02-17 17:26:43 -08:00
JoelKatz
c2a16ddbab
Cannot call gotTXData without master lock ... yet!
2014-02-14 14:26:03 -08:00
Vinnie Falco
5bb194cf89
PeerFinder fixes:
...
* Add Livecache property stream support
* Tidy up log output
* Move peer code to ripple_overlay module
* Remove or hide some Peer interfaces
* Fix asserts by removing isConnected which was not thread safe
2014-02-14 14:00:51 -08:00
Vinnie Falco
645b9a01c7
Make abstract_clock members const
2014-02-14 11:14:09 -08:00
Vinnie Falco
3a1a5d12de
Refactor PeerFinder:
...
* Revise documentation in README.md
* Inject abstract_clock in Manager
* Introduce the Slot object as a replacement for Peer
* New bullet-proof method for slot accounting
* Replace Peer with Slot for tracking connections
* Prevent duplicate outbound connection attempts
* Improved connection and bootstrap business logic
* Refactor PeerImp, PeersImp private interfaces
* Give PeersImp access to the PeerImp interface
* Handle errors retrieving endpoints from asio sockets
* Use weak_ptr to manage PeerImp lifetime
* Better handling of socket closure in PeerImp
* Improve the orderly shutdown logic of PeersImp
2014-02-13 14:19:27 -08:00
Vinnie Falco
12748e7539
Add chrono APIs to DeadlineTimer
2014-02-12 12:58:20 -08:00
Nicholas Dudfield
2f69d4c8ee
Update Travis matrix:
...
* New clang compiler target
* Sconstruct changes for clang
* Patches to support clang
2014-02-11 19:13:51 -08:00
Nicholas Dudfield
8dbf8b9038
Fix clang compile error
2014-02-11 19:13:45 -08:00
Vinnie Falco
fdfe047f3e
Fix new RPC dispatcher params
2014-02-11 19:05:08 -08:00
Vinnie Falco
38c3f84c9f
Update beast project file
2014-02-10 19:48:37 -08:00
Vinnie Falco
9c5b071556
Fix crash on exit in ~InboundLedger
2014-02-08 11:07:10 -08:00
Vinnie Falco
46dc52e449
Fix insight object lifetimes in Group
2014-02-08 10:48:54 -08:00
Vinnie Falco
f469e3853d
Insight support for jobs:
...
* Add insight Groups to Application singleton
* Put JobQueue metrics into "jobq" Group
* Add queued time to Job
* Add per-type Job queue time metrics
* Add per-type Job execution time metrics
* Break JobQueue sources out of the namespace
* Use free function to create the JobQueue
2014-02-08 10:09:22 -08:00
Vinnie Falco
a681a4fcd4
Improved logging for insight stat packets
2014-02-08 09:33:04 -08:00
Vinnie Falco
575b0bb7b0
Fix gcc compile
2014-02-07 09:09:01 -08:00
NATTSiM
9cc8c341e7
Fix clang compile
2014-02-07 08:09:15 -08:00
Vinnie Falco
9b657ba224
Refactor RPC module:
...
* Move JsonPropertyStream to ripple_json
* Remove unused RPC service manager
* Recreate RPC module in app code area
* Add RPC::Manager
* Add DoPrint handler
2014-02-06 18:21:08 -08:00
Vinnie Falco
9bc6e83f8a
Change bassert to always call assert
2014-02-06 14:30:03 -08:00
Nik Bougalis
572aae320d
Performance fixes: decongest master lock
2014-02-05 15:57:10 -08:00
Nik Bougalis
2906899811
Ignore ports when checking RPC IP filter list
2014-02-05 15:57:09 -08:00
Nik Bougalis
1a6bf88900
Resolver Work:
...
* Don't stall during shutdown
* Properly handle unit test execution
* Handle whitespace when parsing names to resolve
2014-02-05 15:57:09 -08:00
Nik Bougalis
e60b28980a
PeerFinder work and refactoring:
...
* Implement PeerFinder business logic.
* Support fixed peers (including DNS support).
* Add journal support to Peer and Peers.
* Refactor PeerDoor support.
* Tidy up Peers and eliminate connection functionality and timers.
* Refactor Peer interface and add journal support.
* Allow construction of incoming Peer using an existing socket.
* Remove TESTNET support.
* Allow connections from/to cluster peers without consuming slots
* Misc. cleanups.
2014-02-05 15:56:04 -08:00
Vinnie Falco
a253b2ef4b
Refactor IP::Endpoint
2014-02-05 15:53:16 -08:00
Vinnie Falco
0c2e35edc9
Remove obsolete Visual Studio projects
2014-02-05 15:42:28 -08:00
Vinnie Falco
2009f8b1ca
Add insight support to TaggedCache, KeyCache:
...
* Move TaggedCache, KeyCache to common
* Add radmap module, FullBelowCache class
* Add get_seconds_clock
* Inject FullBelowCache in SHAMap
2014-02-03 23:00:45 -08:00
Vinnie Falco
35715a0146
Add basic_seconds_clock, insight::Groups
2014-02-03 22:55:47 -08:00
Vinnie Falco
20e27ceb04
Update Visual Studio 2013 project file
2014-02-03 22:36:29 -08:00
Vinnie Falco
7fb614f7af
Fix application pointer singleton lifetime
2014-02-03 22:36:28 -08:00