Tân Lê
e889ac4209
Fix building QEMU 3.1
2021-11-05 13:45:51 +07:00
Vitaliy Filippov
cfe8de9b84
Autosync based on number of unstable ops to prevent journal stalls
2021-10-30 14:26:48 +03:00
Vitaliy Filippov
fb2f7a0d3c
Release 0.6.6
...
- New command-line tool: vitastor-cli
- Implement layer (snapshot/clone) merge and delete
- Remove 'bool' from the C header
- Fix a very rare flusher stall
- More diagnostics now printed for slow ops in the log
2021-10-19 02:26:37 +03:00
Vitaliy Filippov
38d85da19a
Fix build for older gcc
2021-10-19 02:26:37 +03:00
Vitaliy Filippov
89dcda1fed
Remove "bool" from the C header
2021-10-18 01:49:07 +03:00
Vitaliy Filippov
1526e2055e
Do not crash with RDMA when receiving garbage, free RDMA buffers when connection is closed
2021-10-15 23:56:22 +03:00
Vitaliy Filippov
74cb3911db
Rebase children of the "inverse" child when it is removed, change /index/image/%s keys during metadata ops
2021-09-26 13:41:48 +03:00
Vitaliy Filippov
d5efbbb6b9
Rename commands and add CLI help
2021-09-26 13:14:36 +03:00
Vitaliy Filippov
4319091bd3
Implement "inverse merge" optimisation
2021-09-26 12:59:04 +03:00
Vitaliy Filippov
6d307d5391
Ignore "readonly" flag when merging snapshots
2021-09-26 11:32:42 +03:00
Vitaliy Filippov
065dfef683
Rename vitastor-cmd to vitastor-cli
2021-09-26 00:52:05 +03:00
Vitaliy Filippov
4d6b85fe67
Split one big cmd.cpp into multiple files
2021-09-26 00:48:08 +03:00
Vitaliy Filippov
2dd2f29f46
Move get_inode_cfg to cli_tool_t
2021-09-25 23:36:45 +03:00
Vitaliy Filippov
fc3a1e076a
Fix minor bugs in snapshot removal, check it in tests
2021-09-25 19:30:29 +03:00
Vitaliy Filippov
3a3e168c42
Implement high-level snapshot flatten and remove commands
2021-09-25 01:36:44 +03:00
Vitaliy Filippov
95c55da0ad
Implement merge with CAS
2021-08-01 20:06:05 +03:00
Vitaliy Filippov
5cf1157f16
Return real version on CAS failure
2021-08-01 20:05:19 +03:00
Vitaliy Filippov
acf637950c
Implement layer merge
...
A new command merges multiple snapshot/clone layers into one of them,
so merged layers can be deleted after this procedure
2021-07-31 00:23:30 +03:00
Vitaliy Filippov
a02b02eb04
Use new listing methods in rm_inode
2021-07-20 00:19:34 +03:00
Vitaliy Filippov
7d3d696110
Implement object listing with controllable parallelism in cluster_client
2021-07-20 00:19:34 +03:00
Vitaliy Filippov
712576ca75
Merge pull request #13 from lnsyyj/wip-vitastor-debug
...
fix BLOCKSTORE_DEBUG, error: ‘dirty_it’ was not declared in this scope
2021-07-18 01:25:05 +03:00
Vitaliy Filippov
28bd94d2c2
Make diagnostics slightly better
2021-07-18 01:24:38 +03:00
Vitaliy Filippov
148ff04aa8
Do not lose flusher queue entries when an "older object rescan" happens in parallel with flushing of an older version of another object
2021-07-18 01:20:54 +03:00
JiangYu
e86df4a2a2
fix BLOCKSTORE_DEBUG, error: ‘dirty_it’ was not declared in this scope
...
Signed-off-by: JiangYu <lnsyyj@hotmail.com>
2021-07-18 00:46:05 +08:00
Vitaliy Filippov
e74af9745e
Print journal flusher diagnostics on slow ops
2021-07-17 16:13:41 +03:00
Vitaliy Filippov
0e0509e3da
Dump op states in slow operation log
2021-07-16 01:58:50 +03:00
Vitaliy Filippov
cb282d25e0
Release 0.6.5
...
- Basic support for OpenStack: Cinder driver, patches for Nova and libvirt
- Add missing "image" and "config_path" QEMU options
- Calculate aggregate per-pool statistics in monitor
- Implement writes with Check-And-Set semantics
- Add a C wrapper library with public header
2021-07-10 11:01:21 +03:00
Vitaliy Filippov
b52dd6843a
Rename qemu_rbd_unescape and qemu_rbd_next_tok to *_vitastor_*
2021-07-03 23:14:44 +03:00
Vitaliy Filippov
b66160a7ad
Aggregate per-pool statistics in mon
2021-07-03 23:14:44 +03:00
Vitaliy Filippov
aad7792d3f
Check for loops in parent inode chains
2021-06-20 00:23:03 +03:00
Vitaliy Filippov
6ca8afffe5
Add CAS version parameter to the C wrapper
2021-06-19 01:00:52 +03:00
Vitaliy Filippov
511a89948b
Rework qemu_proxy into a C wrapper library with public header
2021-06-19 00:39:11 +03:00
Vitaliy Filippov
3de553ecd7
Add a test for CAS write operation
2021-06-15 00:12:35 +03:00
Vitaliy Filippov
891250d355
Implement CAS writes
...
From now on, reads will return the server-side object version numbers
and writes and deletes will have an additional "version" parameter
which, if set to a non-zero value, will be atomically compared with
the current version of the object plus 1 and the modification will
fail if it doesn't match.
This feature opens the road to correct online flattening of snapshot
layers and other interesting things.
2021-06-15 00:12:35 +03:00
Vitaliy Filippov
f9fe72d40a
Release 0.6.4
...
- Implement a basic Kubernetes CSI driver
- Minor fixes for vitastor-nbd
- Fix build without RDMA broken in 0.6.3
2021-05-16 01:38:01 +03:00
Vitaliy Filippov
eaac1fc5d1
Log to stderr in etcd_state_client, too
2021-05-16 01:09:25 +03:00
Vitaliy Filippov
57be1923d3
Daemonize NBD_DO_IT process, correctly cleanup unmounted NBD clients
2021-05-16 01:09:25 +03:00
Vitaliy Filippov
c467acc388
Fix /v3 appendage to etcd URLs without /v3
2021-05-15 19:22:24 +03:00
Vitaliy Filippov
bf591ba3ee
Fix nbd module load check
2021-05-15 19:22:24 +03:00
Vitaliy Filippov
699a0fbbc7
Log to stderr instead of stdout in client
2021-05-15 19:22:24 +03:00
Vitaliy Filippov
6b2dd50f27
Fix build without RDMA
2021-05-08 18:20:43 +03:00
Vitaliy Filippov
caf2f3c56f
Release 0.6.3
...
- RDMA support
- Client performance optimisations (4k randread ~120k -> ~180k on 1 core)
- JSON configuration file (/etc/vitastor/vitastor.conf) support
- Bug fixes
2021-05-02 17:47:43 +03:00
Vitaliy Filippov
9174f188b1
Build packages with libibverbs
...
For CentOS 7 it also requires newer rdma-core as CentOS 7's native version doesn't have
implicit ODP support. The updated version is already uploaded into the vitastor repo.
2021-05-02 17:47:16 +03:00
Vitaliy Filippov
d3978c6d0e
Do not print RDMA connection messages when log_level=0
...
By the way, it's 1 by default in the OSD, so these messages will still be there in OSD logs
2021-05-01 00:26:09 +03:00
Vitaliy Filippov
4a7365660d
Do not wait for down OSDs during sync
...
Fixes a hang introduced in 0.5.11 in the non-immediate_commit mode
2021-05-01 00:26:07 +03:00
Vitaliy Filippov
818ae5d61d
Some config parsing fixes
2021-05-01 00:20:01 +03:00
Vitaliy Filippov
f6f35f4127
Pass options correctly to not override /etc/vitastor/vitastor.conf
2021-04-30 01:17:44 +03:00
Vitaliy Filippov
72aa2fd819
Make OSD and client read common configuration from /etc/vitastor/vitastor.conf
2021-04-30 01:11:27 +03:00
Vitaliy Filippov
5010b0dd75
Use json11 instead of blockstore_config_t
2021-04-30 00:52:46 +03:00
Vitaliy Filippov
483c5ab380
Negotiate max_msg instead of max_sge, make buffer settings more conservative :-)
2021-04-29 11:10:35 +03:00