Simplified distributed block and file storage with strong consistency, like in Ceph
 
 
 
 
 
 
Go to file
Vitaliy Filippov fac75b0b57 Handle reweights in mon 2020-05-22 12:52:27 +03:00
lp Handle reweights in mon 2020-05-22 12:52:27 +03:00
Makefile Extract "state-watching" etcd client into a separate file 2020-05-22 12:38:40 +03:00
allocator.cpp Fix linear overwrite, make metadata writes ordered, ignore older entries when recovering journal 2019-11-28 22:36:38 +03:00
allocator.h Fix metadata area size calculation, print free space, wait for free space 2019-11-28 20:23:27 +03:00
base64.cpp Fix PG loading - now it works, at least once 2020-04-17 02:33:44 +03:00
base64.h Add base64 implementation 2020-04-11 12:06:18 +03:00
blockstore.cpp Implement basic OSD status reporting to Consul 2020-04-14 14:52:06 +03:00
blockstore.h Use 4K blockstore block by default, use MEM_ALIGNMENT in osd code 2020-04-14 19:19:56 +03:00
blockstore_flush.cpp Implement regular automatic syncs, split osd_t constructor into some methods 2020-04-02 22:16:46 +03:00
blockstore_flush.h Add journal fsync to stabilize/rollback 2020-03-09 00:35:58 +03:00
blockstore_impl.cpp Fix crashes, print some stats 2020-03-31 17:55:31 +03:00
blockstore_impl.h Lock Blockstore devices exclusively by default 2020-04-21 01:59:11 +03:00
blockstore_init.cpp Implement flushing (stabilize/rollback) of unstable entries on start of the PG 2020-03-14 02:49:34 +03:00
blockstore_init.h Extract alignments to options 2020-01-16 00:54:25 +03:00
blockstore_journal.cpp Fix possible journal corruption caused by concurrent flushing and writing of the same journal sector 2020-03-08 01:21:19 +03:00
blockstore_journal.h Use 4K blockstore block by default, use MEM_ALIGNMENT in osd code 2020-04-14 19:19:56 +03:00
blockstore_open.cpp Lock Blockstore devices exclusively by default 2020-04-21 01:59:11 +03:00
blockstore_read.cpp Fix crashes, print some stats 2020-03-31 17:55:31 +03:00
blockstore_rollback.cpp Fix PG state comparison leading to unclean PGs not flushing 2020-05-01 12:56:46 +03:00
blockstore_stable.cpp Fix crashes, print some stats 2020-03-31 17:55:31 +03:00
blockstore_sync.cpp Do not start small writes before finishing the last big write to the same object 2020-03-12 02:15:01 +03:00
blockstore_write.cpp Fix crashes, print some stats 2020-03-31 17:55:31 +03:00
crc32c.c Continue fio engine 2019-11-26 00:03:09 +03:00
crc32c.h Add optimized crc32c 2019-11-25 02:30:06 +03:00
dump_journal.cpp Fix some logging 2020-03-07 16:41:53 +03:00
etcd_state_client.cpp Extract "state-watching" etcd client into a separate file 2020-05-22 12:38:40 +03:00
etcd_state_client.h Extract "state-watching" etcd client into a separate file 2020-05-22 12:38:40 +03:00
fio_engine.cpp CONFIG_HAVE_GETTID 2020-03-25 01:20:20 +03:00
fio_sec_osd.cpp CONFIG_HAVE_GETTID 2020-03-25 01:20:20 +03:00
http_client.cpp Extract HTTP client functions from osd_t 2020-05-21 11:39:01 +03:00
http_client.h Extract HTTP client functions from osd_t 2020-05-21 11:39:01 +03:00
lambda_size.cpp c++ lambda size test 2019-11-13 22:36:12 +03:00
object_id.h Implement read-modify-write calculation and extract it into a separate file 2020-02-23 02:11:43 +03:00
osd.cpp Extract "state-watching" etcd client into a separate file 2020-05-22 12:38:40 +03:00
osd.h Remove connect callback because it is always the same 2020-05-22 12:45:12 +03:00
osd_client.cpp Rename osd_op_t.op to req 2020-02-23 23:21:17 +03:00
osd_cluster.cpp Remove connect callback because it is always the same 2020-05-22 12:45:12 +03:00
osd_flush.cpp Measure & report op bandwidth, include local blockstore ops in stats 2020-05-11 02:58:13 +03:00
osd_id.h Implement read-modify-write calculation and extract it into a separate file 2020-02-23 02:11:43 +03:00
osd_main.cpp Implement PG state locking and PG moving in response to etcd events 2020-04-29 22:23:38 +03:00
osd_ops.h Implement OSD_OP_DELETE 2020-05-05 00:39:51 +03:00
osd_peering.cpp Remove connect callback because it is always the same 2020-05-22 12:45:12 +03:00
osd_peering_pg.cpp Extract "state-watching" etcd client into a separate file 2020-05-22 12:38:40 +03:00
osd_peering_pg.h Extract "state-watching" etcd client into a separate file 2020-05-22 12:38:40 +03:00
osd_peering_pg_test.cpp Implement PG state locking and PG moving in response to etcd events 2020-04-29 22:23:38 +03:00
osd_primary.cpp Handle integer overflow of the op_stat_count 2020-05-15 01:37:17 +03:00
osd_primary.h Split osd_primary.cpp 2020-05-03 11:04:20 +03:00
osd_primary_subops.cpp Handle integer overflow of the op_stat_count 2020-05-15 01:37:17 +03:00
osd_receive.cpp Handle integer overflow of the op_stat_count 2020-05-15 01:37:17 +03:00
osd_rmw.cpp (Almost) Implement misplaced recovery, integrating it into calc_rmw() 2020-04-05 15:50:53 +03:00
osd_rmw.h (Almost) Implement misplaced recovery, integrating it into calc_rmw() 2020-04-05 15:50:53 +03:00
osd_rmw_test.cpp Add a test for missing chunk overwrite 2020-04-05 16:14:03 +03:00
osd_secondary.cpp Check peer config (at least, number) after connecting 2020-04-21 00:08:54 +03:00
osd_send.cpp Handle integer overflow of the op_stat_count 2020-05-15 01:37:17 +03:00
osd_test.cpp Use 4K blockstore block by default, use MEM_ALIGNMENT in osd code 2020-04-14 19:19:56 +03:00
pg_states.cpp Extract "state-watching" etcd client into a separate file 2020-05-22 12:38:40 +03:00
pg_states.h Extract "state-watching" etcd client into a separate file 2020-05-22 12:38:40 +03:00
ringloop.cpp Implement simple websocket client 2020-04-25 23:11:50 +03:00
ringloop.h Implement simple websocket client 2020-04-25 23:11:50 +03:00
rw_blocking.cpp Use writev in libfio_sec_osd 2020-03-02 21:17:21 +03:00
rw_blocking.h Use writev in libfio_sec_osd 2020-03-02 21:17:21 +03:00
stub_bench.cpp Add simple "stub bench" using sync I/O 2020-03-01 23:00:46 +03:00
stub_osd.cpp Move uint8_t[] buffers into any_op_t/any_reply_t 2020-02-23 23:21:17 +03:00
test.cpp Hash-based PG distribution experiments 2020-03-17 18:52:39 +03:00
test_allocator.cpp Fix allocator bug 2019-11-27 01:12:25 +03:00
test_blockstore.cpp Make [un]register_consumer operate on pointers, rename get_loop_again() to has_work() 2020-03-04 21:00:20 +03:00
test_pattern.h Make basic primary-write work 2020-02-25 02:55:58 +03:00
timerfd_interval.cpp Make [un]register_consumer operate on pointers, rename get_loop_again() to has_work() 2020-03-04 21:00:20 +03:00
timerfd_interval.h Add simple timer manager 2020-04-15 13:41:44 +03:00
timerfd_manager.cpp Remove io_uring usage from osd_http and timerfd_manager 2020-05-21 01:25:38 +03:00
timerfd_manager.h Remove io_uring usage from osd_http and timerfd_manager 2020-05-21 01:25:38 +03:00
xor.h Stripe read reconstruction 2020-01-31 13:46:23 +03:00