Commit Graph

114 Commits

Author SHA1 Message Date
Sebastian Messmer
06b78f1b80 Adapt to new cpputils 2015-11-12 13:07:59 -08:00
Sebastian Messmer
ea9d912a16 Better exception in OnDiskBlockStore when rootdir is not a directory 2015-10-30 18:10:24 +01:00
Sebastian Messmer
7402af10c4 OnDiskBlockStore throws an exception earlier (i.e. already in the constructor) if it can't access the base directory 2015-10-29 15:49:59 +01:00
Sebastian Messmer
1bd64c2f7f Added comment explaining why we use boost/thread 2015-10-28 15:30:59 +01:00
Sebastian Messmer
52366fb707 Use cpputils threads that also work fine when fork()-ed 2015-10-28 15:00:49 +01:00
Sebastian Messmer
22a3c90d54 Moved ciphers to cpputils 2015-10-27 23:27:40 +01:00
Sebastian Messmer
caaf528031 Refactor key creation 2015-10-22 18:19:59 +02:00
Sebastian Messmer
62549eeae6 Adapt to new cpputils::Random interface 2015-10-22 17:41:43 +02:00
Sebastian Meßmer
a4ce9f1c97 Fix warnings from -Weffc++ 2015-10-17 21:10:26 +02:00
Sebastian Meßmer
e9470ffb78 Logging instead of stderr 2015-10-17 17:50:30 +02:00
Sebastian Meßmer
62e0a177fb Use cpputils::logging 2015-10-17 03:30:42 +02:00
Sebastian Meßmer
821550e62f Unify (and fix) include guards 2015-10-15 13:09:21 +02:00
Sebastian Meßmer
9a27cea138 Increase parallelity level for cache flushing 2015-10-15 05:45:49 +02:00
Sebastian Meßmer
92d0d073a5 Fix test cases 2015-10-15 04:49:31 +02:00
Sebastian Messmer
0e1ec6829a Added assert 2015-10-14 14:40:53 +02:00
Sebastian Messmer
2ccdcb5b98 Cache destructs elements in parallel in destructor 2015-10-14 14:40:45 +02:00
Sebastian Messmer
210c2c2811 Fix compiler error in test cases 2015-10-08 18:05:09 +02:00
Sebastian Messmer
260bc1056a Make cache MAX_SIZE configurable 2015-10-07 17:24:13 +02:00
Sebastian Messmer
810c2c5b48 Added some locks against race conditions 2015-10-05 18:54:16 +02:00
Sebastian Messmer
5bb77adc87 Added Cache::size() 2015-10-05 16:51:36 +02:00
Sebastian Messmer
73101b74ea Better locking for cache 2015-10-01 15:52:43 +02:00
Sebastian Messmer
84330b1100 Cache has better parallelity - we can push()/pop() while it is flushing and flushing is actually parallel 2015-10-01 13:51:01 +02:00
Sebastian Messmer
c8c13517e0 TODOs 2015-10-01 02:00:34 +02:00
Sebastian Messmer
942a627173 Better fix for Cache race condition 2015-10-01 01:52:21 +02:00
Sebastian Messmer
90471ea6a3 Fixed Cache race condition and added test for it 2015-10-01 01:20:40 +02:00
Sebastian Messmer
c9f07762a4 Removed unnecessary debug calculation 2015-09-29 20:04:12 +02:00
Sebastian Messmer
959ef62a38 Cache is flushed in parallel 2015-09-29 20:01:51 +02:00
Sebastian Messmer
52bb855627 EncryptedBlockStore crashed when a modified block was removed. Fixed crash and added test case. 2015-09-29 18:51:59 +02:00
Sebastian Messmer
aea84d9ef5 Added more ciphers 2015-08-31 23:04:56 +02:00
Sebastian Messmer
fd93e4c199 Use the new assert that doesn't crash the program in a release build 2015-07-22 13:42:07 +02:00
Sebastian Messmer
37bdbd907a Finished migrating to unique_ref instead of unique_ptr 2015-07-21 18:19:34 +02:00
Sebastian Messmer
f4d9d271ea Be more explicit about destructor calls 2015-07-21 14:56:32 +02:00
Sebastian Messmer
7c407c4b69 Switched whole blockstore interface to unique_ref instead of unique_ptr 2015-07-21 14:50:52 +02:00
Sebastian Messmer
a945e4f0fc Changed Blockstore::tryCreate() to return optional<unique_ref<Block>> instead of unique_ptr<Block> 2015-07-20 18:57:48 +02:00
Sebastian Messmer
dc15ac22ca Use optional::value() instead of optional::get() 2015-06-28 17:01:50 +02:00
Sebastian Messmer
db2b39d4ab ParallelAccessBlockStore uses unique_ref for its base block store 2015-06-26 15:54:19 +02:00
Sebastian Messmer
de37cddcce Replace unique_ptr with unique_ref in ParallelAccessBlockStore 2015-06-26 13:45:03 +02:00
Sebastian Messmer
c755717898 Adapt to new cpp-utils 2015-06-21 17:43:31 +02:00
Sebastian Meßmer
8cfa133676 Removed some unneeded usings 2015-06-18 12:45:05 +02:00
Sebastian Messmer
123ac44f24 Merge branch 'develop' of github.com:smessmer/blockstore into develop 2015-06-16 16:52:31 +02:00
Sebastian Messmer
97ba17fbb3 IVs and block keys are drawn from pseudorandom generators 2015-06-16 16:52:23 +02:00
Sebastian Meßmer
48c5493780 Started implementing parallel writing to disk 2015-05-16 13:45:25 +02:00
Sebastian Meßmer
c7702f42fe TODOs 2015-05-16 01:23:42 +02:00
Sebastian Messmer
535bfc1634 TODOs 2015-05-06 16:16:18 +02:00
Sebastian Messmer
fdcd56401a Added specific test cases for EncryptedBlockStore 2015-05-06 00:37:57 +02:00
Sebastian Messmer
0042ae1cef - Run test cases for EncryptedBlockStore with different ciphers
- Implement FakeAuthenticatedCipher for use with specific EncryptedBlockStoreTest
- Write skeleton for specific EncryptedBlockStoreTest
- Fix behavior of AES256_CFB when called with too small input
- Add testcase that all ciphers (also non-authenticating ones) have to handle too small input correctly
2015-05-06 00:12:14 +02:00
Sebastian Messmer
5802040d78 Removed unused exception class 2015-04-28 13:19:44 +02:00
Sebastian Messmer
d589910b0d TODOs 2015-04-27 23:10:30 +02:00
Sebastian Messmer
1ff807e09c Make Cache a generic over Key/Value. Furthermore, add test skeleton for Cache 2015-04-27 22:46:57 +02:00
Sebastian Messmer
f286886b49 Handle QueueMap::push(existing_key) better and write more test cases for QueueMap 2015-04-27 22:11:15 +02:00