Vitaliy Filippov
|
393fe75900
|
Fix creepy (osd_op_t*)(long) casts
|
7 months ago |
Vitaliy Filippov
|
f036eecf1c
|
Fix osd_rmw object recovery case (len==0)
|
7 months ago |
Vitaliy Filippov
|
e56909fb45
|
Remove tv_send (unused) and timerfd_interval from blockstore
|
7 months ago |
Vitaliy Filippov
|
fac75b0b57
|
Handle reweights in mon
|
7 months ago |
Vitaliy Filippov
|
9f842ec9a5
|
Remove connect callback because it is always the same
|
7 months ago |
Vitaliy Filippov
|
f6a01a4819
|
Extract "state-watching" etcd client into a separate file
|
8 months ago |
Vitaliy Filippov
|
6202260018
|
Extract HTTP client functions from osd_t
|
8 months ago |
Vitaliy Filippov
|
a61ede9951
|
Remove io_uring usage from osd_http and timerfd_manager
For better future interoperability with external event loops such as QEMU's one
|
8 months ago |
Vitaliy Filippov
|
f57731f8ca
|
Calculate total stats in the monitor
|
8 months ago |
Vitaliy Filippov
|
19f25c7cd5
|
Handle integer overflow of the op_stat_count
|
8 months ago |
Vitaliy Filippov
|
2c3e84cc41
|
Implement stop_all_pgs()
|
8 months ago |
Vitaliy Filippov
|
7bda66b866
|
Do not crash when optimising PGs in an undersized cluster
|
8 months ago |
Vitaliy Filippov
|
b467d0559f
|
Begin node.js storage monitor service
|
8 months ago |
Vitaliy Filippov
|
c2c2eefea4
|
Duplicate host in osd/state and osd/stats, take PGs from /config/pgs.items
|
8 months ago |
Vitaliy Filippov
|
5084ff7c6c
|
Measure & report recovery op count and bandwidth
|
8 months ago |
Vitaliy Filippov
|
47b6f64106
|
Support level names
|
8 months ago |
Vitaliy Filippov
|
f71d0c117b
|
Measure & report op bandwidth, include local blockstore ops in stats
|
8 months ago |
Vitaliy Filippov
|
2b854948f9
|
Remove dead code
|
8 months ago |
Vitaliy Filippov
|
e7f897ed65
|
Report hostname to etcd
|
8 months ago |
Vitaliy Filippov
|
c26b6e1fc3
|
Support CRUSH-like multi-level placement trees
|
8 months ago |
Vitaliy Filippov
|
aaa054e644
|
Fix optimize_change generating infeasible problems
Mainly happened when removing PG combinations (removing OSDs)
Also randomize OSD combinations when there's a lot of them
Also remove Perl version
|
8 months ago |
Vitaliy Filippov
|
706a44d4d4
|
Fix optimize_initial in both perl and js versions
|
8 months ago |
Vitaliy Filippov
|
842f88f94f
|
Rewrite LPOptimizer.pm to nodejs
|
8 months ago |
Vitaliy Filippov
|
e8149e5848
|
Implement OSD_OP_DELETE
|
8 months ago |
Vitaliy Filippov
|
6355b968f4
|
Track osd_set history and all_peers separately
|
8 months ago |
Vitaliy Filippov
|
00cf24fbd7
|
Split osd_primary.cpp
|
8 months ago |
Vitaliy Filippov
|
1bc08174f9
|
Sync before listing objects so flushes do not fail thereafter
|
8 months ago |
Vitaliy Filippov
|
cd87333091
|
Fix PG state comparison leading to unclean PGs not flushing
(a & b == b) -> ((a & b) == b) !
|
8 months ago |
Vitaliy Filippov
|
bd0fe6e4cc
|
Fix PGs not stopping during sync, fix state reporting autovivification of erased PGs
|
8 months ago |
Vitaliy Filippov
|
ce78454215
|
Reply with -EROFS to write commands in readonly mode
|
8 months ago |
Vitaliy Filippov
|
762bd42096
|
Fix use-after-free caused by "delete this" in handle_read
|
8 months ago |
Vitaliy Filippov
|
7b57eeeeb3
|
Implement PG state locking and PG moving in response to etcd events
|
8 months ago |
Vitaliy Filippov
|
ec4a52af48
|
Fix websocket (and timer!) bugs
|
8 months ago |
Vitaliy Filippov
|
268b497c0b
|
Implement simple websocket client
|
8 months ago |
Vitaliy Filippov
|
35481925b1
|
Implement very simple HTTP streaming to handle etcd watches
|
8 months ago |
Vitaliy Filippov
|
895a80dfc4
|
Fix etcd 3.2 compatibility (no compare.target == LEASE, /kv/lease/revoke), fix small bugs
|
8 months ago |
Vitaliy Filippov
|
caa01c6aaf
|
Acquire etcd leases, prevent starting two OSDs with the same number
|
8 months ago |
Vitaliy Filippov
|
d398ddfd3b
|
Use snake_case for etcd requests
|
8 months ago |
Vitaliy Filippov
|
0f2b8dbf6f
|
Use a single timerfd_manager for all timers
|
8 months ago |
Vitaliy Filippov
|
4f42e9659e
|
Use etcd instead of Consul
|
8 months ago |
Vitaliy Filippov
|
7cf71a8031
|
Fix timerfd_manager: remove timer, then call callback
|
9 months ago |
Vitaliy Filippov
|
9d22559bcf
|
Start peering immediately when loading PGs
|
9 months ago |
Vitaliy Filippov
|
8c03e3ebab
|
Lock Blockstore devices exclusively by default
|
9 months ago |
Vitaliy Filippov
|
2a640ba2e8
|
Remove range port selection (leads to races)
|
9 months ago |
Vitaliy Filippov
|
6a21ea207e
|
Check peer config (at least, number) after connecting
|
9 months ago |
Vitaliy Filippov
|
642802b595
|
Auto-select port numbers
|
9 months ago |
Vitaliy Filippov
|
ff38b464a5
|
Add consul & connect timeouts, report state before loading PGs, move init_primary to osd_cluster
|
9 months ago |
Vitaliy Filippov
|
663153713b
|
Reconnect to peers after connecting drops
|
9 months ago |
Vitaliy Filippov
|
dc57c5c362
|
Report PG states again, clear PG history on reaching active+clean
|
9 months ago |
Vitaliy Filippov
|
f95299b769
|
Take PG history into account when starting PGs
|
9 months ago |