Bug 51872 - dot не генерирует svg для больших графов
Summary: dot не генерирует svg для больших графов
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: graphviz (show other bugs)
Version: unstable
Hardware: all Linux
: P5 normal
Assignee: kotopesutility@altlinux.org
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-10-29 15:23 MSK by Антон Мидюков
Modified: 2024-11-19 14:56 MSK (History)
3 users (show)

See Also:


Attachments
Файл, с которым воспроизводится проблема (12.55 KB, application/msword-template)
2024-10-30 12:28 MSK, Антон Мидюков
no flags Details
патч с удалением ограничения количества узлов (497 bytes, patch)
2024-10-30 17:00 MSK, Michael Shigorin
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
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@)