To prevent spam users, you can only post on this forum after registration, which is by invitation. If you want to post on the forum, please send me a mail (h DOT m DOT w DOT verbeek AT tue DOT nl) and I'll send you an invitation in return for an account.

Inductive Visual Miner Exception: invalid dot-structure

Hi,

I am running ProM66 on a Linux/Debian machine. I have an installation at home which works correctly, but the one at work gives me problems.

Whenever I try to use the Inductive Visual Miner, an exception occurs and the plugin does not even start: java.util.concurrent.ExecutionException: java.lang.RuntimeException: the dot-structure given is not valid
I ran dot with the given structure, and it works fine and produces the output I know from the installation at home (i.e. the "wait"-screen).

I re-installed all packages to make sure none of them were corrupted, but the error persists. The package manager shows all Inductive Miner-Plugins and the GraphViz-Plugin as up to date.

Any help is appreciated!

Here is the output from the console where ProM runs:
Start plug-in Inductive visual Miner
[Fatal Error] :1:1: Content is not allowed in prolog.
Error processing svgSalamander:/hoi
Content is not allowed in prolog.
-------- The following exception was logged by the framework:
         The exception was probalby handled properly.
java.util.concurrent.ExecutionException: java.lang.RuntimeException: the dot-structure given is not valid
digraph G {
compound="true";
rankdir="TD";
"e0530b118-260f-41b4-abe3-016e9178fab3" [label="Inductive visual Miner", id="e0530b118-260f-41b4-abe3-016e9178fab3"];
"e24a3a6b5-9c1d-4ebe-95f3-306bf3940033" [label="Mining model...", id="e24a3a6b5-9c1d-4ebe-95f3-306bf3940033"];
}
        at java.util.concurrent.FutureTask.report(FutureTask.java:122)
        at java.util.concurrent.FutureTask.get(FutureTask.java:188)
        at javax.swing.SwingWorker.get(SwingWorker.java:602)
        at org.processmining.framework.plugin.ProMFuture.get(ProMFuture.java:119)
        at org.processmining.framework.plugin.impl.AbstractPluginDescriptor$1.done(AbstractPluginDescriptor.java:185)
        at org.processmining.framework.plugin.ProMFuture$1.done(ProMFuture.java:66)
        at javax.swing.SwingWorker$5.run(SwingWorker.java:737)
        at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.run(SwingWorker.java:832)
        at sun.swing.AccumulativeRunnable.run(AccumulativeRunnable.java:112)
        at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(SwingWorker.java:842)
        at javax.swing.Timer.fireActionPerformed(Timer.java:312)
        at javax.swing.Timer$DoPostEvent.run(Timer.java:244)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:312)
        at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:745)
        at java.awt.EventQueue.access$300(EventQueue.java:103)
        at java.awt.EventQueue$3.run(EventQueue.java:706)
        at java.awt.EventQueue$3.run(EventQueue.java:704)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:715)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
Caused by: java.lang.RuntimeException: the dot-structure given is not valid
digraph G {
compound="true";
rankdir="TD";
"e0530b118-260f-41b4-abe3-016e9178fab3" [label="Inductive visual Miner", id="e0530b118-260f-41b4-abe3-016e9178fab3"];
"e24a3a6b5-9c1d-4ebe-95f3-306bf3940033" [label="Mining model...", id="e24a3a6b5-9c1d-4ebe-95f3-306bf3940033"];
}
        at org.processmining.plugins.graphviz.visualisation.DotPanel.dot2svg(DotPanel.java:448)
        at org.processmining.plugins.graphviz.visualisation.DotPanel.<init>(DotPanel.java:116)
        at org.processmining.plugins.inductiveVisualMiner.InductiveVisualMinerAnimationPanel.<init>(InductiveVisualMinerAnimationPanel.java:70)
        at org.processmining.plugins.inductiveVisualMiner.InductiveVisualMinerPanel.<init>(InductiveVisualMinerPanel.java:317)
        at org.processmining.plugins.inductiveVisualMiner.InductiveVisualMinerPanel.panelPro(InductiveVisualMinerPanel.java:82)
        at org.processmining.plugins.inductiveVisualMiner.InductiveVisualMiner.visualise(InductiveVisualMiner.java:33)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.processmining.framework.plugin.impl.PluginDescriptorImpl.execute(PluginDescriptorImpl.java:260)
        at org.processmining.framework.plugin.impl.AbstractPluginDescriptor$1.doInBackground(AbstractPluginDescriptor.java:147)
        at org.processmining.framework.plugin.ProMFuture$1.doInBackground(ProMFuture.java:56)
        at javax.swing.SwingWorker$1.call(SwingWorker.java:296)
        at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        at javax.swing.SwingWorker.run(SwingWorker.java:335)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
