Commit Graph

54 Commits

Author SHA1 Message Date
JoelKatz
40355c7b58 More predictable LevelDB latency, LevelDB write batching. 2013-05-13 06:48:14 -07:00
JoelKatz
bf6f5c1864 Don't use 'front' on a string. 2013-05-11 17:43:51 -07:00
JoelKatz
f6903508cf One more round of LeveDB import speedups. 2013-05-08 12:01:42 -07:00
JoelKatz
e086fa5a5d Allow LevelDB and SQLite to co-exist in the build and have the backing
store for hashed nodes selectable in the config.
2013-05-07 15:04:23 -07:00
JoelKatz
ecfe553ef9 Code to import MySQL objects into LevelDB. (Or another MySQL database if you really wanted to.) 2013-05-03 16:23:33 -07:00
JoelKatz
3ec116f5bf Monitor LevelDB performance. 2013-04-30 17:43:56 -07:00
JoelKatz
d508bba147 Improve levelDB performance by eliminating GetHex calls and allocate/copy/free cycles.
Sorry, this invalidates existing levelDB databases. Please remove them.
2013-04-26 13:53:26 -07:00
JoelKatz
a7d958606a Fix. 2013-04-26 00:44:07 -07:00
JoelKatz
7f4d76808b Fixes and simplifications. 2013-04-26 00:11:44 -07:00
JoelKatz
a5337451d3 Remove negative cache with ldb. 2013-04-25 17:56:54 -07:00
JoelKatz
2fa2a75d09 Typo. 2013-04-25 17:42:02 -07:00
JoelKatz
7f912cd171 Might as well change the format now. 2013-04-25 17:40:23 -07:00
JoelKatz
35ad8d4c6f Add LevelDB support for hash nodes. We really need to cut over, the reduction in
I/O and CPU use is dramatic.
2013-04-25 17:32:12 -07:00
JoelKatz
510dd048ba Sorry, I broke the unit tests. 2013-04-19 01:57:40 -07:00
JoelKatz
e296a81c83 Move background hashed object writes to their own DB connection. 2013-04-18 17:31:06 -07:00
JoelKatz
fd296b4411 Pathfinding performance improvements. 2013-04-09 19:42:57 -07:00
JoelKatz
46dbd3e967 Emergency fix. boost::format doesn't have the thread safety we thought. 2013-04-08 17:17:16 -07:00
JoelKatz
24fe80e629 Cleanup. 2013-04-02 13:41:34 -07:00
JoelKatz
d73995e695 An optimization. Faster GetHex for exact strings. 2013-04-01 21:01:06 -07:00
JoelKatz
78d1a93e69 Reusing prepared statements is slower. 2013-04-01 20:24:01 -07:00
JoelKatz
a455d71901 Don't count lock acquire time.
FreeBSD
2013-03-29 10:16:50 -07:00
JoelKatz
b9456c8fd7 Except when interacting with boost, use std::function and std::bind
when C++11 is available. See: http://stackoverflow.com/questions/14617835
2013-03-16 03:27:43 -07:00
JoelKatz
606dff758c Support compiling with C++11 rules. Compile C++11 by default.
This gives us some significant performance boosts when containers and binds.
2013-03-16 02:38:05 -07:00
JoelKatz
145eed041d Instrument HOS::retrieve. 2013-03-12 00:56:13 -07:00
JoelKatz
a96676f122 Typo. 2013-03-03 16:46:24 -08:00
JoelKatz
f0c029ef0d Rework the way load is accounted to be more accurate and more specific. 2013-03-03 16:24:47 -08:00
JoelKatz
51ebd75a4a Reset prepared statements after use, not before. 2013-03-01 10:33:38 -08:00
JoelKatz
c6f1c6b8b1 Only do an expensive test that's no longer needed if PARANOID. 2013-02-04 16:56:57 -08:00
JoelKatz
b662167683 Small cleanups. 2013-01-30 20:56:11 -08:00
JoelKatz
e48ef29f8c Dispatch HashedObject background writes through our job queue. 2013-01-28 07:13:05 -08:00
JoelKatz
e9d405302c Use the new code. 2013-01-28 07:05:49 -08:00
JoelKatz
2466eba17b Use a prepared statement to retrieve. 2013-01-28 01:54:01 -08:00
JoelKatz
d3ac663c9a Use slightly cheaper SetHex 2013-01-28 01:14:06 -08:00
JoelKatz
e8ac00e1a3 Allow tunable node sizes to adjust cache sizes, sweep timing, fetch
timing, and so on. Node size defaults to "tiny", which converves
memory and bandwidth.
2013-01-27 13:55:59 -08:00
JoelKatz
c29fdacc41 Remove an annoying log message. 2013-01-10 09:11:34 -08:00
JoelKatz
82d439ea8d Remove a FIXME, since it's **FIXED**. 2013-01-10 00:43:25 -08:00
JoelKatz
20712536b2 Use 'INSERT OR IGNORE' 2013-01-10 00:33:32 -08:00
JoelKatz
c2922e5a16 Remove an unused variable. 2013-01-10 00:19:47 -08:00
JoelKatz
1e2b11fe80 Slight improvement. 2013-01-09 23:54:23 -08:00
JoelKatz
34411001e6 Mark a major FIXME. 2013-01-09 21:17:41 -08:00
JoelKatz
99a8925fe5 Merge function to add all nodes from another database. 2013-01-09 20:48:56 -08:00
JoelKatz
7ed37066cf Add some features to the KeyCache code so we can use it for ledger acquire failure tracking too. 2013-01-09 15:55:18 -08:00
JoelKatz
714b3fb0d0 Small fixes. 2013-01-09 10:14:18 -08:00
JoelKatz
607e2039e2 Add negative caching for HashedObject class. This massively reduces
contention for the database lock under high network ledger fetch load.
2013-01-08 14:50:03 -08:00
Arthur Britto
8877501e5b Remove db->escape in favor of sqlEscape. 2013-01-06 02:08:54 -08:00
JoelKatz
34456b019c Cleanup thread creation. 2012-12-21 12:10:26 -08:00
JoelKatz
2664229017 Fix a compiler warning. 2012-11-29 09:00:05 -08:00
JoelKatz
72777b6b83 Remove some shared pointers on load monitors. 2012-11-28 15:53:07 -08:00
JoelKatz
bfbf0aa185 Eliminate redundant write set waits. You don't need to wait on future write sets. 2012-11-28 15:34:47 -08:00
JoelKatz
6aca65ff76 Get the shared pointers out of the scoped lock stuff. We don't need it. 2012-11-28 15:27:20 -08:00