Я пытаюсь понять странное поведение на моем сервере. Мы разделяем том btrfs по NFSv4 с серверами приложений. Одно из приложений будет использовать файл журнала в этом экспортированном томе. logrotate будет вращать его, используя copytruncate, так как файл остается открытым в приложении.

На сервере NFS, к которому подключен диск, выполнялись команды "head" и "tail" (все серверы находятся на Google Cloud Platform, в одном регионе). "du" указывает, что файл имеет около 250 МБ.

Следует ли избегать усечения в томах btrfs? Чем можно объяснить такое странное поведение?

1 ответ1

0

Я понял, что вывод первой строки на самом деле был проблемой:

head -1 file.log | wc -c

43297796

По какой-то причине первая строка была длинной двоичной.

time head -1 file.log > /dev/null

на самом деле вернулся в 0.035 с. Я не знаю, что заставило эту строку стать бинарной, но после выяснения этого, загадка была раскрыта.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .