M
Make. Build. Break. Reflect.
@makebreakreflect1.2K подп.
1.3Kпросмотров
22 февраля 2026 г.
📷 ФотоScore: 1.4K
Ямлоделие О, дивный мир, на работе я узнал об ограничении GitLab на парсинг YAML файла с пайплайном. Проскочила ошибка, уронила всё. Unable to run pipeline gitlab-ci.yml: The parsed YAML is too big Документация привела к https://docs.gitlab.com/administration/instance_limits/#maximum-size-and-depth-of-cicd-configuration-yaml-files Интереса ради спуллил их репу https://gitlab.com/gitlab-org/gitlab Аригато, кстати, что git репозиторий весит всего 2.79 GiB, просто невероятное удобство😊. Затем спросил нейронку сколько памяти/ресурсов экономится при парсинге 2 или 4 мегабайтных файлов и какие причины такого ограничения. Самое интересное - max_yaml_size_bytes это не физический размер файла, а память, выделяемая на объекты при парсинге. То есть 2 MB YAML может жрать больше 2 MB RAM в зависимости от структуры. Зачем вообще лимит? Погуглил, почитал документацию, посмотрел код. - DoS защита один огромный YAML может положить весь Sidekiq (классная архитектура 😀) - OOM превенция память пре-аллоцируется, условно 100 пайплайнов по 100 MB = изда RIP серверу - производительность парсинг гигантских YAML тормозит всех (чужие проекты, пайплайны) - code smell детектор (это я/мы) если у вас 2+ MB YAML, что-то пошло не так в архитектуре Ну штош, значит пора оптимизировать содержимое пайплайнов.😭
1.3K
просмотров
1306
символов
Да
эмодзи
Да
медиа

Другие посты @makebreakreflect

Все посты канала →
Ямлоделие О, дивный мир, на работе я узнал об ограничении Gi — @makebreakreflect | PostSniper