This website requires JavaScript.
4cf6dceed7
Merge branch 'rel-1.4'
Vitaliy Filippov
2024-02-29 10:33:15 +0300
38b8963330
Release 1.4.8
v1.4.8
rel-1.4
Vitaliy Filippov
2024-02-29 09:58:34 +0300
77167e2920
Do not use \r if output is not a terminal
Vitaliy Filippov
2024-02-28 21:22:19 +0300
5af23672d0
Fix rm/rm-data error return code, add --down-ok option to bypass the error
Vitaliy Filippov
2024-02-28 21:08:25 +0300
6bf1f539a6
Add EIO retry timeout and allow to disable these retries, rename up_wait_retry_interval to client_retry_interval
Vitaliy Filippov
2024-02-28 00:51:13 +0300
4eab26f968
Add documentation and a very basic test for pool management commands
Vitaliy Filippov
2024-02-26 23:47:12 +0300
86243b7101
Rework & fix pool-create / pool-modify / pool-ls
Vitaliy Filippov
2024-02-23 02:41:10 +0300
dc92851322
vitastor-cli: add commands to control pools: pool-create, pool-ls, pool-modify, pool-rm
idelson
2024-02-01 18:44:14 +0300
02d1f16bbd
Add ubuntu jammy build
Zibort Cloud
2024-02-22 10:56:07 +0300
fc413038d1
Wait for blockstore initialisation before starting OSD
Vitaliy Filippov
2024-02-27 02:19:51 +0300
1bc0b5aab3
Fix a rare use-after-free in automatic sync after delete in blockstore
Vitaliy Filippov
2024-02-24 00:06:34 +0300
5e934264cf
Release 1.4.7
v1.4.7
Vitaliy Filippov
2024-02-22 12:18:29 +0300
f20564b44b
Fix 32-bit build warnings (99.9% in printf)
Vitaliy Filippov
2024-02-21 19:05:15 +0300
f20e71b521
Add ubuntu jammy build
#62
Zibort Cloud
2024-02-22 10:56:07 +0300
45490f4e51
Try to catch "data lost during self-heal"
test-fix-ec-unknown-state-51
Vitaliy Filippov
2024-02-21 16:07:54 +0300
b3c15db331
32M journal by default in simple-offsets
Vitaliy Filippov
2024-02-21 15:24:52 +0300
685bcd6ef9
Do not reserve extra space for big_writes during sync - sync itself is needed to commit and clear them
Vitaliy Filippov
2024-02-21 12:59:09 +0300
3eb389b321
Supposed fix for "unexpected state during flush: 0x51" with EC
Vitaliy Filippov
2024-02-20 20:42:49 +0300
3d16cde23c
Fix assertions, add small sequential write test
Vitaliy Filippov
2024-02-20 19:41:48 +0300
c6406d67fc
Fix journal space_check incorrectly checking for space at the beginning
Vitaliy Filippov
2024-02-20 19:40:56 +0300
f87964861d
Release 1.4.6
v1.4.6
Vitaliy Filippov
2024-02-20 17:01:26 +0300
62a4f45160
Raise test_scrub waiting timeout
Vitaliy Filippov
2024-02-20 16:26:09 +0300
7048228678
Supposed fix for "BUG: Attempt to overwrite used offset"
Vitaliy Filippov
2024-02-20 15:23:08 +0300
ea73857450
Add asserts to catch "BUG: Attempt to overwrite used offset"
Vitaliy Filippov
2024-02-20 15:02:38 +0300
6cfe38ec04
Followup to empty cur.oid as stop condition for forced trim fix
Vitaliy Filippov
2024-02-15 23:27:17 +0300
7ae5766fdb
Wait to clear has_degraded in test_heal - should fix flaps of test_heal_* in CI
Vitaliy Filippov
2024-02-16 01:45:27 +0300
f882c7dd87
Release 1.4.5
v1.4.5
Vitaliy Filippov
2024-02-16 10:12:28 +0300
26dd863c8d
Fix sometimes possible crash on clients.at() during pings
Vitaliy Filippov
2024-02-16 00:14:05 +0300
2ae859fbc6
Use min/max_flusher_count=32/256, 128M journal and autosync_writes=512 for non-capacitor SSDs by default
Vitaliy Filippov
2024-02-15 23:37:51 +0300
f6cd9f9153
Add a note about pg_minsize
Vitaliy Filippov
2024-02-15 23:29:23 +0300
8389c0f33b
Fix PGs sometimes hanging in "starting" state on mass OSD restarts
Vitaliy Filippov
2024-02-15 23:27:52 +0300
9db2196aef
Make journal_trim_interval configurable
Vitaliy Filippov
2024-02-15 23:27:37 +0300
8d6ae662fe
Use empty cur.oid as stop condition for forced trim, not journal_trim_counter
Vitaliy Filippov
2024-02-15 23:27:17 +0300
c777a0041a
Release 1.4.4
v1.4.4
Vitaliy Filippov
2024-02-11 16:22:58 +0300
2947ea93e8
Raise test_snapshot_chain_ec timeout to 6 minutes
Vitaliy Filippov
2024-02-11 16:09:53 +0300
978bdc128a
Apply recovery pause before writes, after commits, and do not apply it to syncs to not block EC pools from functioning
Vitaliy Filippov
2024-02-11 12:19:08 +0300
bb2f395f1e
Add cutoff threshold for recovery auto-tuning
Vitaliy Filippov
2024-02-11 12:16:20 +0300
b127da40f7
Add a FIXME about incomplete PGs
Vitaliy Filippov
2024-02-11 02:33:30 +0300
ca34a6047a
Fix dynamic journal space reservation: include the new write itself, too
Vitaliy Filippov
2024-02-11 02:29:41 +0300
38ba76e893
Fix flusher sometimes being unable to trim journal when the flush queue is empty
Vitaliy Filippov
2024-02-11 02:28:38 +0300
1e3c4edea0
Print etcd dbSize instead of dbSizeInUse in status
Vitaliy Filippov
2024-02-11 02:26:37 +0300
e7ac855b07
Fix that EC segfault (1234 -> 5030 partial overwrite)
Vitaliy Filippov
2024-02-10 12:06:39 +0300
c53357ac45
Add a test for EC segfault with partial overwrite in 1234 -> 5030 rebalance scenario
Vitaliy Filippov
2024-02-10 12:06:27 +0300
27e9f244ec
Release 1.4.3
v1.4.3
Vitaliy Filippov
2024-02-09 00:29:31 +0300
8e25a28a08
Ignore down OSDs in monitor statistics aggregation
Vitaliy Filippov
2024-02-08 21:28:03 +0300
5d3317e4f2
Followup to 1.4.2 write stall fix - sadly, the previous version was not working correctly :)
Vitaliy Filippov
2024-02-08 19:34:29 +0300
016115c0d4
Release 1.4.2
v1.4.2
Vitaliy Filippov
2024-02-04 02:23:49 +0300
e026de95d5
Log to systemd by default
Vitaliy Filippov
2024-02-04 01:17:43 +0300
77c10fd1f8
In fact, do not autosync blockstore when autosync_writes=0
Vitaliy Filippov
2024-02-03 20:37:36 +0300
581d02e581
Mark secondary OSDs with deletions as dirty to not forget to sync & autosync them
Vitaliy Filippov
2024-02-03 20:30:42 +0300
f03a9db4d9
Fix OSD space reporting sometimes adding garbage zeros for deleted inodes (causing extra pool/stats etcd keys for deleted pools)
Vitaliy Filippov
2024-02-03 20:26:34 +0300
cb9c30bc31
Sync after sending all deletes to each PG in cli rm-data
Vitaliy Filippov
2024-02-03 20:26:04 +0300
a86a380d20
Fix invalid parsing of autosync_writes in blockstore leading to autosyncs after every operation with disabled immediate_commit :D
Vitaliy Filippov
2024-02-03 20:25:22 +0300
d2b43cb118
Change default etcd_mon_ttl
Vitaliy Filippov
2024-01-29 23:45:07 +0300
cc76e6876b
Fix flapping "scrub" test
Vitaliy Filippov
2024-01-28 14:59:33 +0300
1cec62d25d
Sync only completed writes
Vitaliy Filippov
2023-12-31 00:41:16 +0300
1c322b33ed
Change default up_wait_retry_interval to 50 ms
Vitaliy Filippov
2024-01-26 01:50:54 +0300
d27524f441
Add patch for libvirt 9.10
Vitaliy Filippov
2024-01-25 01:09:12 +0300
ba55f91409
Release 1.4.1
v1.4.1
Vitaliy Filippov
2024-01-18 02:31:42 +0300
80aac39513
Add detailed formula for theoretical EC N+K random write performance
Vitaliy Filippov
2024-01-18 00:36:32 +0300
2aa5aa7ab6
Add a test for simple master switching without PG reconfiguration
Vitaliy Filippov
2024-01-17 00:16:56 +0300
3ca3b8a8d8
Fix recheck_pgs bug introduced in 1.4.0
Vitaliy Filippov
2024-01-16 23:49:21 +0300
2cf649eba6
Fix "partly outside array bounds" warnings for GCC 12 in cpp-btree
Vitaliy Filippov
2024-01-15 03:04:33 +0300
5935640a4a
Add CLA PR form
Vitaliy Filippov
2024-01-14 16:45:18 +0300
d00d4dbac0
Initialize mod_revision field in etcd_state_client
Vitaliy Filippov
2024-01-13 01:29:55 +0300
5d9d6f32a0
Fix common realloc memory leak mistakes found by cppcheck
Vitaliy Filippov
2024-01-13 01:29:22 +0300
5280d1d561
Release 1.4.0
v1.4.0
Vitaliy Filippov
2024-01-12 01:28:25 +0300
317b0feb0a
Add a note about VDUSE daemon auto-restart
Vitaliy Filippov
2024-01-12 01:27:36 +0300
247f0552db
Fix debug log "killing..." in CSI
Vitaliy Filippov
2024-01-10 01:19:18 +0300
a9ef9a86c0
Add update() API to kv_db
kv-update
Vitaliy Filippov
2024-01-05 01:31:29 +0300
25832cb7e4
Fix eviction when random_pos selects the end
Vitaliy Filippov
2023-12-01 01:15:02 +0300
e6326c6539
Implement min/max list_count to make listings during performance test reasonable
Vitaliy Filippov
2023-11-30 01:57:36 +0300
e32f382815
Fix and improve parallel allocation
Vitaliy Filippov
2023-11-29 01:32:09 +0300
fb23d94000
Implement key_prefix for K/V stress test
Vitaliy Filippov
2023-11-28 02:00:04 +0300
ee462c2dad
More fixes
Vitaliy Filippov
2023-11-28 01:00:13 +0300
16e4c767f1
Add logging and one more assert
Vitaliy Filippov
2023-11-28 00:55:17 +0300
9e2b677499
Make get_block() wait for updating when unrelated block is found along the path
Vitaliy Filippov
2023-11-06 02:30:25 +0300
fd57096d2d
Fix a race condition where changed blocks were parsed over existing cached blocks and getting a mix of data
Vitaliy Filippov
2023-11-05 20:00:55 +0300
e5ae907256
Simplify code by removing an unneeded "optimisation"
Vitaliy Filippov
2023-11-05 20:00:13 +0300
64fd6f1c56
Add kv_log_level, print warnings on level 1, trace ops on level 10
Vitaliy Filippov
2023-11-05 19:59:02 +0300
6e76e09d16
Fix duplicate keys in listings on parallel updates -- do not rewind key "iterator position"
Vitaliy Filippov
2023-10-26 02:04:20 +0300
0964aeebd2
Implement key suffix to avoid collisions of multiple test workers
Vitaliy Filippov
2023-10-26 01:03:33 +0300
facff20ca1
Do not complain on empty first block
Vitaliy Filippov
2023-10-25 14:22:03 +0300
16e09745f0
Add JSON output for stress-tester
Vitaliy Filippov
2023-10-25 14:20:18 +0300
442f44a64f
Print total stats
Vitaliy Filippov
2023-10-25 14:06:01 +0300
c67e3d56cb
Do not send more than op_count operations (fix segfault on finish)
Vitaliy Filippov
2023-10-25 13:59:18 +0300
de41e46335
Add some more resiliency to serialize()
Vitaliy Filippov
2023-10-25 13:25:10 +0300
bf9a279ff9
Invalidate blocks being updated too
Vitaliy Filippov
2023-10-25 12:56:22 +0300
b7a41e6394
Change new block allocation method: make each writer choose multiple empty PG blocks and place blocks in them
Vitaliy Filippov
2023-10-24 00:18:33 +0300
4175cb3720
Remove blocks from cache on unsuccessful updates
Vitaliy Filippov
2023-10-23 01:23:20 +0300
3a4b71b0cd
Allow to track multiple updates per block (it should never happen though)
Vitaliy Filippov
2023-10-22 16:56:46 +0300
34969c5919
Do not call stop_updating after failed write_new_block and after clear_block (both delete the item)
Vitaliy Filippov
2023-10-22 16:45:59 +0300
02a8df6586
Track versions of parent blocks and recheck if changed during update
Vitaliy Filippov
2023-10-22 02:00:55 +0300
86c6482cf3
Fix resume_split condition (key_lt can also be "")
Vitaliy Filippov
2023-10-22 00:55:18 +0300
4dd68c543c
Experiment: transform offsets for better sharding
Vitaliy Filippov
2023-10-21 17:39:24 +0300
10ad96c56c
More post-stress-test fixes
Vitaliy Filippov
2023-10-15 02:37:02 +0300
6e451117ce
Print operation statistics
Vitaliy Filippov
2023-10-14 18:55:23 +0300
85f35bdf30
K/V fixes after stress-test :-)
Vitaliy Filippov
2023-10-08 11:01:05 +0300
09adaf62fd
Implement K/V DB stress tester
Vitaliy Filippov
2023-10-07 12:35:14 +0300
af93f8323c
Evict blocks based on memory limit & block usage
Vitaliy Filippov
2023-10-01 12:43:31 +0300