deliverable/tracecompass.git
8 years agodoc: update user guide for importing traces as experiment
Bernd Hufmann [Tue, 8 Mar 2016 20:30:26 +0000 (15:30 -0500)] 
doc: update user guide for importing traces as experiment

Change-Id: Ie3efa0d4c2cf73fc4ef9b8cf07933af95eabf430
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67994
Reviewed-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
8 years agotmf: Use a symbol provider to locate symbols
Robert Kiss [Fri, 26 Feb 2016 16:57:58 +0000 (18:57 +0200)] 
tmf: Use a symbol provider to locate symbols

Contributed symbol provider extension point.
Contributed BasicSymbolProvider to symbol provider extension point.
Switched CallStackView to symbol provider.

Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=487978
Change-Id: Ic40c272c2dbc0074fc170e9ff0d2ee0e9f230559
Signed-off-by: Robert Kiss <robert.kiss@gmail.com>
Reviewed-on: https://git.eclipse.org/r/67442
Reviewed-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Tested-by: Alexandre Montplaisir <alexmonthy@efficios.com>
8 years agotmf.ui: RemoteFetchLogWizardRemotePage replace size()>0 with !isEmpty()
Matthew Khouzam [Fri, 11 Mar 2016 21:03:09 +0000 (16:03 -0500)] 
tmf.ui: RemoteFetchLogWizardRemotePage replace size()>0 with !isEmpty()

Change-Id: Ic689934ff852f2464cd98a710697ffee75d096d6
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/68247
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Reviewed-by: Hudson CI
8 years agocontrol: Add SwtBot tests for importing as experiment
Bernd Hufmann [Thu, 10 Mar 2016 16:12:10 +0000 (11:12 -0500)] 
control: Add SwtBot tests for importing as experiment

The following test cases are added:
- import without experiment
- create experiment when importing a kernel trace
- create experiment during import with experiment name validation

Utility methods are added to SwtBotUtils to create an experiment and
to clear the experiment folder.

Change-Id: I68f7a1e350a87cb98b40389f0f4d2b7bf2f741d5
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/68163
Reviewed-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
8 years agocontrol: Import as experiment only when checkbox is enabled
Bernd Hufmann [Thu, 10 Mar 2016 14:15:22 +0000 (09:15 -0500)] 
control: Import as experiment only when checkbox is enabled

Change-Id: I31d6e0008017a86e9ef8d47861e3083330130a2d
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/68162
Reviewed-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
8 years agotmf: Add SwtBot tests for importing as experiment
Bernd Hufmann [Wed, 9 Mar 2016 19:18:25 +0000 (14:18 -0500)] 
tmf: Add SwtBot tests for importing as experiment

The following test cases are added:
- create experiment when importing from directory
- create experiment when importing from archive
- create experiment during import with experiment name validation

Utility methods are added to SwtBotUtils to create an experiment and
to clear the experiment folder.

Change-Id: I3fc5f83efc811f267cfc31a48c603915c9d74646
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/68083
Reviewed-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
8 years agocommon: Annotate Pattern.compile()
Alexandre Montplaisir [Wed, 9 Mar 2016 23:22:20 +0000 (18:22 -0500)] 
common: Annotate Pattern.compile()

Both variants of this method return a new Pattern object, so it
can be annotated @NonNull.

Remove now-unnecessary checkNotNull() checks where this was called.

Change-Id: Ia6b862f56b1ebc65fe1bdc1b2dcf6875e3afd36e
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/68107
Reviewed-by: Hudson CI
8 years agocommon: Annotate TreeMultimap.create()
Alexandre Montplaisir [Wed, 9 Mar 2016 23:14:53 +0000 (18:14 -0500)] 
common: Annotate TreeMultimap.create()

All variants of this method return a new map, so it can be
annotated @NonNull.

Remove now-unnecessary checkNotNull() checks where this was called.

While at it, rewrote some comparator definitions in more succinct
lambda expressions.

Change-Id: Ic7a78eb38b9cf3fd2b8e79ab385d73c5d4cc2961
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/68106
Reviewed-by: Hudson CI
8 years agocommon: Annotate HashBasedTable.create()
Alexandre Montplaisir [Wed, 9 Mar 2016 23:02:28 +0000 (18:02 -0500)] 
common: Annotate HashBasedTable.create()

All variants of this method return a new table, so it can be
annotated @NonNull.

Remove now-unnecessary checkNotNull() checks where this was called.

Change-Id: I6aca62e89b0fba51fd2b0ad047ae4582b7807ecb
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/68105
Reviewed-by: Hudson CI
8 years agoFix simple Javadoc warnings
Alexandre Montplaisir [Wed, 9 Mar 2016 22:56:55 +0000 (17:56 -0500)] 
Fix simple Javadoc warnings

Change-Id: I4e5189d3c9b788377aac398979260bc2c0907cc4
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/68102

8 years agoos.analysis: Fix default thread state when syscall are not traced
Francis Giraldeau [Wed, 9 Mar 2016 16:44:39 +0000 (11:44 -0500)] 
os.analysis: Fix default thread state when syscall are not traced

The current behavior is to assign sys_clone to a new thread where the parent's
system call is unknown. When system calls are not traced, the sys_clone exit
event does not occurs, and therefore the thread stays in syscall state, which
is incorrect. In fact, a thread should not enter the system call state when no
syscalls are traced.

For this reason, this patch does not speculate about the state of the
parent, and the child inherit whatever value is set for the parent.

Change-Id: Ic4a3ea8cab7d487a8effe3df282e134292ff8ec1
Signed-off-by: Francis Giraldeau <francis.giraldeau@gmail.com>
Reviewed-on: https://git.eclipse.org/r/68076
Reviewed-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
8 years agotmf: Move icon and label text into ITmfProjectModelElement
Alexandre Montplaisir [Fri, 26 Feb 2016 03:37:00 +0000 (22:37 -0500)] 
tmf: Move icon and label text into ITmfProjectModelElement

A series of "else if (instance of ...)" checks is usually better
served by good ol' polymorphism. Move the class-aware logic present
in TmfNavigatorLabelProvider into each class and add corresponding
methods in the interface.

This aligns with the recently-added getStyler() method, which is
defined in the element classes and simply called by the label provider.

Also move everything icon-reading-related to a new class, so that
there is no circular dependencies between TmfNavigatorLabelProvider
and the project element classes.

Change-Id: I0d78dd5342b13272a42b11e7ca0619225e1beed5
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/67694
Reviewed-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agoss: Add common unit tests for state history backends
Patrick Tasse [Wed, 6 Jan 2016 23:38:17 +0000 (18:38 -0500)] 
ss: Add common unit tests for state history backends

Change-Id: I21b08b85dfbe14f5ff99c5459a4cb10006fbb483
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/64391
Reviewed-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
8 years agotmf: Set ITmfTraceWithPreDefinedEvents to @NonNull
Geneviève Bastien [Wed, 9 Mar 2016 02:10:21 +0000 (21:10 -0500)] 
tmf: Set ITmfTraceWithPreDefinedEvents to @NonNull

Somehow the @NonNullByDefault did not account for the generic type in <> so
there were still warnings generated for this method.

Change-Id: I3dcce938001311462c8833c3f61b15511b305dc0
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/68012
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-by: Hudson CI
8 years agoss: Bug 484776: Incorrect end time in HistoryTree
Patrick Tasse [Mon, 11 Jan 2016 16:13:12 +0000 (11:13 -0500)] 
ss: Bug 484776: Incorrect end time in HistoryTree

The ThreadedHistoryTreeBackend now keeps track of its own end time that
includes the end time of any interval that is in the interval queue.
This ensures that the history tree is closed with the correct end time.

The HistoryTree no longer updates its end time when initializing new
empty nodes. This ensures that the end time is never greater than the
real end time.

Change-Id: I8ff41d14f54ec1a33b8e22e81a21871f0cbf7ea0
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/64015
Reviewed-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
8 years agoanalysis: add per-cpu cpu usage to analysis
Matthew Khouzam [Thu, 28 Jan 2016 22:35:43 +0000 (17:35 -0500)] 
analysis: add per-cpu cpu usage to analysis

Query with a set of desired cpus, or an empty set for everything.
This allows the analyses to filter on a per-cpu basis. The cpu
analysis now can be queried as follows:

This example has 4 cpus named, 0 to 3

module.getCpuUsageInRange( {}, tStart, tEnd) will get all cpus.

module.getCpuUsageInRange( {0,1,2,3}, tStart, tEnd) returns the same.

module.getCpuUsageInRange( {0}, tStart, tEnd) will return a subset
of the previous queries, affecting only CPU 0.

Note that this affects the totals too, the total is calculated on the fly.

Change-Id: Ie6a606763f4331aeef06b2916a7f98d9c73fc9d5
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/65418
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Reviewed-by: Hudson CI
8 years agoanalysis.os: introduce cpu and thread signals
Matthew Khouzam [Sat, 30 Jan 2016 02:10:01 +0000 (21:10 -0500)] 
analysis.os: introduce cpu and thread signals

Change-Id: I480c034098f00dc1a6108945458e08911634ac14
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/65594
Reviewed-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
8 years agoanalysis.os: Make the CPU usage state provider use the increment method
Geneviève Bastien [Fri, 19 Feb 2016 16:05:22 +0000 (11:05 -0500)] 
analysis.os: Make the CPU usage state provider use the increment method

Change-Id: If6fed23d4656a7cb233f002e1321ea4d7ac5852f
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/66945
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-by: Hudson CI
8 years agoreleng: Update to test-traces 1.3.0
Alexandre Montplaisir [Fri, 4 Mar 2016 23:15:51 +0000 (18:15 -0500)] 
releng: Update to test-traces 1.3.0

Includes a new LTTng kernel trace with many threads.

Change-Id: Ic99610771b863d7faadc142f192e7c92844754b8
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/67844
Reviewed-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
8 years agoanalysis: introduce ISegmentStoreProvider
Matthew Khouzam [Sat, 30 Jan 2016 02:51:58 +0000 (21:51 -0500)] 
analysis: introduce ISegmentStoreProvider

This is an interface extraction from AbstractSegmentStoreAnalysisModule
that reduces the coupling. Now analyses no longer need to be dependent
on events and event requests to generate segments. This open the door
for segments being generated from other sources, such as, but not
limited
to:

* State systems
* Other segment stores
* Environment variables
* Aspects
* Concepts
* Flat data files.
* ...

Change-Id: If95f97d6d98752414747d262c542200f807539ab
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Signed-off-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/65597
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Reviewed-by: Hudson CI
8 years agolinux.ui: Add CPU entries under Resources View aggregated IRQ entries
Matthew Khouzam [Thu, 3 Mar 2016 21:53:47 +0000 (16:53 -0500)] 
linux.ui: Add CPU entries under Resources View aggregated IRQ entries

This adds CPU entries under the root IRQ entries in the resource view.

They look like this at the moment.

SOFT_IRQ 1 Timer: ------------[rrrrrrr|xx|xxxxx|xx]
......CPU 0     : -------------[rrrrrrrrr|xxxxx]
......CPU 1     : ------------[rrrrrrr|xx]
......CPU 2     : ---------------------[rrrrrrr|xx]

This implements the solution suggested in bug 381497

Change-Id: Ie0c9e9e505d4fb66a39579a0891620373e4d1e00
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67453
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-by: Hudson CI
8 years agoss: Add utility method to increment an attribute by a value
Geneviève Bastien [Fri, 19 Feb 2016 16:03:55 +0000 (11:03 -0500)] 
ss: Add utility method to increment an attribute by a value

This new utility method is useful for analysis who need to increment
values of an attribute by a value that is not 1.

This can replace ITmfStateSystemBuilder#incrementAttribute().

Change-Id: I19037dda4c417d44e8f0aacc017545f921d18ff6
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/66944
Reviewed-by: Hudson CI
8 years agolttng: Help stabilize some TimeGraphs tests
Marc-Andre Laperle [Thu, 18 Feb 2016 05:48:58 +0000 (00:48 -0500)] 
lttng: Help stabilize some TimeGraphs tests

When opening the filter dialog for the Control Flow view, it is possible
that view is not populated yet. When this is the case, the controls in
the dialog are disabled.

To fix this, the test now waits until the "timegraphview is ready".
But it was not sufficient to simply call the existing condition. The
isDirty method of AbstractTimeGraphView does not cover the case where
the view is completely empty and nothing has been scheduled to be drawn
yet (Zoom Thread).

To help with this, the isDirty method was improved to cover more cases.
The time range of the time graph control has to match the window time,
which covers the case that the zoom thread has not started but the view
is about to update itself. There was also a race between the time that
the time range is set on the time graph control and the time that the
zoom thread is created; this was addressed by using the dirty counter to
guard this section.

As a future improvement, the filter dialog could be augmented to handle
the Control Flow view being updated while the dialog is up. This is
beyond the scope of stabilizing the test.

To reproduce this failure before the patch, insert a Thread.sleep(5000)
in ControlFlowView.buildEventList, in the while loop. This will delay
the entry list being built, which will increase the duration of the view
being completely empty and not considered dirty yet.

