Commit Graph

594 Commits

Author SHA1 Message Date
Thomas Schoebel-Theuer
aa3f65a1aa main: replace remote_dent_list with mars_global instances 2020-09-17 18:02:27 +02:00
Thomas Schoebel-Theuer
1e5be3d1b9 infra: move dent transfer prototypes to strategy 2020-09-17 18:02:27 +02:00
Thomas Schoebel-Theuer
7d55e6f02a infra: simplifiy dent search logic 2020-09-17 18:02:27 +02:00
Thomas Schoebel-Theuer
47f5de0a09 main: safeguard dent 2020-09-17 18:02:27 +02:00
Thomas Schoebel-Theuer
85b8b1312f infra: safeguard dent parent pointer 2020-09-17 18:02:27 +02:00
Thomas Schoebel-Theuer
423ff91956 infra: better dent hash function 2020-09-17 18:02:15 +02:00
Thomas Schoebel-Theuer
5d1484fc26 infra: safeguard dent list checking 2020-09-15 18:16:07 +02:00
Thomas Schoebel-Theuer
eb6e3dc20d infra: dent order statistics 2020-09-15 18:16:07 +02:00
Thomas Schoebel-Theuer
9e3faf159c infra: better dent statistics 2020-09-15 18:16:07 +02:00
Thomas Schoebel-Theuer
23b8ef7aa7 main: fix race on mars_global 2020-09-15 18:14:50 +02:00
Thomas Schoebel-Theuer
adaecce4c8 infra: safeguard free_mars_global 2020-09-15 18:05:54 +02:00
Thomas Schoebel-Theuer
efbb44cf4b all: earlier rot destruction 2020-09-15 18:05:47 +02:00
Thomas Schoebel-Theuer
f9f2a421b8 infra: safeguard dents at _op_remove 2020-09-15 11:11:49 +02:00
Thomas Schoebel-Theuer
b0f8b3800f main: add d_count for long-lasting references 2020-09-15 11:11:49 +02:00
Thomas Schoebel-Theuer
49b69cd723 main: reduce mars_find_dent searching at make_sync 2020-09-08 11:34:40 +02:00
Thomas Schoebel-Theuer
ab60fbdf4e main: reduce mars_find_dent searching further 2020-09-08 11:34:40 +02:00
Thomas Schoebel-Theuer
963d656f26 main: reduce mars_find_dent searching at switches 2020-09-08 11:34:40 +02:00
Thomas Schoebel-Theuer
1bc326ec4f main: only active peers shall count for usable features 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
1c3468985a infra: increase hash table 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
7f65652f74 infra: better hash distribution 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
3b3801d23a infra: speed up fuzzy hashing algorithm 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
d60326ca42 infra: earlier stop searching in unordered list part 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
b63c7f13cf infra: improved dent debugging 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
7935ac1037 main: remove obsolete variable 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
b9964cd6c6 infra: skip non-member dents and subtrees 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
9828207c62 infra: factor out _reconnect_dent() 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
c575f28fbe infra: fix IOPS and other computations 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
aed4daef78 main: initial symlink update after push 2020-09-01 19:35:10 +02:00
Thomas Schoebel-Theuer
575c4d49b3 main: fix alivelink retrieval for inconsistent updates 2020-09-01 19:34:16 +02:00
Thomas Schoebel-Theuer
166f166f3f main: safeguard parent pointers 2020-08-12 08:56:47 +02:00
Thomas Schoebel-Theuer
bf682f1273 all: minimum link update frequency, default 10s
Otherwise sysadmins might draw the wrong conclusion that something
might be hanging, instead of taking just a long time.
2020-08-12 08:56:29 +02:00
Thomas Schoebel-Theuer
2e5b093657 main: safeguard potential race 2020-08-11 09:17:51 +02:00
Thomas Schoebel-Theuer
aff7bab0cc main: fix race on exceptional secondary repair 2020-08-11 09:17:51 +02:00
Thomas Schoebel-Theuer
71d8a9ecce main: do not report additional connections 2020-08-02 13:21:28 +02:00
Thomas Schoebel-Theuer
769f325f25 main: fix activation of additional connections 2020-08-02 13:21:28 +02:00
Thomas Schoebel-Theuer
bc8ff9048c main: new scalable alivelinks 2020-08-02 12:10:20 +02:00
Thomas Schoebel-Theuer
eb1cb08791 main: fix fetch of dirs 2020-08-02 10:58:03 +02:00
Thomas Schoebel-Theuer
d24c57e50a all: bump features version 2020-08-02 10:56:17 +02:00
Thomas Schoebel-Theuer
3367e483a0 if: reduce fly_count atomic_t statistics 2020-07-31 09:26:20 +02:00
Thomas Schoebel-Theuer
dbc19ad904 main: report last completion stamp 2020-07-31 09:26:20 +02:00
Thomas Schoebel-Theuer
c1df8e7c84 infra: skip any backup subdirectories 2020-07-31 09:26:20 +02:00
Thomas Schoebel-Theuer
fb6ed4aebe main: safeguard delete-resource 2020-07-31 09:26:20 +02:00
Thomas Schoebel-Theuer
3fb3ce9c8e infra: retry creation on -ELOOP 2020-07-31 09:26:20 +02:00
Thomas Schoebel-Theuer
ee4258ccfc main: allow modprobe when uuid is missing 2020-07-31 09:26:20 +02:00
Thomas Schoebel-Theuer
987154052f main: allow exceptional fresh uuid communication 2020-07-31 09:26:19 +02:00
Thomas Schoebel-Theuer
ff79d8b30d main: deny modprobe when /mars is no mountpoint 2020-07-31 09:26:19 +02:00
Thomas Schoebel-Theuer
6d9ffefb84 infra: new helper mars_is_mountpoint() 2020-07-31 09:26:16 +02:00
Thomas Schoebel-Theuer
7467aa9939 infra: allow pushing links to peers 2020-07-24 22:42:46 +02:00
Thomas Schoebel-Theuer
8d9ac84b46 infra: extend cmds with 2 strings 2020-07-20 21:20:47 +02:00
Thomas Schoebel-Theuer
8946873739 infra: new trigger code conventions 2020-07-20 21:20:09 +02:00
Thomas Schoebel-Theuer
1fdb12179d main: only report true replay errors 2020-07-20 09:45:12 +02:00
Thomas Schoebel-Theuer
cc12a051d2 main: allow propagation of foreign device-* 2020-07-16 06:40:40 +02:00
Thomas Schoebel-Theuer
a751ec7c42 infra: fix default tree recursion depth 2020-07-16 06:39:51 +02:00
Thomas Schoebel-Theuer
9c63bf0a38 infra: fix missing get_inode() 2020-07-16 06:39:32 +02:00
Thomas Schoebel-Theuer
229a0836d2 main: improve crash recovery for secondary
Primary and secondary should use the same
correction method.
2020-07-11 19:02:57 +02:00
Thomas Schoebel-Theuer
53090ead3d main: exceptional repair status 2020-07-11 19:02:57 +02:00
Thomas Schoebel-Theuer
bd6604f8ce main: fix race between primary and secondary roles 2020-07-11 19:02:57 +02:00
Thomas Schoebel-Theuer
c31efa006a main: wait until logger fully stopped before starting again 2020-07-11 19:02:57 +02:00
Thomas Schoebel-Theuer
be5e9aa5ae main: fix recovery resync 2020-07-11 19:02:57 +02:00
Thomas Schoebel-Theuer
f6335e4625 main: safeguard more pointers 2020-07-11 19:02:57 +02:00
Thomas Schoebel-Theuer
76e0dfba07 main: better crash debugging 2020-07-11 09:56:33 +02:00
Thomas Schoebel-Theuer
64a915aafb main: fix detach corner case 2020-07-08 22:14:15 +02:00
Thomas Schoebel-Theuer
3afad273fd infra: also send prot level over dents 2020-07-08 22:14:03 +02:00
Thomas Schoebel-Theuer
5071b3d0b2 infra: remember Lamport stamp of remote link tree 2020-07-08 21:09:39 +02:00
Thomas Schoebel-Theuer
8a062ee2db infra: fix io_timeout of copy bricks 2020-07-08 21:09:39 +02:00
Thomas Schoebel-Theuer
ea4fbc1885 all: remove superfluous dealloc tests and clears 2020-07-08 21:00:05 +02:00
Thomas Schoebel-Theuer
92df0da748 infra: fix NULL deref on empty dents 2020-07-05 09:32:23 +02:00
Thomas Schoebel-Theuer
513560af8b infra: strengthen trigger semantics 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
a698f42f24 main: remote trigger when logger stops 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
16b5209a0d main: immediately fetch next logfile 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
6d4ba66d55 infra: remove obsolete show_status() 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
fc33aada95 main: simplify _show_actual 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
29ef7aef12 main: remove deprecated _show_status_all() 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
9bad724f50 infra: power override only for on transition 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
3b87d70162 main: keep bio brick when logger exists 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
e83aab57f7 infra: fix brick power override 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
f9c1c6f536 main: always recover versionlink at primary 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
e98b6692ff main: fix hanging recovery in corner cases 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
de01dc4d66 main: skip sequence checking during recovery 2020-06-30 21:07:09 +02:00
Thomas Schoebel-Theuer
34f3dec11d main: fix logrotate link creation races 2020-06-30 21:07:06 +02:00
Thomas Schoebel-Theuer
d16278bb79 infra: auto-repair illegal link stamps too far in the future 2020-05-29 20:59:16 +02:00
Thomas Schoebel-Theuer
ff4429708e infra: fix mem leak 2020-05-07 11:44:34 +02:00
Thomas Schoebel-Theuer
804e8c901c main: remove some dead code 2020-05-02 22:31:48 +02:00
Thomas Schoebel-Theuer
81ef3c2d77 main: secondary follows damaged primary when possible 2020-05-02 22:31:48 +02:00
Thomas Schoebel-Theuer
a9366c34c4 main: self-correct damaged versionlink at secondary 2020-05-01 11:16:10 +02:00
Thomas Schoebel-Theuer
00474b1307 main: allow versionlink recovery for secondaries 2020-05-01 11:14:44 +02:00
Thomas Schoebel-Theuer
df6a5edaac main: show if error code 2020-04-13 11:24:02 +02:00
Thomas Schoebel-Theuer
0523705eb6 main: report flying requests at if 2020-04-13 11:24:01 +02:00
Thomas Schoebel-Theuer
c2fed92879 main: show rate statistics on if 2020-04-13 11:24:01 +02:00
Thomas Schoebel-Theuer
628c636dff all: distinguish *_ops_* from *_amount_* at limiter 2020-04-13 11:24:01 +02:00
Thomas Schoebel-Theuer
b5209337a9 main: factor out open_count statistics 2020-04-13 11:24:01 +02:00
Thomas Schoebel-Theuer
95883b055c infra: allow transport compression 2020-04-13 11:21:17 +02:00
Thomas Schoebel-Theuer
bcf006ab21 infra: add zlib compression 2020-04-13 11:21:16 +02:00
Thomas Schoebel-Theuer
3d06881801 infra: prepare compressed logfiles 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
375ae7c84b infra: add compression infrastructure 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
2d35812d50 main: allow disabling of digests 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
e938add256 main: compute worst features version in cluster 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
fb719db887 infra: report available features and digests 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
1ebf6852be main: update some links lazily 2020-04-13 10:54:19 +02:00
Thomas Schoebel-Theuer
e78d726a70 infra: allow lazy alivelink updates 2020-04-13 10:54:19 +02:00