Журнал Java GC заполнен странными символами

У меня проблема на нескольких серверах с журналом GC. Он заполнен этим:

^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@

Отмечено, что это происходит на серверах с большой памятью, предоставленной JVM: -Xms32G -Xmx48G. Это может быть красная селедка, хотя и подумал упомянуть об этом.

Поскольку это приложения с низкой задержкой/высокой пропускной способностью, важно проанализировать журнал. Но вместо этого он наполнен этими персонажами выше.

Мы используем Java 8:

java version "1.8.0_40"
Java(TM) SE Runtime Environment (build 1.8.0_40-b26)
Java HotSpot(TM) 64-Bit Server VM (build 25.40-b25, mixed mode)

Мы используем это для создания журнала:

-verbose:gc
-Xloggc:/path/to/gc.log
-XX:+PrintGCDetails
-XX:+PrintGCDateStamps

Кто-нибудь видел эту проблему раньше? Что может вызвать это?

Ответы

Ответ 1

Если сохраненный текст закодирован с помощью UTF-16, он может добавить "^ @" в обычный текстовый файл. У меня была проблема с открытием некоторых кодированных файлов в системах UNIX.