vitastor/src
Vitaliy Filippov b0ad1e1e6d Remember writes as "unsynced" only after completing them
Previously BS_OP_SYNC could take unfinished writes and add them into the journal before
they were actually completed. This was leading to crashes with the message
"BUG: Unexpected dirty_entry 2000000000001:9f2a0000 v3 unstable state during flush: 338"
2021-03-25 02:41:58 +03:00
..
CMakeLists.txt Extract osd_primary write and sync code into separate files 2021-03-24 14:20:56 +03:00
allocator.cpp Fix a bug where allocator was unable to allocate up to last (n%64) blocks, add tests for it 2021-03-13 02:19:02 +03:00
allocator.h Fix a bug where allocator was unable to allocate up to last (n%64) blocks, add tests for it 2021-03-13 02:19:02 +03:00
base64.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
base64.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
blockstore.cpp Remove unused enqueue_op_first() 2021-03-08 17:04:10 +03:00
blockstore.h Remove unused enqueue_op_first() 2021-03-08 17:04:10 +03:00
blockstore_flush.cpp Remember writes as "unsynced" only after completing them 2021-03-25 02:41:58 +03:00
blockstore_flush.h Make flusher_count adaptive and limit write iodepth 2021-02-25 23:59:33 +03:00
blockstore_impl.cpp Do not duplicate blockstore operations when io_uring fills up 2021-03-16 12:48:26 +03:00
blockstore_impl.h Remember writes as "unsynced" only after completing them 2021-03-25 02:41:58 +03:00
blockstore_init.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
blockstore_init.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
blockstore_journal.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
blockstore_journal.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
blockstore_open.cpp Make flusher_count adaptive and limit write iodepth 2021-02-25 23:59:33 +03:00
blockstore_read.cpp Do not duplicate blockstore operations when io_uring fills up 2021-03-16 12:48:26 +03:00
blockstore_rollback.cpp Use common macro for get_sqe 2021-03-13 17:19:45 +03:00
blockstore_stable.cpp Use common macro for get_sqe 2021-03-13 17:19:45 +03:00
blockstore_sync.cpp Remember writes as "unsynced" only after completing them 2021-03-25 02:41:58 +03:00
blockstore_write.cpp Remember writes as "unsynced" only after completing them 2021-03-25 02:41:58 +03:00
cluster_client.cpp Add PING operation and timeouts to detect OSD failures when a host goes down 2021-03-09 02:15:38 +03:00
cluster_client.h Add PING operation and timeouts to detect OSD failures when a host goes down 2021-03-09 02:15:38 +03:00
crc32c.c Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
crc32c.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
dump_journal.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
epoll_manager.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
epoll_manager.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
etcd_state_client.cpp Allow to specify etcd URLs for OSDs with http://, do not die with a strange error if -etcd option is missing for fio 2021-03-16 12:48:26 +03:00
etcd_state_client.h Allow to specify etcd URLs for OSDs with http://, do not die with a strange error if -etcd option is missing for fio 2021-03-16 12:48:26 +03:00
fio_cluster.cpp Allow to specify etcd URLs for OSDs with http://, do not die with a strange error if -etcd option is missing for fio 2021-03-16 12:48:26 +03:00
fio_engine.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
fio_headers.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
fio_sec_osd.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
http_client.cpp Allow to specify etcd URLs for OSDs with http://, do not die with a strange error if -etcd option is missing for fio 2021-03-16 12:48:26 +03:00
http_client.h Allow to specify etcd URLs for OSDs with http://, do not die with a strange error if -etcd option is missing for fio 2021-03-16 12:48:26 +03:00
malloc_or_die.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
messenger.cpp Do not run ping on clients that are not yet connected 2021-03-21 01:37:23 +03:00
messenger.h Add PING operation and timeouts to detect OSD failures when a host goes down 2021-03-09 02:15:38 +03:00
msgr_receive.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
msgr_send.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
nbd_proxy.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
object_id.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
osd.cpp Assign .req as a whole to always zero out the remaining part 2021-03-24 14:20:56 +03:00
osd.h Skip disconnected OSDs during sync 2021-03-24 14:20:56 +03:00
osd_cluster.cpp Only forget offline PGs if their state is not changed during reporting 2021-03-08 17:04:10 +03:00
osd_flush.cpp Don't try to "recover" misplaced objects if it would make them degraded 2021-03-21 01:37:23 +03:00
osd_id.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
osd_main.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
osd_ops.cpp Add PING operation and timeouts to detect OSD failures when a host goes down 2021-03-09 02:15:38 +03:00
osd_ops.h Add PING operation and timeouts to detect OSD failures when a host goes down 2021-03-09 02:15:38 +03:00
osd_peering.cpp Delete objects only after a SYNC during rebalance in the non-immediate_commit mode 2021-03-16 12:48:26 +03:00
osd_peering_pg.cpp Use pg_data_size instead of pg_minsize for object state calculation 2021-03-08 17:04:10 +03:00
osd_peering_pg.h Delete objects only after a SYNC during rebalance in the non-immediate_commit mode 2021-03-16 12:48:26 +03:00
osd_peering_pg_test.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
osd_primary.cpp Extract osd_primary write and sync code into separate files 2021-03-24 14:20:56 +03:00
osd_primary.h Delete objects only after a SYNC during rebalance in the non-immediate_commit mode 2021-03-16 12:48:26 +03:00
osd_primary_subops.cpp Assign .req as a whole to always zero out the remaining part 2021-03-24 14:20:56 +03:00
osd_primary_sync.cpp Extract osd_primary write and sync code into separate files 2021-03-24 14:20:56 +03:00
osd_primary_write.cpp Extract osd_primary write and sync code into separate files 2021-03-24 14:20:56 +03:00
osd_rmw.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
osd_rmw.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
osd_rmw_test.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
osd_secondary.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
osd_test.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
pg_states.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
pg_states.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
qemu_driver.c Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
qemu_proxy.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
qemu_proxy.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
ringloop.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
ringloop.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
rm_inode.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
rw_blocking.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
rw_blocking.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
stub_bench.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
stub_osd.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
stub_uring_osd.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
test_allocator.cpp Fix a bug where allocator was unable to allocate up to last (n%64) blocks, add tests for it 2021-03-13 02:19:02 +03:00
test_blockstore.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
test_pattern.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
test_shit.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
timerfd_interval.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
timerfd_interval.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
timerfd_manager.cpp Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
timerfd_manager.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
xor.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00