--------------------------------------------------------------


Tagged:

Comments

  • Hi Birgit,

    The message you're getting may be the result of several issues, having in common that somehow the call to Graphviz fails (the dot structure is indeed valid). I'll ask our Linux expert to have a look.

    Which version of Java are you running (specifically: 32 or 64 bit?)

    Kind regards,

    Sander
    Sander Leemans
    Assistant Processor (Lecturer) at Queensland University of Technology
    Author of the visual Miner and Inductive Miner
  • Hi Sander,

    thank you for the quick reply.

    The Java Version is 1.7.0_111 32 Bit OpenJDK.

    Kind regards

    Birgit

  • Hi Birgit,

    We have some ideas of what could be going wrong. We will come back to you soon. In the meantime, you could try to use the Oracle JVM instead of the OpenJDK and see if it changes anything. You can find it here:

    http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

    Kind regards,

    Edu
  • sjjleemanssjjleemans Posts: 65
    edited February 2017
    Hi Birgit,

    I've changed the Inductive visual Miner to improve the error message (pass the Err of Graphviz through). The following step might solve your problem already, or give us further clues where to look:
    - please download the latest nightly build of ProM from https://svn.win.tue.nl/trac/prom/browser/Nightly
    - unzip somewhere
    - run ProM using ProM.sh, and apply the Inductive visual Miner.
    - the console should now give an error message from Graphviz, please post this error message such that we can look into it further.

    Kind regards,

    Sander

    Post edited by sjjleemans on
    Sander Leemans
    Assistant Processor (Lecturer) at Queensland University of Technology
    Author of the visual Miner and Inductive Miner
  • Hi Edu & Sander,
    thanks so much for the quick help.

    I attached the errormessage I get. I checked the folder where the files get copied to, it is all there.

    I will speak to our system admin about installing Oracle JVM.

    Do you think it might be relevant that we also have Graphviz installed separately?

    Kind regards
    Birgit

  • Hi Birgit,

    Could you check if in that system, your regular user account is allowed to execute binary files in the /tmp folder?
    For example, try to execute /tmp/.prom-graphviz/dotBinaries7/linux64/dot in a terminal.

    Cheers,
    Edu
  • Hi Edu,

    my regular user is allowed to execute binary files in the /tmp folder.

    However, when I try to start dot there, I get the following message:
    ./dot: /lib/i386-linux-gnu/i686/cmov/libm.so.6: version `GLIBC_2.15' not found (required by ./dot)

    I checked with ldd --version to see the C-lib versions that are installed. Output is ldd (Debian EGLIBC 2.13-38+deb7u11) 2.13

    But then when we checked the version in the Debian Package Manager it said it was version 2.32

    Do you think this is the problem?

    Thanks,
    Birgit



  • edugonzaedugonza Posts: 7
    Hi Birgit,

    I see that the problem is the version of glibc installed in that machine. The 'dot' binary file used by ProM has been compiled to work on systems with a glibc equal or higher than 2.15. That explains why it works in your Linux machine at home and not in the one at work. One solution to make ProM work in this setting would be either to execute it in a Virtual Machine running a more updated version of Linux, or in a chroot environment with a glibc >= 2.5.

    I hope this helps.

    Kind regards,
    Edu

Sign In or Register to comment.