Change-Id: I94038436608f6e1b384b0f90a43bddd08d3651c6
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/66785
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-by: Hudson CI
8 years agoRevert "Revert "ctf: Fix slow test due to expected timeout""
Marc-Andre Laperle [Thu, 3 Mar 2016 23:25:58 +0000 (18:25 -0500)] 
Revert "Revert "ctf: Fix slow test due to expected timeout""

This reverts commit 1ae81c23b427deeec3266e4755e9122ddcd0cf81.

This almost worked before but it needed to use withMnemonic not
withLabel!

Original message:
The test was looking for a possible checkbox (in 4.6) but when it it was
not there (4.5) it had to wait 50 secs for it to time out. Instead we
can set a very short timeout because it will instantly either be there
or not.

Change-Id: I84f6db70a323611b1adb93c6d9b55801bbeb7444
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67782
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agotmf.core: fix timestamp normalization clamping
Matthew Khouzam [Sun, 28 Feb 2016 14:57:34 +0000 (09:57 -0500)] 
tmf.core: fix timestamp normalization clamping

This patch fixes a behavior issue with timestamps. Offsetting and
normalizing timestamps no longer overflows, nor does it throw
arithmetic exceptions.

This is done by using a saturated add and mult method from TmfTimestamp.
The saturated math should have a negligeable impact on performance.

Change-Id: I8f6fc7fc930586897923bb8510574ec4c4c668b3
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67501
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-by: Hudson CI
8 years agodoc : Remove documentation for 'Import XML analysis'
Jean-Christian Kouame [Mon, 29 Feb 2016 18:56:14 +0000 (13:56 -0500)] 
doc : Remove documentation for 'Import XML analysis'

Change-Id: I72cdfdd7e8219d3cc8bed530685d10ac9a2a0efe
Signed-off-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67566
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-by: Hudson CI
8 years agodoc : Add documentation for XML analyses manager
Jean-Christian Kouame [Mon, 29 Feb 2016 18:47:14 +0000 (13:47 -0500)] 
doc : Add documentation for XML analyses manager

Change-Id: Ie3a603e813ebd94023d4d93fd6a210b96d5af47e
Signed-off-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67565
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-by: Hudson CI
8 years agolinux: introduce execution contexts in resources view
Matthew Khouzam [Mon, 1 Feb 2016 21:51:15 +0000 (16:51 -0500)] 
linux: introduce execution contexts in resources view

The original implementation made sense only one single core systems. An
IRQ and softirq would block the whole system and not just a single core.

This patch adds the notion of execution contexts to the interrupts. The
interrupts are moved under the CPU to show the true execution stack.
Then the model is a much truer representation of the kernel.

In order to maintain aggregate information in the resources view (total
IRQs and such), the notion of AggregateEntries and AggregateIterators
are introduced.

This allows better understanding of the current state of the system as
the resources view now shows what the state of each processor is.

Expect a _SLIGHT_ performance degradation during the building of the
state system as an additional lookup is required for each interrupt
event.

This updates the state system model so the testvalues are updated and
the generator is updated to work again.

Starts to fix bugs: bug 381497 and bug 481855

Change-Id: I2f0f2093344f51caaf08500181cf90400a081f7c
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/65609
Reviewed-by: Hudson CI
8 years agoForce check remote updates when checking for new plugin versions
Marc-Andre Laperle [Thu, 3 Mar 2016 07:27:38 +0000 (02:27 -0500)] 
Force check remote updates when checking for new plugin versions

Without the -U option, the plugin versions could be cached from a
while ago. This partly explains why the Hudson build would not
display the new updates. (Also the proxy settings had to be fixed)

Change-Id: Ib17d14d058b5d8f1894c61448fd3192972630291
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67721
Reviewed-by: Hudson CI
Reviewed-by: Alexandre Montplaisir <alexmonthy@efficios.com>
8 years agostatesystem : Add a default compareTo() for segments
Jean-Christian Kouame [Tue, 1 Mar 2016 17:46:20 +0000 (12:46 -0500)] 
statesystem : Add a default compareTo() for segments

Implements a default compareTo() in ISegment. The comparison will be
based on the start and the end of the segment. Subclasses could extend
this default behaviour if needed.
Also, the interface become Comparable<@NonNull ISegment>.

Change-Id: Ib58e0ba80c0151d127254c8b87eafec57e624566
Signed-off-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67620
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
8 years agorcptt: Update README.md file
Patrick Tasse [Wed, 2 Mar 2016 22:28:00 +0000 (17:28 -0500)] 
rcptt: Update README.md file

Change-Id: If671d62e5dbbb3288e3fa0aa972995dfd88cf9eb
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/67703
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
8 years agoreleng: Update README.md for Maven 3.3
Patrick Tasse [Wed, 2 Mar 2016 22:40:00 +0000 (17:40 -0500)] 
releng: Update README.md for Maven 3.3

Change-Id: I7e8f4e576f002204fa917b08a7ceb99651ee7e74
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/67705
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
8 years agoos.tests: introduce test cases for the kernel analysis module
Geneviève Bastien [Tue, 1 Mar 2016 20:22:01 +0000 (15:22 -0500)] 
os.tests: introduce test cases for the kernel analysis module

It changes the current tests to use this notion of test case that will be used
to add unit tests for kernel analysis.

Change-Id: I1ccf0c68c48507a0948b29100058f0091e1a758b
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/67628
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-by: Hudson CI
8 years agoos.tests: Move aspects to the kernel trace stub
Geneviève Bastien [Tue, 1 Mar 2016 19:47:45 +0000 (14:47 -0500)] 
os.tests: Move aspects to the kernel trace stub

Change-Id: If23a66bb009b6d556c7db7eaa80412a9a5c577f1
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/67626
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-by: Hudson CI
8 years agoos.tests: Add a kernel stub trace class and use that in unit tests
Geneviève Bastien [Tue, 1 Mar 2016 18:36:05 +0000 (13:36 -0500)] 
os.tests: Add a kernel stub trace class and use that in unit tests

This allows to define an event layout for unit tests instead of taking the
default one, which might not permit to test everything.

This is a first step to do exhaustive unit testing of the kernel analysis

Change-Id: I6ecd85c959bf2e4c4c853deda94a0277a1e4610d
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/67623
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-by: Hudson CI
8 years agoanalysis : Rename getResults() to getSegmentStore()
Jean-Christian Kouame [Tue, 23 Feb 2016 23:37:16 +0000 (18:37 -0500)] 
analysis : Rename getResults() to getSegmentStore()

This patch rename getResults to getSegmentStore() in
AbstractSegmentStoreAnalysisModule

Change-Id: I92a0b3a8149db8001c21cbd4e181ba1d37e5e3c2
Signed-off-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67193
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Reviewed-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
8 years agotmf : Move initialization steps of modules into analysisReady() method
Jean-Christian Kouame [Wed, 24 Feb 2016 19:10:33 +0000 (14:10 -0500)] 
tmf : Move initialization steps of modules into analysisReady() method

This method will set the module available and set whether the
initialization succeeded or not.

Change-Id: I6988bfdced259f6b92d318edd09652e3d72e8a5d
Signed-off-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67286
Reviewed-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
8 years agotmf : Make waitForInitialization() return a boolean
Jean-Christian Kouame [Wed, 24 Feb 2016 18:23:08 +0000 (13:23 -0500)] 
tmf : Make waitForInitialization() return a boolean

waitForInitialization() should return a boolean that will indicate
wether the initialization went well or not. If true, there should be
state systems available.

Change-Id: Id9d053322ff86c93dedb8c0897924fa31720ebfe
Signed-off-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67285
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Reviewed-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
8 years agotmf : add waitForInitialization() to ITmfAnalysisModuleWithStateSystem
Jean-Christian Kouame [Mon, 1 Feb 2016 22:15:41 +0000 (17:15 -0500)] 
tmf : add waitForInitialization() to ITmfAnalysisModuleWithStateSystem

Change-Id: Id6fc4792446dbec8e9cabe43ff743a596d23f1c0
Signed-off-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/65749
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Reviewed-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
8 years agotmf: Clean up tmf.ui.project.model
Alexandre Montplaisir [Tue, 23 Feb 2016 23:27:50 +0000 (18:27 -0500)] 
tmf: Clean up tmf.ui.project.model

Cleanup the ITmfProjectModelElement hierarchy:

* Make all fields in the abstract class private, replace accesses with
  the getter methods.
  This also has the advantage of giving us the right type, for elements
  that override for example the getResource() return type.

* Make refreshChildren() abstract, the great majority of the
  implementations should handle it. It's easy to "forget" to override
  a method, while you can't forget an abstract method.

* Remove addChild() and removeChild() from the interface. Ideally
  these should be only called by the owners themselves.

* The "parent.addChild(this)" pattern is quite bad. It muddles the
  ownership, and calls "this" in a constructor, which is bad practice.
  Have the parents add the child to themselves after they create it.

* Implement hasChildren() as a default interface method.

* Have getChildren() return an ImmutableList copy of the original
  list. Callers shouldn't be modifying it!

Change-Id: Ie2e8129bef447ecbdce9add0e8cf9bd28ba36783
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/67387
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-by: Hudson CI
8 years agotmf.all: use ITmfTimestamp#toNanos when possible
Matthew Khouzam [Mon, 22 Feb 2016 20:27:31 +0000 (15:27 -0500)] 
tmf.all: use ITmfTimestamp#toNanos when possible

The new helper replaces a longer line of

timestamp.normalize(0, ITmfTimestamp.NANO_SCALE).getValue()
with
timestamp.toNanos();

It also can run faster as it has a quick exit on a match of
scales, this saves an object allocation.

Change-Id: Ic3c307944082aef38be4525e4c2d3547237b6d88
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67091
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agolinux: make KernelStateProvider handle aggregate prev_states of sched_switch
Matthew Khouzam [Mon, 25 Jan 2016 21:02:31 +0000 (16:02 -0500)] 
linux: make KernelStateProvider handle aggregate prev_states of sched_switch

Use an if statement instead of a switch to check individual bits in the
prev_state bitmask.

fixes bug 486515

An example would be any state of EXIT_TRACE where it is two bits,
EXIT_ZOMBIE and EXIT_DEAD that are active. In the previous implementation
the state would be UNKNOWN, but now it would correctly show DEAD (null).

Change-Id: Ia9372e4d196e3a87a1e902753803a87ecafb3b33
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/65139
Reviewed-by: Hudson CI
Reviewed-by: Francis Giraldeau <francis.giraldeau@gmail.com>
8 years agocontrol: support creating of experiments when importing a trace session
Bernd Hufmann [Tue, 23 Feb 2016 20:00:19 +0000 (15:00 -0500)] 
control: support creating of experiments when importing a trace session

The remote import wizard that is used to import LTTng session has been
updated to to create an experiment using all successfully imported
traces. Unrecognized traces won't be added to the experiment.
Traces that are skipped during the import (name conflict) are not
added to the experiment.

The name of the experiment is by default session root directory or
session name if the session doesn't use the default session path.
The user has the possibility to change the experiment name.

Change-Id: I6a6013511237ceb308fe25bdc42ec342a13ab72d
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67178
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agotmf: Create experiment when importing traces import trace wizard
Bernd Hufmann [Thu, 25 Feb 2016 15:06:02 +0000 (10:06 -0500)] 
tmf: Create experiment when importing traces import trace wizard

Using the standard import wizard it's now possible to create an
experiment using all successfully imported traces. Unrecognized
traces won't be added to the experiment. Traces that are skipped
during the import (name conflict) are not added to the experiment.

The name of the experiment is by default the root folder when importing
from a directory. Or the archive name when importing from archive.
The user has the possibility to change the experiment name.

The option to create an experiment is persisted so that the checkbox
is selected/deselect when reopening the import wizard.

Change-Id: I06b15419ebd90983865c770d7a771bc5d190cc39
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67168
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agocommon.core: Annotate Status#OK_STATUS and Status#CANCEL_STATUS
Matthew Khouzam [Thu, 25 Feb 2016 15:31:42 +0000 (10:31 -0500)] 
common.core: Annotate Status#OK_STATUS and Status#CANCEL_STATUS

The two statuses are assigned to a new value and are final.
This should help remove some checkNotNulls.

Change-Id: Ia42832140b0d5bc33f8eea2b66121e9182e587cd
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67341
Reviewed-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agotmf.core: Introduce ITmfTimestamp#toNanos
Matthew Khouzam [Mon, 22 Feb 2016 19:55:52 +0000 (14:55 -0500)] 
tmf.core: Introduce ITmfTimestamp#toNanos

This method can be used to quickly convert an ITmfTimestamp to a
long using nanoseconds. This should reduce code re-use but also
accelerate the fast path as it saves object creation and avoid
errors in copy pasted code chunks.

Change-Id: I402c419fe2d579cf5e7e07b258665adbf8af8f8b
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67090
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agocommon: Allow null messages in Activator logging helpers
Alexandre Montplaisir [Mon, 22 Feb 2016 22:49:48 +0000 (17:49 -0500)] 
common: Allow null messages in Activator logging helpers

A very common message is e.getMessage(), which is not technically
guaranteed to be non-null, it would depend on the exception.

Allow the log messages to be null, we can convert them to empty
strings as needed.

Change-Id: I34695fd96368837547e8f74841668cb0b5c0c9a8
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/67183
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agotmf: extract operation for creating an experiment
Bernd Hufmann [Fri, 19 Feb 2016 20:46:13 +0000 (15:46 -0500)] 
tmf: extract operation for creating an experiment

This operation can be reused later on.

Change-Id: Ife31591f94656195837e4b788b0b99d16ac77ebf
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67167
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agotmf: extract SelectTracesOperation from SelectTracesWizardPage
Bernd Hufmann [Tue, 23 Feb 2016 11:53:30 +0000 (06:53 -0500)] 
tmf: extract SelectTracesOperation from SelectTracesWizardPage

This is done so that it can be reused later on.

Change-Id: I14118e459827bb8f37fb96aa54090ff08295a23d
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67166
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agolttng: Fix null annotation error on Eclipse 4.5.x
Marc-Andre Laperle [Thu, 25 Feb 2016 18:19:03 +0000 (13:19 -0500)] 
lttng: Fix null annotation error on Eclipse 4.5.x

getAnalysisModuleOfClass returns a Nullable module, this nullable should
be kept all the way to the Optional returned by findFirst. In 4.5.x,
this works correctly and the result of findFirst cannot be assigned to
an Optional<@NonNull>, hence the error. In 4.6, the @Nullable is lost
along the way and the result of findFirst can be assigned without error
to an Optional<@NonNull>.

Change-Id: If544f9372e2132f5796074f197a7ae01679fe1da
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67355
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agocommon: Annotate Guava's ImmutableMultimap.of()
Alexandre Montplaisir [Mon, 22 Feb 2016 22:31:21 +0000 (17:31 -0500)] 
common: Annotate Guava's ImmutableMultimap.of()

All variants of the .of() method return a new multimap, so they
are necessarily @NonNull.

The parameters can also be marked @NonNull, because the map
doesn't support null keys or values, just like ImmutableMap.

Change-Id: I959449e609fe44b6571cca861ee40168583eb4f6
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/67182
Reviewed-by: Hudson CI
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
8 years agocommon: Annotate (Guava) Ordering.compound()
Alexandre Montplaisir [Tue, 23 Feb 2016 21:54:53 +0000 (16:54 -0500)] 
common: Annotate (Guava) Ordering.compound()

Ordering.compound() creates a new CompoundOrdering, so if it
does return it will return a @NonNull value.

Change-Id: I39579bc4dc3373f882c769e7ae7ad6f89f1054c7
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/67188
Reviewed-by: Hudson CI
8 years agoanalysis.timing: Add missing @Nullable annotations
Alexandre Montplaisir [Tue, 23 Feb 2016 21:38:03 +0000 (16:38 -0500)] 
analysis.timing: Add missing @Nullable annotations

The updateTableModel() method supports null parameters, we just need
to add missing @Nullable annotations to fix a compilation warning.

Also annotate CompletableFuture.supplyAsync() methods, they return
a new CompletableFuture, so its return can be @NonNull.

Change-Id: Ieef346b03d0e676c19c4f8cea3568870fc852e37
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/67187
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agotmf: fix regression in trace type detection
Bernd Hufmann [Thu, 25 Feb 2016 16:04:32 +0000 (11:04 -0500)] 
tmf: fix regression in trace type detection

Patch 281def4 moved the trace type detection to tmf.core. With this
change the traces that validate with confidence 0 for more than one
trace type will have a trace type set that is first in the list.
Before previous patch the trace type was not set if the confidence
was 0.

Change-Id: I2fb3dbd933ae673ce54569356f190c19a7d72d49
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/67346
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-by: Hudson CI
8 years agotmf: Register CallStackView contextMenu
Robert Kiss [Mon, 22 Feb 2016 09:45:42 +0000 (11:45 +0200)] 
tmf: Register CallStackView contextMenu

Register the CallStackView/TreeViewer/contextMenu to allow contribution
to it from extension points.

Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=488120
Change-Id: I65fddedf968bd1a9c621e588dc77426ace67f485
Signed-off-by: Robert Kiss <robert.kiss@gmail.com>
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/67032
Reviewed-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
8 years agoanalysis: use a null backend for the kernel analysis benchmark
Geneviève Bastien [Thu, 18 Feb 2016 16:51:50 +0000 (11:51 -0500)] 
analysis: use a null backend for the kernel analysis benchmark

This adds a benchmark that does not save the state system to disk. It
allows to benchmark only the analysis (and the reading of the events).

Change-Id: I271064111a4c55cf3010c66b3c9c6998d2444a27
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/66853
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-by: Hudson CI
8 years agocommon: Annotate some methods in Guava Iterators
Alexandre Montplaisir [Mon, 22 Feb 2016 22:22:44 +0000 (17:22 -0500)] 
common: Annotate some methods in Guava Iterators

The various versions of the following methods:

Iterators.cycle()
Iterators.concat()

always return a new iterator, and as such can be marked @NonNull.

Change-Id: I4e766ebbe5035d5dac6d59218c1a29b626e54ea5
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/67181
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agocommon: Annotate Integer.toString()
Matthew Khouzam [Tue, 9 Feb 2016 15:47:59 +0000 (10:47 -0500)] 
common: Annotate Integer.toString()

All variants of Integer.toString() return a new, real String.
It can be marked @NonNull.

Change-Id: I15633360b831087f7216d00588fec09f0dfcfdd0
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/66209
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agotmf.ui: make timechart select the right time range when being opened
Matthew Khouzam [Mon, 22 Feb 2016 19:47:54 +0000 (14:47 -0500)] 
tmf.ui: make timechart select the right time range when being opened

The timechart now shows the window range if opened after a trace is opened

Change-Id: I743303ca674d5a51e1cc6f7719657a43320422c7
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/46287
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agotmf: Bug 488042: TmfStatisticsModule returns null in @NonNull interface
Patrick Tasse [Thu, 18 Feb 2016 16:29:14 +0000 (11:29 -0500)] 
tmf: Bug 488042: TmfStatisticsModule returns null in @NonNull interface

Change-Id: I65f1d5fb0176b57182abdd01a4e7f3e533097812
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/66850
Reviewed-by: Hudson CI
Reviewed-by: Alexandre Montplaisir <alexmonthy@efficios.com>
8 years agoss: Fix typo in package name
Alexandre Montplaisir [Mon, 22 Feb 2016 22:02:46 +0000 (17:02 -0500)] 
ss: Fix typo in package name

Change-Id: If3db5852ec370597613b6d4825e0ce95e9f82fbd
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/67100
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agocommon: Annotate Optional.get() as @NonNull
Alexandre Montplaisir [Mon, 22 Feb 2016 21:41:14 +0000 (16:41 -0500)] 
common: Annotate Optional.get() as @NonNull

Optional.get() throws an exception if the value is null, so if the
method returns the value is necessarily @NonNull.

Change-Id: I25cea786763b567b8f7cafcb5a4119f0d359a48b
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/67099
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agotmf: move trace type detection utility to tmf.core
Bernd Hufmann [Fri, 12 Feb 2016 15:52:04 +0000 (10:52 -0500)] 
tmf: move trace type detection utility to tmf.core

and have the UI utility call this method. But doing this the trace
type detection can be run independently from the UI.

Change-Id: I6ec3043791647773a7768f4117f1dcdef2211e32
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/66530
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agostatesystem: Fix a condition to get the average node usage
Geneviève Bastien [Fri, 19 Feb 2016 16:58:33 +0000 (11:58 -0500)] 
statesystem: Fix a condition to get the average node usage

Change-Id: Ib52dac782e49a17c13e5105043d09feec93ce228
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/66947
Reviewed-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-by: Alexandre Montplaisir <alexmonthy@efficios.com>
8 years agotmf: Add collapse, expand and hide category buttons on marker axis
Patrick Tasse [Tue, 16 Feb 2016 19:52:46 +0000 (14:52 -0500)] 
tmf: Add collapse, expand and hide category buttons on marker axis

Change-Id: If5b6552e8dd350ee0b1655643c8fa5153244ede6
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/66777
Reviewed-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
8 years agotmf: Preserve order of marker categories
Patrick Tasse [Fri, 12 Feb 2016 23:15:32 +0000 (18:15 -0500)] 
tmf: Preserve order of marker categories

Some marker event sources can have a logical order to the list of marker
categories they return in IMarkerEventSource.getMarkerCategories(). This
order should be preserved, so the categories should not be sorted
alphabetically.

Change-Id: I0423b391271fdd0803aba6bd357d7482938aad4b
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/66541
Reviewed-by: Hudson CI
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
8 years agotmf: Add time graph marker axis for marker labels
Patrick Tasse [Thu, 11 Feb 2016 00:07:39 +0000 (19:07 -0500)] 
tmf: Add time graph marker axis for marker labels

The marker labels are moved from the time graph scale to this bottom
axis.

There is one row of markers per marker category. Only the visible
categories with at least one computed marker are shown.

Clicking on a marker label sets the time selection to its time or range.

Mouse wheel over the marker axis can be used to zoom horizontally.

Change-Id: I7caf8168abd27fa9dac9e4729a4c1303775a81e6
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/66355
Reviewed-by: Hudson CI
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
8 years agolttng: Add irq_softirq_raise to lttng 2.7 layout
Matthew Khouzam [Thu, 18 Feb 2016 22:39:52 +0000 (17:39 -0500)] 
lttng: Add irq_softirq_raise to lttng 2.7 layout

This patch adds the definition for soft irq raises.

When LTTng 2.7 came out, it renamed softirq raise, entry and exit
events. That patch[1] was tested using the critical path analysis which
does not look up the raise event, only entry and exit. The only view
that shows raised states is the resources view, This patch fixes the
regression on that patch. Testing is only done with an LTTng 2.0 trace
therefore it fell through the cracks on that side too.

[1] e8e9291 lttng: additions definitions for lttng 2.7 and 2.8

Change-Id: Ibd9902d57a8dfb908153df257650235f369a48e0
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/66877
Reviewed-by: Hudson CI
8 years agocontrol: Bug 487847: Fix intermittent failure of ControlViewProfileTest
Bernd Hufmann [Fri, 19 Feb 2016 16:01:43 +0000 (11:01 -0500)] 
control: Bug 487847: Fix intermittent failure of ControlViewProfileTest

On Hudson multiple instances of this test can run at the same time.
The test reads and writes to the same directory for lttng profiles.
This is not the problem. The problem is that all instances use the same
file name which is derived from the LTTng session. To fix this, each
instance needs to generate session different session names. In the
implementation the method System.nanoTime() is used for that.

Since the test uses a LTTng Tools stub where the input and output of a
command are read from a testfile the session name must not be hardcoded
in the file. The stub was update so that it's possible to inject a
session name.

Change-Id: Idab89827e4ba5e2670d3ee947a1406a5a6dd78ed
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/66943
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agolttng: Fix intermittent failure in MemoryUsageViewTest
Marc-Andre Laperle [Thu, 18 Feb 2016 21:01:33 +0000 (16:01 -0500)] 
lttng: Fix intermittent failure in MemoryUsageViewTest

It's possible that the series are not there yet after the jobs running.
This is because of an asyncExec in the view code.
To reproduce the issue, in TmfCommonXLineChartViewer.updateDisplay,
change the asyncExec to a timerExec(5000, ...)

We can use a waitUntil to wait until the series are there.

Change-Id: Ic70d3adbec88578c155b53a4f42e51c568180511
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/66865
Reviewed-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
8 years agotmf: Fix TestRefreshTextTrace failure because of bad time zone reset
Marc-Andre Laperle [Tue, 16 Feb 2016 22:36:01 +0000 (17:36 -0500)] 
tmf: Fix TestRefreshTextTrace failure because of bad time zone reset

