Доброго времени суток, Коллеги,
Сегодня рассмотрим необычную проблему в системе SAP, связанную с фоновыми процессами. Сложилась ситуация, при которой все запланированные фоновые процессы падали в ошибку.
Попытка проверить лог внутри падающих фоновых процессов ни к чему не привела - логи оказались пустыми. Дампы не генерировались по данной ошибке, влияющих на работу блокировок так же не было обнаружено. Возникло логичное предположение, что один из дисков на сервере оказался переполнен, но данная догадка не нашла своего подтверждения, памяти достаточно.
Первые ошибки были обнаружены в системном логе (SM21) - "Error 28 for write/read access to a file. File = /usr/sap/<SID>/SYS/global/*"
Вернувшись на сервер и выполнив команду df -ih было замечено, что в одной из директории оказались переполнены inode. Inode или I-node или индексный дескриптор - это структура данных, в которой хранятся метаданные файла и перечислены блоки с данными файла.
Для решения данной проблемы было принято решение удалить устаревшие логи фоновых процессов. Удалять эти данные на сервере не рекомендуется, но на помощь приходит стандартная SAP программа RSBTCDEL2:
По итогам проведённой работы, программой было удалено около 260к записей фоновых процессов, и inodes снизились до 70%. Фоновые задание снова начали работать корректно
Использованные источники:
Ошибка 28 - https://wiki.scn.sap.com/wiki/display/ABAP/Error+28+for+write+read+access+to+a+file#:~:text=regarding%20the%20error%3A%20%22F3%20V,free%20space%20on%20the%20device.&text=You%20can%20also%20check%20this,full%20%2D%20what%20do%20I%20do%3F
Подробнее о inodes - https://losst.ru/chto-takoe-inode
Работа с программой RSBTCDEL2 - https://www.guru99.com/how-to-delete-a-background-job.html
Комментарии
Отправить комментарий