How do I troubleshoot "GraphViz has crashed" with minimal stacktrace?

0 votes
asked Jul 15, 2024 in Question / help by dbatjb
edited Jul 15, 2024

on Windows 10 running Java 21:

java 21.0.2 2024-01-16 LTS
Java(TM) SE Runtime Environment (build 21.0.2+13-LTS-58)
Java HotSpot(TM) 64-Bit Server VM (build 21.0.2+13-LTS-58, mixed mode, sharing)

I installed the latest version of graphviz:

java -jar plantuml.jar -testdot
Dot version: dot - graphviz version 2.44.1 (20200629.0846)
Installation seems OK. File generation OK

and PlantUML:

java -jar plantuml.jar -V
(0.001 - 256 Mo) 249 Mo - SecurityProfile LEGACY
(0.014 - 256 Mo) 249 Mo - PlantUML Version 1.2023.7
(0.014 - 256 Mo) 249 Mo - GraphicsEnvironment.isHeadless() false
(0.016 - 256 Mo) 249 Mo - Found 0 files
No diagram found

All seems fine with the well known test.puml file:

@startuml
enum Foo {
    bar1
    bar2
}
enum FooFoo {
    barbar1
}
@enduml

but when I try a larger puml file (52KB), I receive the dreaded "GraphViz has crashed" with the following stack trace:
 

java -jar plantuml.jar vovo.puml
java.io.IOException: The pipe has been ended
        at java.base/java.io.FileOutputStream.writeBytes(Native Method)
        at java.base/java.io.FileOutputStream.write(FileOutputStream.java:367)
        at java.base/java.io.BufferedOutputStream.implWrite(BufferedOutputStream.java:217)
        at java.base/java.io.BufferedOutputStream.write(BufferedOutputStream.java:200)
        at java.base/java.io.FilterOutputStream.write(FilterOutputStream.java:110)
        at net.sourceforge.plantuml.dot.ProcessRunner$MainThread.startThreads(ProcessRunner.java:181)
        at net.sourceforge.plantuml.dot.ProcessRunner$MainThread.runJob(ProcessRunner.java:121)
        at net.sourceforge.plantuml.api.TimeoutExecutor$MyThread.run(TimeoutExecutor.java:77)

That vovo.puml is proprietary (generated by the `PlantUML Diagram Generator` plugin for Android Studio) and so I cannot post it here.

Instead, I am interested in some debugging or troubleshooting advice in an attempt to see whether it is only a matter of setting, command line option, environment variable, etc.

Thank you

Your answer

Your name to display (optional):
Privacy: Your email address will only be used for sending these notifications.
Anti-spam verification:

[Antispam2 Feature: please please wait 1 or 2 minutes (this message will disappear) before pressing the button otherwise it will fail](--------)
To avoid this verification in future, please log in or register.
...