Size: a a a

SDS и Кластерные FS

2020 December 03

МК

Марк ☢️ Коренберг... in SDS и Кластерные FS
Михаил Новоселов
А если на ext4, примонтированной с discard, делать unlink() (rm file), то discard должен моментально сработать?
Скорее всего отложенно
источник

M

Mikhail Gusev in SDS и Кластерные FS
tsla
SOLUTION:
To make this operation atomic, we introduce a ".remove_me" directory.
Now renames and unlinks will simply involve two steps:
1. creating an empty file under .remove_me named after the gfid of the file
participating in unlink/rename
2. carrying out the actual rename/unlink
A synctask is created (more on that in part 2) to scan this directory
after every unlink/rename operation (or upon a volume mount) and clean
up all shards associated with it. All of this happens in the background.
The task takes care to delete the shards associated with the gfid in
.remove_me only if this gfid doesn't exist in backend, ensuring that the
file was successfully renamed/unlinked and its shards can be discarded now
safely.
хм
я думал имеется ввиду что сервер создает их - там много пустых файлов в remove_me создано, имена - gfid "удаленных" файлов
источник

МК

Марк ☢️ Коренберг... in SDS и Кластерные FS
Михаил Новоселов
А если на ext4, примонтированной с discard, делать unlink() (rm file), то discard должен моментально сработать?
Дискарды помойму нельзя сделать ордеред (или в очередь поставить) поэтому каждый дискард это флуш очереди и уже потом дискарж
источник

МК

Марк ☢️ Коренберг... in SDS и Кластерные FS
Тормоза
источник

t

tsla in SDS и Кластерные FS
ага, вижу твоё сообщение
Mikhail Gusev 2020-12-03 16:06:49 UTC
источник

МК

Марк ☢️ Коренберг... in SDS и Кластерные FS
Поэтому опцыю дискарда лучше выклбчить и юзать фстрим по таймеру
источник

МН

Михаил Новоселов... in SDS и Кластерные FS
Марк ☢️ Коренберг
Дискарды помойму нельзя сделать ордеред (или в очередь поставить) поэтому каждый дискард это флуш очереди и уже потом дискарж
в коде есть что-то про моменты, когда, например, долгий трим идет и из-за этого нельзя дискард сделать
источник

МК

Марк ☢️ Коренберг... in SDS и Кластерные FS
Михаил Новоселов
в коде есть что-то про моменты, когда, например, долгий трим идет и из-за этого нельзя дискард сделать
Чивоблять
источник

M

Mikhail Gusev in SDS и Кластерные FS
tsla
ага, вижу твоё сообщение
Mikhail Gusev 2020-12-03 16:06:49 UTC
да, но там уже аккаунтов нет чуваков, которые писали ((
источник

t

tsla in SDS и Кластерные FS
Mikhail Gusev
да, но там уже аккаунтов нет чуваков, которые писали ((
grep -i failed /var/log/glusterfs/<mount point>.log
источник

t

tsla in SDS и Кластерные FS
есть что нить ?
источник

M

Mikhail Gusev in SDS и Кластерные FS
tsla
есть что нить ?
ага, в момент удаления куча сообщений вылезло
E [MSGID: 133021] [shard.c:3761:shard_delete_shards] 0-<volume name>-shard: Failed to clean up shards of gfid 4b5afa49-5446-49e2-a7ba-1b4f2ffadb12 [Stale file handle]
источник

M

Mikhail Gusev in SDS и Кластерные FS
ну и собственно в remove_me пустые файлы с этими gfid, которые зафейлились
источник

M

Mikhail Gusev in SDS и Кластерные FS
ну я как понял для этих случаев remove_me они и придумали
источник

t

tsla in SDS и Кластерные FS
Mikhail Gusev
ага, в момент удаления куча сообщений вылезло
E [MSGID: 133021] [shard.c:3761:shard_delete_shards] 0-<volume name>-shard: Failed to clean up shards of gfid 4b5afa49-5446-49e2-a7ba-1b4f2ffadb12 [Stale file handle]
упс, отвлёкся на клаудфлуд
источник

t

tsla in SDS и Кластерные FS
ll /.shard/.remove_me/ | grep -i 4b5afa49-5446-49e2-a7ba-1b4f2ffadb12
источник

t

tsla in SDS и Кластерные FS
ll /.shard | grep -i "4b5afa49-5446-49e2-a7ba-1b4f2ffadb12"
источник

t

tsla in SDS и Кластерные FS
источник

M

Mikhail Gusev in SDS и Кластерные FS
tsla
ll /.shard | grep -i "4b5afa49-5446-49e2-a7ba-1b4f2ffadb12"
Сек
источник

M

Mikhail Gusev in SDS и Кластерные FS
да - и там и там есть
источник