Быстрый старт
Развертывание
Моделирование данных
Подключение
Запись данных
Миграция
Запросы
Операции и обслуживание
Типовое обслуживание
Секционирование
Резервное копирование и восстановление
Масштабирование
Зеркалирование
Управление ресурсами
Безопасность
Мониторинг
Настройка производительности
Устранение неполадок
Справочник
Руководство по инструментам
Типы данных
Хранилище данных
Выполняющая система
Потоковая передача
Восстановление после сбоев
Конфигурация
Индексы
Расширения
Справочник по SQL
Часто задаваемые вопросы
В производственных средах временами могут возникать дампы памяти из-за ошибок в программе или других неизвестных причин. Дамп памяти не только приводит к сбоям выполнения запросов, но и может вызвать отказ кластера. Поэтому сгенерированные файлы дампов являются критически важными артефактами для диагностики и должны быть переданы разработчикам для устранения неполадок.
Инструмент packcore упаковывает файлы дампов памяти для отладки и анализа командами разработки.
packcore — это утилита на Python, поставляемая вместе с YMatrix.
Расположение утилиты:
$GPHOME/sbin/packcore
Обратите внимание, что $GPHOME/sbin не добавлен в переменные окружения; поэтому необходимо использовать его абсолютный путь.
Пример использования:
$GPHOME/sbin/packcore -b $GPHOME/bin/postgres postgres.core.4_1635732782.17213
Где:
-b $GPHOME/bin/postgres указывает путь к исполняемому бинарному файлу. Рабочие процессы создаются как дочерние от основного процесса postgres. postgres.core.4_1635732782.17213 — сгенерированный файл дампа.После выполнения команды в текущей директории будет создан сжатый архив (.tgz) с тем же базовым именем, что и файл дампа. Передайте этот архив команде разработки. Он содержит файл дампа и информацию о соответствующей среде выполнения.
Для использования инструмента packcore операционная система должна сначала генерировать файлы дампов памяти.
Включите создание дампов памяти, настроив следующие параметры:
Установите лимит размера дампа памяти как неограниченный:
ulimit -c unlimited
# To make the setting persistent
echo "ulimit -c unlimited" >> /etc/profile
Отредактируйте конфигурацию sysctl:
vi /etc/sysctl.conf
Добавьте в конец файла следующую запись kernel.core_pattern=/home/mxadmin/%e.core.%s_%t.
Примените конфигурацию с помощью:
sysctl -p
Эта настройка определяет расположение и шаблон именования файлов дампов. Шаблон поддерживает следующие заполнители: