Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [linuxtools-dev] Question about issue with loading an LTTng trace

Hi Aaron,

The exception you get suggests that the trace header was not read successfully (it reports v0.0 instead of v2.6) by the parser loader.

We have an open bug for a similar situation (https://bugs.eclipse.org/bugs/show_bug.cgi?id=315604).

A word of explanation:

To save time, we did not re-implement the LTTV parser libraries in Java but just wrapped the existing C libraries and added a C loader to use the correct lib version to parse a given trace. Today, the Eclipse LTTng supports v2.3, 2.5 and 2.6.

More specifically, a parser loader, liblttvtraceread_loader, reads the trace selected header and determines which of the actual parsers (liblttvtarecread-2.X) to use for that trace.

The tricky part is that liblttvtraceread_loader is a soft link to a liblttvtraceread_loader-2.X. This loader can only recognize v2.X and previous... By compiling the libs in the right order (2.3, 2.5 then 2.6), you ensure that liblttvtraceread_loader soft link points to the correct (latest) loader and that the previous versions are covered as well. (To be precise, it is sufficient to compile v2.6 last to make the scheme work).

The problem you experience seems to indicate that your system's liblttvtraceread_loader is not pointing to liblttvtraceread_loader-2.6 (or higher if/when available) and can't properly parse v2.6 traces, not even the header...

I would suggest that you verify that liblttvtraceread_loader points to liblttvtraceread_loader-2.6 and that liblttvtarecread-2.6 is also present on your system.

Also, on some Linux systems, LD_LIBRARY_PATH is not persistent (for obscure security reasons) and you have to properly set it before launching Eclipse. An easier and more seamless alternative is to use ldconfig but I haven't documented it yet. However, if this was the problem, you would get a different error.

Finally, we have a bug (https://bugs.eclipse.org/bugs/show_bug.cgi?id=315604) about reporting these exceptions in a more user-friendly way. Ironically, the example exception reported was of the same type you just had...

I haven't tried the PPA myself but some of my team members have used it without problem. However, I don't know that the parsing libs are included. I will check and come back to you on this.

Regards,
/fc

BTW, as you might already be aware of, we are working on implementing MCA's Common Trace Format directly in Java and move away from that external parser loading scheme. However, it won't initially provide support for legacy trace formats which will still have to use the current scheme :-(



On Thu, Mar 17, 2011 at 3:16 AM, Aaron Spear <aspear@xxxxxxxxxx> wrote:

Hi guys,

 

I have a question about trace reading libraries and compatible versions.  I have Helios SR2 linuxtools installed, and followed the instructions on the wiki to build the latest snapshots of both the 2.5 and 2.6 trace libraries and installed them.   With the Eclipse viewer I can import and analyze the trace-15316events_nolost_newformat.tar.gz example data that I downloaded from a link in the help with no issue, it looks great.

 

I then followed instructions I found here https://launchpad.net/~lttng/+archive/ppa to install pre-built kernel packages for lttng for an Ubuntu 10.10 32 bit Linux.  I can successfully  dump/analyze traces that I collect using lttv and lttv-gui.   Awesome that this package is available btw, very cool.

 

If however I try to open these traces with the Eclipse viewer I get no visible error that I can discern but see the exception below in the console which spawned eclipse.  Does anyone have any idea what might be wrong?  Incorrect version?  Again, I can successfully load the demo data mentioned about with the viewer, but it appears that this data is 2.5 format from comments that I read.  I am not sure if I can successfully read 2.6 data or not…

 

 If you are interested, you can get the trace at http://www.ontherock.com/trace7.tar.gz

 

Thanks for any guidance,

Aaron

 

--------------------

 

joe@ubuntu:~/tools/eclipse-linuxtools-helios-SR2-incubation-linux-gtk/eclipse$ org.eclipse.linuxtools.lttng.trace.LTTngTraceException:

ERROR : Unrecognized/unsupported trace version.

Library reported a trace version 0.0.

Make sure you installed the Lttv library that support this version (look for liblttvtraceread-0.0.so).

 

                at org.eclipse.linuxtools.lttng.trace.LTTngTrace.<init>(LTTngTrace.java:152)

                at org.eclipse.linuxtools.lttng.trace.LTTngTrace.<init>(LTTngTrace.java:125)

                at org.eclipse.linuxtools.lttng.ui.views.project.ProjectView.selectTrace(ProjectView.java:182)

                at org.eclipse.linuxtools.lttng.ui.views.project.ProjectView.access$2(ProjectView.java:173)

                at org.eclipse.linuxtools.lttng.ui.views.project.ProjectView$3.mouseDoubleClick(ProjectView.java:166)

                at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:189)

                at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)

                at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1258)

                at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3540)

                at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3161)

                at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)

                at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)

                at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)

                at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)

                at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)

                at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)

                at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)

                at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)

                at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)

                at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)

                at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)

                at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)

                at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)

                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:616)

                at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:620)

                at org.eclipse.equinox.launcher.Main.basicRun(Main.java:575)

                at org.eclipse.equinox.launcher.Main.run(Main.java:1408)

--

Aaron Spear   aspear@xxxxxxxxxx

Ecosystems Infrastructure Architect

 VMware

office: 303-679-8457   mobile: 303-946-6516

 


_______________________________________________
linuxtools-dev mailing list
linuxtools-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/linuxtools-dev




--
Francois

Back to the top