vitastor/src
Vitaliy Filippov a612cdca47 Release 0.9.3
- Add patch for libvirt 9.0
- Add support for Proxmox VE 8.0
- Fix compatibility of the QEMU driver with iothread (QEMU rebuilds are coming)
- Fix vitastor-cli rm-data/rm/merge hanging when some OSDs are down.
  Allow deletions in unclean cluster at the cost of some data possibly
  "reappearing" when those OSDs start back. In that case you can just repeat
  the deletion request using rm-data.
- A bunch of bug fixes for snapshots:
  - Fix snapshot reads often not working at all with snapshot chain size > 2
  - Fix optimized snapshot data merge (children to parent)
  - Fix updating of image name index key during optimized merge
  - Fix auto-selection preventing the use of optimized merge with only 1 snapshot
  - Fix incorrect CAS retries during snapshot merge
  - Fix snapshot merge progress reporting
- Fix primary_read bitmap buffers use-after-free which could lead to
  incorrect allocation map reads
- Remove /usr/local/bin path from make-etcd
- Some documentation fixes
2023-07-01 00:25:58 +03:00
..
mock Implement online config update 2023-03-26 19:21:50 +03:00
nfs Simplified NFS proxy based on own NFS/XDR implementation 2022-05-07 01:01:20 +03:00
CMakeLists.txt Release 0.9.3 2023-07-01 00:25:58 +03:00
addr_util.cpp Use the larger sockaddr_storage structure 2022-02-12 11:22:56 +03:00
addr_util.h Use the larger sockaddr_storage structure 2022-02-12 11:22:56 +03:00
allocator.cpp Use (uint64_t)1 instead of 1l / 1ul 2022-04-16 01:48:14 +03:00
allocator.h Add "external" bitmap support to osd_rmw 2021-04-10 17:44:12 +03:00
blockstore.cpp Implement online config update 2023-03-26 19:21:50 +03:00
blockstore.h Fix compile errors with gcc 10 2023-05-20 23:20:09 +03:00
blockstore_disk.cpp Fix vitastor-disk prepare bugs 2022-08-19 02:22:54 +03:00
blockstore_disk.h vitastor-disk prepare: implement first form of the command 2022-08-09 01:29:29 +03:00
blockstore_flush.cpp Put get_trim_pos into the "critical section". Fixes rare journal corruption issue 2023-06-17 00:06:42 +03:00
blockstore_flush.h Shard clean_db by PGs to speedup listings 2022-02-20 00:21:24 +03:00
blockstore_impl.cpp Add min/max stripe and limit to OP_LIST 2023-05-20 23:19:39 +03:00
blockstore_impl.h Wait for free space again, but count on big_write flushes instead of just flusher activity 2023-05-10 01:51:02 +03:00
blockstore_init.cpp Oops. Fix metadata read after fixes :-) 2022-12-17 17:31:57 +03:00
blockstore_init.h Final fix for the lack of zeroing out of old metadata entries 2022-12-17 14:50:31 +03:00
blockstore_journal.cpp Put get_trim_pos into the "critical section". Fixes rare journal corruption issue 2023-06-17 00:06:42 +03:00
blockstore_journal.h Prioritize EC (non-instantly-stable) operations under journal pressure 2023-01-03 00:05:45 +03:00
blockstore_open.cpp Implement online config update 2023-03-26 19:21:50 +03:00
blockstore_read.cpp Fix an idiotic bug leading to failed reads with -ERANGE with EC :D 2023-06-03 00:44:52 +03:00
blockstore_rollback.cpp Slightly improve some debug prints 2023-05-29 01:04:16 +03:00
blockstore_stable.cpp Add another assert-type check (it does not fire, just as a safety measure for the future) 2023-06-17 00:07:22 +03:00
blockstore_sync.cpp Selectively sync nonsynced objects on STABILIZE/ROLLBACK (fix for github issue #51) 2023-04-08 02:44:02 +03:00
blockstore_write.cpp Put get_trim_pos into the "critical section". Fixes rare journal corruption issue 2023-06-17 00:06:42 +03:00
cli.cpp Add scrub documentation 2023-05-20 23:19:39 +03:00
cli.h Implement vitastor-cli fix 2023-05-20 23:19:39 +03:00
cli_alloc_osd.cpp Rename base64.{cpp.h} to str_util 2022-07-31 01:12:37 +03:00
cli_common.cpp Implement safety check for OSD removal, translate all '-' to '_' in cli options 2022-12-26 02:48:48 +03:00
cli_create.cpp Implement safety check for OSD removal, translate all '-' to '_' in cli options 2022-12-26 02:48:48 +03:00
cli_describe.cpp Fix compile errors with gcc 10 2023-05-20 23:20:09 +03:00
cli_df.cpp Fix incorrect EC free space statistics in vitastor-cli df output 2023-01-26 02:04:29 +03:00
cli_fix.cpp Implement vitastor-cli fix 2023-05-20 23:19:39 +03:00
cli_fix.h Fix compile errors with gcc 10 2023-05-20 23:20:09 +03:00
cli_flatten.cpp Implement safety check for OSD removal, translate all '-' to '_' in cli options 2022-12-26 02:48:48 +03:00
cli_ls.cpp Rename base64.{cpp.h} to str_util 2022-07-31 01:12:37 +03:00
cli_merge.cpp Fix CAS retries during snapshot merge 2023-06-30 02:30:23 +03:00
cli_modify.cpp Implement safety check for OSD removal, translate all '-' to '_' in cli options 2022-12-26 02:48:48 +03:00
cli_rm.cpp Do not print last subcommand result twice during "inverse" snapshot merge 2023-06-30 02:07:10 +03:00
cli_rm_data.cpp Warn about unfinished deletions in rm-data 2023-06-30 01:18:25 +03:00
cli_rm_osd.cpp Store next scrub timestamp instead of last scrub timestamp 2023-05-20 23:19:39 +03:00
cli_status.cpp Report scrub I/O in vitastor-cli status 2023-06-17 21:11:21 +03:00
cluster_client.cpp Fix CAS retries during snapshot merge 2023-06-30 02:30:23 +03:00
cluster_client.h Do not hang on inactive OSDs during delete, report and skip them instead 2023-06-30 00:15:16 +03:00
cluster_client_list.cpp Do not hang on inactive OSDs during delete, report and skip them instead 2023-06-30 00:15:16 +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
disk_simple_offsets.cpp Rename base64.{cpp.h} to str_util 2022-07-31 01:12:37 +03:00
disk_tool.cpp Fix vitastor-disk purge (now it works) 2022-12-27 02:28:20 +03:00
disk_tool.h Fix vitastor-disk purge (now it works) 2022-12-27 02:28:20 +03:00
disk_tool_journal.cpp Fix typo (did not affect execution though) 2023-03-15 01:08:23 +03:00
disk_tool_meta.cpp Fix possible bad realloc in disk_tool_meta for non-standard metadata block sizes 2023-03-15 01:08:23 +03:00
disk_tool_prepare.cpp Clear journal_device and meta_device before initialising the next OSD in automatic mode 2023-05-15 23:58:55 +03:00
disk_tool_resize.cpp Add documentation for the new "vitastor-disk" tool 2022-08-22 00:31:30 +03:00
disk_tool_udev.cpp Suppress warnings in vitastor-disk purge correctly 2022-12-27 11:09:19 +03:00
disk_tool_upgrade.cpp Fix vitastor-disk purge (now it works) 2022-12-27 02:28:20 +03:00
disk_tool_utils.cpp Implement vitastor-cli fix 2023-05-20 23:19:39 +03:00
epoll_manager.cpp Ignore ENOENT in epoll_ctl 2023-05-08 20:39:20 +03:00
epoll_manager.h Handle get_sqe failures, don't die with "will fall out of sync" in epoll_manager 2022-01-31 02:52:20 +03:00
etcd_state_client.cpp Store next scrub timestamp instead of last scrub timestamp 2023-05-20 23:19:39 +03:00
etcd_state_client.h Store next scrub timestamp instead of last scrub timestamp 2023-05-20 23:19:39 +03:00
fio_cluster.cpp Fix void* arithmetic again 2022-07-15 01:38:30 +03:00
fio_engine.cpp Fix leaks detected by clang scan-build (only 1 of 4 may be important though) 2022-01-16 00:11:59 +03:00
fio_headers.h Fix compatibility with fio 3.28+ 2022-01-31 23:39:14 +03:00
fio_sec_osd.cpp Use the larger sockaddr_storage structure 2022-02-12 11:22:56 +03:00
http_client.cpp vitastor-disk prepare: implement first form of the command 2022-08-09 01:29:29 +03:00
http_client.h Move simple-offsets into vitastor-disk, too 2022-07-15 02:19:35 +03:00
malloc_or_die.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00
messenger.cpp Close client FDs only when destroying the client, after handling all async reads/writes 2023-05-25 00:52:43 +03:00
messenger.h Measure scrub statistics 2023-06-17 20:56:26 +03:00
msgr_op.cpp Fix primary_read bitmap buffers being freed too early (use-after-free) 2023-06-30 12:47:45 +03:00
msgr_op.h Fix primary_read bitmap buffers being freed too early (use-after-free) 2023-06-30 12:47:45 +03:00
msgr_rdma.cpp Allow to send more than 1 operation at a time 2023-02-26 02:01:04 +03:00
msgr_rdma.h Allow to send more than 1 operation at a time 2023-02-26 02:01:04 +03:00
msgr_receive.cpp Fix primary_read bitmap buffers being freed too early (use-after-free) 2023-06-30 12:47:45 +03:00
msgr_send.cpp Fix primary_read bitmap buffers being freed too early (use-after-free) 2023-06-30 12:47:45 +03:00
msgr_stop.cpp Close client FDs only when destroying the client, after handling all async reads/writes 2023-05-25 00:52:43 +03:00
nbd_proxy.cpp Fix \n in nbd_proxy 2023-06-19 01:48:58 +03:00
nfs_conn.cpp Allow to configure block_size, bitmap_granularity and immediate_commit per-pool 2022-08-11 01:56:33 +03:00
nfs_portmap.cpp Rename base64.{cpp.h} to str_util 2022-07-31 01:12:37 +03:00
nfs_portmap.h Simplified NFS proxy based on own NFS/XDR implementation 2022-05-07 01:01:20 +03:00
nfs_proxy.cpp Rename base64.{cpp.h} to str_util 2022-07-31 01:12:37 +03:00
nfs_proxy.h Simplified NFS proxy based on own NFS/XDR implementation 2022-05-07 01:01:20 +03:00
object_id.h Selectively sync nonsynced objects on STABILIZE/ROLLBACK (fix for github issue #51) 2023-04-08 02:44:02 +03:00
osd.cpp Allow to disable scrub_find_best 2023-05-21 12:33:38 +03:00
osd.h Allow to disable scrub_find_best 2023-05-21 12:33:38 +03:00
osd_cluster.cpp Store next scrub timestamp instead of last scrub timestamp 2023-05-20 23:19:39 +03:00
osd_flush.cpp Slightly improve some debug prints 2023-05-29 01:04:16 +03:00
osd_id.h Add a new recovery_pg_switch setting to mix all PGs during recovery 2022-12-30 02:03:33 +03:00
osd_main.cpp Use json11 instead of blockstore_config_t 2021-04-30 00:52:46 +03:00
osd_ops.cpp Implement "describe object(s)" operation 2023-05-20 23:19:39 +03:00
osd_ops.h Fix primary_read bitmap buffers being freed too early (use-after-free) 2023-06-30 12:47:45 +03:00
osd_peering.cpp Fix auto_scrubs not starting because of < vs <= =)) 2023-06-17 17:32:21 +03:00
osd_peering_pg.cpp Slightly improve some debug prints 2023-05-29 01:04:16 +03:00
osd_peering_pg.h Implement "describe object(s)" operation 2023-05-20 23:19:39 +03:00
osd_peering_pg_test.cpp Move tests to "make test" 2023-02-21 01:30:42 +03:00
osd_primary.cpp Fix primary_read bitmap buffers being freed too early (use-after-free) 2023-06-30 12:47:45 +03:00
osd_primary.h Implement scrubbing "data path" - OSD_OP_SCRUB 2023-05-20 23:19:39 +03:00
osd_primary_chain.cpp Implement ambiguity detection during scrub 2023-05-20 23:19:39 +03:00
osd_primary_describe.cpp Implement "describe object(s)" operation 2023-05-20 23:19:39 +03:00
osd_primary_subops.cpp Measure scrub statistics 2023-06-17 20:56:26 +03:00
osd_primary_sync.cpp Fix "opcode=5 retval=-2" errors sometimes possible with EC 2023-04-08 02:44:02 +03:00
osd_primary_write.cpp Fix primary_read bitmap buffers being freed too early (use-after-free) 2023-06-30 12:47:45 +03:00
osd_rmw.cpp Fix brute-force error locator for EC n+k with k > 2 2023-05-21 00:57:14 +03:00
osd_rmw.h Allow scrub to fix corrupted object states 2023-05-20 23:19:39 +03:00
osd_rmw_test.cpp Fix brute-force error locator for EC n+k with k > 2 2023-05-21 00:57:14 +03:00
osd_scrub.cpp Measure scrub statistics 2023-06-17 20:56:26 +03:00
osd_secondary.cpp Add min/max stripe and limit to OP_LIST 2023-05-20 23:19:39 +03:00
osd_test.cpp Add missing close() in test stubs 2023-03-15 00:23:56 +03:00
pg_states.cpp Implement ambiguity detection during scrub 2023-05-20 23:19:39 +03:00
pg_states.h Implement ambiguity detection during scrub 2023-05-20 23:19:39 +03:00
qemu_driver.c Fix compatibility of the QEMU driver with iothread 2023-06-21 02:11:28 +03:00
ringloop.cpp Add set_immediate to ringloop and use it for bs/osd ops to prevent reenterability issues 2023-02-09 17:37:26 +03:00
ringloop.h Add set_immediate to ringloop and use it for bs/osd ops to prevent reenterability issues 2023-02-09 17:37:26 +03:00
rw_blocking.cpp Fix read/write return type in rw_blocking 2023-03-15 01:08:14 +03:00
rw_blocking.h Support zero-copy send in fio_sec_osd to allow testing it 2021-12-27 02:12:44 +03:00
sha256.c Simplified NFS proxy based on own NFS/XDR implementation 2022-05-07 01:01:20 +03:00
sha256.h Simplified NFS proxy based on own NFS/XDR implementation 2022-05-07 01:01:20 +03:00
str_util.cpp Report scrub I/O in vitastor-cli status 2023-06-17 21:11:21 +03:00
str_util.h Report scrub I/O in vitastor-cli status 2023-06-17 21:11:21 +03:00
stub_bench.cpp Add missing close() in test stubs 2023-03-15 00:23:56 +03:00
stub_osd.cpp Use the larger sockaddr_storage structure 2022-02-12 11:22:56 +03:00
stub_uring_osd.cpp Extract bind socket code into a utility function 2022-02-06 00:39:52 +03:00
test_allocator.cpp Skip double allocs when reading journal 2021-04-03 00:53:28 +03:00
test_blockstore.cpp Implement journaled write throttling for the SSD+HDD case 2021-04-10 17:44:12 +03:00
test_cas.cpp Add a test for CAS write operation 2021-06-15 00:12:35 +03:00
test_cluster_client.cpp Fix cluster_client test after last reenterability fixes 2023-02-05 01:47:32 +03:00
test_crc32.cpp Add crc32c test utility 2022-11-20 00:50:13 +03:00
test_pattern.h Fix build under clang and some warnings 2022-01-16 00:02:54 +03:00
test_shit.cpp Use (uint64_t)1 instead of 1l / 1ul 2022-04-16 01:48:14 +03:00
timerfd_manager.cpp Fix build under clang and some warnings 2022-01-16 00:02:54 +03:00
timerfd_manager.h Add microsecond accuracy to set_timer 2021-04-10 17:44:12 +03:00
vitastor.pc.in Release 0.9.3 2023-07-01 00:25:58 +03:00
vitastor_c.cpp Implement bdrv_co_block_status for snapshot export support 2023-01-07 17:06:58 +03:00
vitastor_c.h Implement bdrv_co_block_status for snapshot export support 2023-01-07 17:06:58 +03:00
xor.h Move C/C++ sources to src subdirectory 2021-02-25 23:59:03 +03:00