Bug 51872

Summary: dot не генерирует svg для больших графов
Product: Sisyphus Reporter: Антон Мидюков <antohami>
Component: graphvizAssignee: kotopesutility <kotopesutility>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: george, lav, mike
Version: unstable   
Hardware: all   
OS: Linux   
Attachments:
Description Flags
Файл, с которым воспроизводится проблема
none
патч с удалением ограничения количества узлов none

Description Антон Мидюков 2024-10-29 15:23:29 MSK
dot не генерирует svg для больших графов. Замечено при генерации targets.svgz в reports у mkimage-profiles.
Для воспроизведения проблемы прилагаю файл targets.dot. Команда:
dot targets.dot  -v -Tsvgz -o targets.svgz

Ошибка:
Error: deflation finish problem 0 cnt=102

Воспроизводится на версии graphviz 12.1.2-alt1.
Не воспроизводится на версиях graphviz <= 11.0.0-alt2

Не воспроизводится на небольших dot-файлах.
Comment 1 Антон Мидюков 2024-10-29 15:24:27 MSK
На того, кто собирал.
Comment 2 Michael Shigorin 2024-10-30 12:16:29 MSK
(Ответ для Антон Мидюков на комментарий #0)
> Для воспроизведения проблемы прилагаю файл targets.dot.
Приложи всё-таки. :)
Comment 3 Антон Мидюков 2024-10-30 12:28:29 MSK
Created attachment 17082 [details]
Файл, с которым воспроизводится проблема
Comment 4 Антон Мидюков 2024-10-30 12:29:00 MSK
(Ответ для Michael Shigorin на комментарий #2)
> (Ответ для Антон Мидюков на комментарий #0)
> > Для воспроизведения проблемы прилагаю файл targets.dot.
> Приложи всё-таки. :)

При создании бага не приложилось, а я не заметил.
Comment 5 Michael Shigorin 2024-10-30 17:00:48 MSK
Created attachment 17089 [details]
патч с удалением ограничения количества узлов

Эдгар Макаров посмотрел и выяснил, что:

---
У upstream-а в коммите https://gitlab.com/graphviz/graphviz/-/commit/0b9e87d34cdeaa4b813e99a3d3c5c34c9014d061 (experimental code, 2008) был добавлен счётчик вершин и ограничение на 100 вершин. Условие не является необходимым для выхода, так как при итерации через функцию deflate выход из цикла всё равно будет произведён. Патч убирает это ограничение.
---

Прилагаю его %patch -p1.
Comment 6 Repository Robot 2024-11-19 14:56:09 MSK
graphviz-12.1.2-alt2 -> sisyphus:

 Mon Nov 18 2024 Anton Midyukov <antohami@altlinux> 12.1.2-alt2
 - Remove limit of 100 vertices (Closes: 51872) (thanks mike@)