Hi Francois (and Francis and Matthew)

Thanks much for looking at it.  Note that I was setting LD_LIBRARY_PATH in the 
shell before launching eclipse (couldn't get it to work at all without that).  
I also did attempt to build the trace reading libs in the right order according 
to the docs, see my install dir below.  I will try installing the standard 
package that Francis mentioned and see if that works.  If this works, then when 
I get some time I will try to actually debug it with the built libraries and 
see what is going wrong.

Thanks!
Aaron

joe@ubuntu:/usr/local/lib$ ls -al
total 1188
drwxr-xr-x  3 root root    4096 2011-03-17 00:28 .
drwxr-xr-x 10 root root    4096 2010-10-07 09:56 ..
-rwxr-xr-x  1 root root  184071 2011-03-17 00:27 liblttvtraceread-2.3.so
-rwxr-xr-x  1 root root  185620 2011-03-17 00:27 liblttvtraceread-2.5.so
-rwxr-xr-x  1 root root  185892 2011-03-17 00:28 liblttvtraceread-2.6.so
-rw-r--r--  1 root root  221628 2011-03-17 00:28 liblttvtraceread.a
-rwxr-xr-x  1 root root    1137 2011-03-17 00:28 liblttvtraceread.la
-rwxr-xr-x  1 root root  100328 2011-03-17 00:27 liblttvtraceread_loader-2.3.so
-rwxr-xr-x  1 root root  100328 2011-03-17 00:27 liblttvtraceread_loader-2.5.so
-rwxr-xr-x  1 root root  100328 2011-03-17 00:28 liblttvtraceread_loader-2.6.so
-rw-r--r--  1 root root  101938 2011-03-17 00:28 liblttvtraceread_loader.a
-rwxr-xr-x  1 root root    1186 2011-03-17 00:28 liblttvtraceread_loader.la
lrwxrwxrwx  1 root root      30 2011-03-17 00:28 liblttvtraceread_loader.so -> 
liblttvtraceread_loader-2.6.so
lrwxrwxrwx  1 root root      23 2011-03-17 00:28 liblttvtraceread.so -> 
liblttvtraceread-2.6.so
drwxrwsr-x  4 root staff   4096 2010-10-07 09:58 python2.6
joe@ubuntu:/usr/local/lib$

From: [email protected] 
[mailto:[email protected]] On Behalf Of Francois Chouinard
Sent: Thursday, March 17, 2011 6:21 AM
To: Linux Tools developer discussions
Subject: 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 
<[email protected]<mailto:[email protected]>> 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<http://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   [email protected]<mailto:[email protected]>
Ecosystems Infrastructure Architect
 VMware
office: 303-679-8457<tel:303-679-8457>   mobile: 303-946-6516<tel:303-946-6516>


_______________________________________________
linuxtools-dev mailing list
[email protected]<mailto:[email protected]>
https://dev.eclipse.org/mailman/listinfo/linuxtools-dev



--
Francois
_______________________________________________
linuxtools-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/linuxtools-dev

Reply via email to