Commit 6941941dae56 (https://git.eclipse.org/r/#/c/66579/)
changed tests to set explicitly a time zone but it doesn't
reset it properly. Because of this, TestRefreshTextTrace had
mismatching time stamps.

This can reproduced by running FilterViewerTest first then
running TestRefreshTextTrace. The easiest way is to modify
SWTBotStressTests to have this:

s.addTest(new JUnit4TestAdapter(FilterViewerTest.class));
s.addTest(new JUnit4TestAdapter(TestRefreshTextTrace.class));

To fix it, we reset the time zone to the time zone id, not the label.
The safest way to do this is to use what we decided to use in the
default preference map.

Change-Id: I9b25e2c3a458cee62b74cfde61043270b62b1c01
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/66723
Reviewed-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
8 years agotmf: Add periodic marker event source
Patrick Tasse [Fri, 13 Nov 2015 19:59:48 +0000 (14:59 -0500)] 
tmf: Add periodic marker event source

Change-Id: Ie33c0c9ef0aaaab6ea396276bda4778ad277f854
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/60370
Reviewed-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
8 years agotmf: Annotate list elements as @NonNull in IMarkerEventSource
Patrick Tasse [Thu, 18 Feb 2016 15:49:02 +0000 (10:49 -0500)] 
tmf: Annotate list elements as @NonNull in IMarkerEventSource

Change-Id: I83946811d96c2d1e30869086ae83ccdeda45597c
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/66828
Reviewed-by: Hudson CI
Reviewed-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
8 years agodoc: Drop the specific requirement on Ant 1.8.1
Alexandre Montplaisir [Thu, 18 Feb 2016 00:49:10 +0000 (19:49 -0500)] 
doc: Drop the specific requirement on Ant 1.8.1

We now use maven-antrun-plugin 1.8, which pulls in Ant 1.9.4, so
we should not need to override the dependency version anymore.

Change-Id: Ib2cec2e7f62a1a7a3aae21f87693fa1d4b6ba87f
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/66781
Reviewed-by: Hudson CI
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
8 years agodoc: Add explicit dependency on mylyn.wikitext.core.ant
Alexandre Montplaisir [Wed, 17 Feb 2016 22:51:41 +0000 (17:51 -0500)] 
doc: Add explicit dependency on mylyn.wikitext.core.ant

With recent versions of Mylyn Wikitext, it seems the
"org.eclipse.mylyn.wikitext.core.ant" bundle (which contains the Ant
task definitions) is not depended on by
"org.eclipse.mylyn.wikitext.core" anymore, so it does not end up
on Maven's compile classpath, and is not available for the Ant scripts.

Rectify this by adding an explicit dependency to it in the doc/ plugins.

Note that this is a compile-time dependency only, not a runtime one,
so we specify it in the build.properties file.

This should fix a current build failure with the staging target.

Change-Id: I358da1ed51754c3b355cb5e7f9a2d92e0e65f2a6
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/66773
Reviewed-by: Hudson CI
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
8 years agoSimple RCPTT test for opening a single trace and integrate to build
Jonathan Rajotte [Wed, 2 Dec 2015 21:04:29 +0000 (16:04 -0500)] 
Simple RCPTT test for opening a single trace and integrate to build

This commit act as a foundation for RCP testing via the RCP Testing
Tools[1].

More information can be found in "README.md".

[1] https://www.eclipse.org/rcptt/

Change-Id: Ia59dccc9d1eda38c84c88b89fc26d5da052d3007
Signed-off-by: Jonathan Rajotte <jonathan.rajotte-julien@efficios.com>
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/61810
Reviewed-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
8 years agoanalysis: Add JUnits for control flow entry comparators
Bernd Hufmann [Mon, 8 Feb 2016 14:22:31 +0000 (09:22 -0500)] 
analysis: Add JUnits for control flow entry comparators

Change-Id: I5c6df522c04b1fb422140599d5d99e34f354993b
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/66350
Reviewed-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
8 years agotmf : Add test suite for the pattern segment builder
Jean-Christian Kouame [Wed, 16 Dec 2015 21:19:20 +0000 (16:19 -0500)] 
tmf : Add test suite for the pattern segment builder

Change-Id: I2ff10d945ce398c943d25a795925a4fc37b0f7b5
Signed-off-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/62874
Reviewed-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
8 years agotmf : Introduce pattern segment and pattern segment builder
Jean-Christian Kouame [Wed, 16 Dec 2015 16:29:10 +0000 (11:29 -0500)] 
tmf : Introduce pattern segment and pattern segment builder

The pattern segments are generated using an XML description. They will
be generated by the XML pattern matching analysis and could be used to
feed views such as the timing analysis views.

Change-Id: I366cf8fa4344c05e0067a61dd1e0f720b18d51a3
Signed-off-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/62873
Reviewed-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
8 years agotmf: Add properties to the state system analyses
Geneviève Bastien [Wed, 27 Jan 2016 04:17:27 +0000 (23:17 -0500)] 
tmf: Add properties to the state system analyses

Change-Id: I91b9a583fd269c1f8d2de72dc517dce2ab2cf2d8
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/65228
Reviewed-by: Hudson CI
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
8 years agotmf: Add XML analysis helper properties
Geneviève Bastien [Wed, 27 Jan 2016 03:36:22 +0000 (22:36 -0500)] 
tmf: Add XML analysis helper properties

Change-Id: I35eeb288a97071930c01dedd449a54161512032b
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/65227
Reviewed-by: Hudson CI
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
8 years agotmf: Set redraw false also for when refreshing the CFV
Bernd Hufmann [Wed, 10 Feb 2016 18:50:20 +0000 (13:50 -0500)] 
tmf: Set redraw false also for when refreshing the CFV

This avoids a flickering in Windows.

Change-Id: I28732f4a11e87a6e25b77e9cc7c056b5e991c2c6
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/66337
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-by: Hudson CI
8 years agotmf: bug 486053 Add the possibility for analyses to provide properties
Geneviève Bastien [Wed, 27 Jan 2016 03:17:14 +0000 (22:17 -0500)] 
tmf: bug 486053 Add the possibility for analyses to provide properties

Change-Id: I29058e50f71509c214f7d2a11cede4ca89b5a93c
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/65226
Reviewed-by: Hudson CI
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
8 years agoanalysis: Update CpuUsageView to use new TmfChartView API
Bernd Hufmann [Mon, 15 Feb 2016 19:10:21 +0000 (14:10 -0500)] 
analysis: Update CpuUsageView to use new TmfChartView API

Also add some null annotations and checks.

Change-Id: I73f962d19f34fe1e2eb485c5418b7c1458c7b4d6
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/66641
Reviewed-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
8 years agoNew method for specifying left child composite in TmfChartView
Samuel Gagnon [Sun, 14 Feb 2016 20:24:25 +0000 (15:24 -0500)] 
New method for specifying left child composite in TmfChartView

TmfChartView creates an empty composite to fill space at the
left of its graph. This commit adds a new method to allow classes
that extend the TmfChartView to create a TmfViewer to replace the
default empty composite.

Change-Id: Ie603e1cbabc27d9dc95389489d0bc2e401971a1d
Signed-off-by: Samuel Gagnon <samuel.gagnon92@gmail.com>
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/66571
Reviewed-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
8 years agotmf.ui: only start zooming if we are in the time graph area of a time graph.
Matthew Khouzam [Mon, 15 Feb 2016 19:48:10 +0000 (14:48 -0500)] 
tmf.ui: only start zooming if we are in the time graph area of a time graph.

Ignore zoom operations in the "namespace" area.

Change-Id: Ib9398cce255112a598e02e8e3c01002b10548c61
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/66650
Reviewed-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
8 years agotmf: Fix some tests not working in different time zones
Marc-Andre Laperle [Sat, 13 Feb 2016 15:23:01 +0000 (16:23 +0100)] 
tmf: Fix some tests not working in different time zones

Also print the timezone at the start of test to help troubleshoot
if it happens on a server.

Change-Id: I4cd10054f4c767a4089e17447089e401ade19b6e
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/66579
Reviewed-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
8 years agotmf: Close Sequence Diagram view after tests
Marc-Andre Laperle [Sat, 13 Feb 2016 11:12:20 +0000 (12:12 +0100)] 
tmf: Close Sequence Diagram view after tests

If the test ran first then the perspective checker test second,
the perspective test failed.

Change-Id: Ia9c07855a8aca5a7a7f4e8960736b1e64c6b1e95
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/66578
Reviewed-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
8 years agoss: Bug 486689: Add methods for getting an optional attribute quark
Patrick Tasse [Wed, 27 Jan 2016 22:15:24 +0000 (17:15 -0500)] 
ss: Bug 486689: Add methods for getting an optional attribute quark

Change AttributeTree.getQuarkDontAdd() to return -1 instead of throwing
an AttributeNotFoundException.

Add methods optQuarkAbsolute() and optQuarkRelative() to the
ITmfStateSystem API.

Define and use quark constants ROOT_ATTRIBUTE and INVALID_ATTRIBUTE.

Use the new methods in the implementation of StateSystem.getQuarks().

Change-Id: I9f28e8aa8f3ba7377bebf8a5e8042ae7675aecab
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/65328
Reviewed-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
8 years agoanalysis.graph: Fix getHead() to return the earliest vertex
Geneviève Bastien [Thu, 11 Feb 2016 17:39:24 +0000 (12:39 -0500)] 
analysis.graph: Fix getHead() to return the earliest vertex

Instead of returning the first vertex of the first element, make sure it
returns the earliest vertex.

Change-Id: I4c29fa02f97128ca80e8510560c8ae5512f3d72c
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/66418
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
8 years agoanalysis.os: add more complete tests to the CPU usage analysis
Geneviève Bastien [Wed, 10 Feb 2016 21:10:12 +0000 (16:10 -0500)] 
analysis.os: add more complete tests to the CPU usage analysis

It uses the state system unit test utility methods to allow more
complete testing of the CPU usage analysis resulting state system.

Change-Id: Ic31c7ff94e42c51862a1cafdc77e2d9f053b9c04
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/66404
Reviewed-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
8 years agostatesystem: Add utility methods to help unit test state systems
Geneviève Bastien [Tue, 2 Feb 2016 20:21:42 +0000 (15:21 -0500)] 
statesystem: Add utility methods to help unit test state systems

These methods and classes can be used to easily unit test the intervals
for an attribute for the duration of the tree, or the values of many attributes
at a given timestamp.

Change-Id: I3eb9fc8bdc1d2ba8a388c9e0f979b506a60e3ae1
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/66403
Reviewed-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Reviewed-by: Alexandre Montplaisir <alexmonthy@efficios.com>
8 years agotmf : Fix potential null pointer dereference in XmlUtils
Jean-Christian Kouame [Wed, 10 Feb 2016 20:37:12 +0000 (15:37 -0500)] 
tmf : Fix potential null pointer dereference in XmlUtils

There is a possible null pointer exception that would have happened if
I/O errors occur.

Change-Id: I89bde3aaf4d82c71fb46fe6b4e9720603ad481bf
Signed-off-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/66347
Reviewed-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
8 years agotmf: Ignore xml analysis files not having xml file extension
Bernd Hufmann [Tue, 9 Feb 2016 18:46:37 +0000 (13:46 -0500)] 
tmf: Ignore xml analysis files not having xml file extension

Change-Id: If9261146b9fd8d03cb9cbd66e12a166f130b17b4
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/66240
Reviewed-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
Reviewed-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
8 years agoanalysis.timing: make AbstractSegmentStoreAnalysisModule more generic
Matthew Khouzam [Fri, 29 Jan 2016 22:48:51 +0000 (17:48 -0500)] 
analysis.timing: make AbstractSegmentStoreAnalysisModule more generic

No longer expect a file, so in memory analyses are supported.
No longer refer to its segment store as syscalls.

Change-Id: I029c1e77b9a107836d27288936b94d73e00c65fb
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/65502
Reviewed-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
8 years agoanalysis: Bug 487388: Fix intermittent SWTBot test failure
Bernd Hufmann [Mon, 8 Feb 2016 14:35:13 +0000 (09:35 -0500)] 
analysis: Bug 487388: Fix intermittent SWTBot test failure

The intermittent failure is due to the issue with the process having
the wrong parent which patch tried to fix:
https://git.eclipse.org/r/#/c/65024/

In the filter dialog the number of processes checked varies due the
issue above. So, when checking the value it might fail from time to
time. However, this is irrelevant to this test class and doesn't need
to be verified. The Filter dialog is tested elsewhere and doesn't need
to be verified in this test (see ControlFlowViewTest).

Change-Id: Ib48ff75e8ffc029f1e814e163369d64ed80916c7
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/66124
Reviewed-by: Hudson CI
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
8 years agoctf: Ignore invalid clock description elements
Alexandre Montplaisir [Mon, 8 Feb 2016 21:45:28 +0000 (16:45 -0500)] 
ctf: Ignore invalid clock description elements

The clock "offset" element is supposed to be signed integer constant[1].
LTTng uses 64-bit integers for this, however there is a bug with current
versions where this can be set to values above 2^63.

Right now Trace Compass refuses to open the trace and reports the
invalid value as a CTF error. We could accomodate and still load these
traces, ignoring the invalid definitions.

[1] This is not explicitly mentionned in the spec, but it was discuted
    with the spec's authors, and it should be updated in the future.

Change-Id: I44fc4f4b90c1c9f046c03d83d63cea2fee8bb57f
Signed-off-by: Alexandre Montplaisir <alexmonthy@efficios.com>
Reviewed-on: https://git.eclipse.org/r/66159
Reviewed-by: Hudson CI
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
8 years agoanalysis: Show thread priority in critical path view
Geneviève Bastien [Tue, 9 Feb 2016 03:21:33 +0000 (22:21 -0500)] 
analysis: Show thread priority in critical path view

This effectively allows the critical path to become a priority
inversion explorer too.

Note: Priority inversions should not happen in modern OSes. But
users can badly set their thread priority. This patch highlights
that error.

Change-Id: I4db2f5b69329a0b868758a35f15ee6cfc13fa43c
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/66063
Reviewed-by: Hudson CI
8 years agoanalysis: allow critical path view to display tooltips
Geneviève Bastien [Tue, 9 Feb 2016 02:55:43 +0000 (21:55 -0500)] 
analysis: allow critical path view to display tooltips

Change-Id: I0a155c89ed3ebdac7b4d97c2a7399d478c5d6df5
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/66062
Reviewed-by: Hudson CI
8 years agoanalysis.graph: allow workers to return additional information
Geneviève Bastien [Tue, 9 Feb 2016 02:50:13 +0000 (21:50 -0500)] 
analysis.graph: allow workers to return additional information

This information can be displayed as tooltips or extra columns in the views.

Change-Id: Ib992ffa0d32b89c5811510e5a9a3270a1df1003d
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/66060
Reviewed-by: Hudson CI
This page took 0.051178 seconds and 5 git commands to generate.