Журнал Java / openVMS

Я работал над проектом с Java на openVMS. Чтобы получить право на это, моя программа читает файл и вызывает некоторые службы SOAP. Я реализовал log4j, как обычно, и здесь начинается моя проблема. Появляется, когда мой файл журнала открывается моей программой / log4j, на файл устанавливается эксклюзивная блокировка. Мы даже не можем следить за содержимым. Единственный раз, когда вы можете просмотреть файл, это когда процесс завершится. С учетом сказанного, мой вопрос: кто-нибудь делал какие-либо записи в VMS, как это, или мне приходит в голову лучшее решение, на которое я должен обратить внимание.

1 ответ

Решение

Перед запуском приложения, то есть перед командой "Java",

$ DEFINE/USER JAVA$FILE_OPEN_MODE 3
$ DEFINE/USER JAVA$FSYNC_INTERVAL 5

Когда открытый режим 3 гарантирует, что файл является общим (не заблокированным), а 5-секундный интервал обеспечивает обновление EOF. Очевидно, вы можете изменить количество секунд на любое другое полезное значение. Небольшие значения могут снизить общую производительность ввода-вывода. Также имейте в виду, что эти настройки влияют на все файловые операции, выполняемые вашим Java-приложением.

Это работает для 1.5.0-8 (схема нумерации VMS) и должно работать и для других последних версий.

Другие вопросы по тегам