deliverable/tracecompass.git
10 years agotmf: Transition custom parsers to the new location
Alexandre Montplaisir [Thu, 6 Feb 2014 21:10:36 +0000 (16:10 -0500)] 
tmf: Transition custom parsers to the new location

If a user has some custom parsers defined in their workspace, and
they upgrade past 1b7d4a9, we can still look in the old location
so that they do not have to re-create the parsers manually.

Change-Id: Idd1c5f92f58d925be7494c75b8d1b668f487c119
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21651
Tested-by: Hudson CI
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
IP-Clean: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
10 years agotmf: Move the Statistics tests to the analysis API
Alexandre Montplaisir [Mon, 10 Feb 2014 23:56:08 +0000 (18:56 -0500)] 
tmf: Move the Statistics tests to the analysis API

Also, the TmfLostEventsStatisticsTest was not even run by default,
let's enable it!

Change-Id: I7585691432e136cebc87f659c167fb696030c68c
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21789
Tested-by: Hudson CI
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
IP-Clean: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
10 years agotmf: Protect HTNode accesses with a reader/writer lock
Alexandre Montplaisir [Mon, 27 Jan 2014 21:59:58 +0000 (16:59 -0500)] 
tmf: Protect HTNode accesses with a reader/writer lock

Some funny things could happen in multi-thread scenarios, especially
if someone is querying the node while it is being written to disk.

Change-Id: Icbd5e1a5edf3118f9aa8e4827ba865b9b6f6f8ab
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21159
Tested-by: Hudson CI
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
IP-Clean: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
10 years agotmf: Synchronize accesses to HistoryTree's latest branch
Alexandre Montplaisir [Tue, 28 Jan 2014 18:38:50 +0000 (13:38 -0500)] 
tmf: Synchronize accesses to HistoryTree's latest branch

Most accesses are punctual, so the synchronizedList wrapper covers
for most of them. There is the iteration in readNode() that is done
by reader threads, but it's usually very quick, so there was not
really much advantage of using a ReadWriteLock - considering the
downside of more verbose locking.

Also made the list final and avoided exposing it publicly - the
backend object only needs the root node.

Change-Id: I46c315d46a5e96d609c052d4cedb4404fe765176
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21219
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
IP-Clean: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Hudson CI
10 years agoctf: Metadata add support for incremental reading
Matthew Khouzam [Tue, 21 Jan 2014 15:47:22 +0000 (10:47 -0500)] 
ctf: Metadata add support for incremental reading

Metadata now supports parseText and parseTextFragment
ParseText is needed to parse the initial trace
ParseFragment is needed to avoid reparsing in full the trace

Change-Id: If1857e0b5bb07e5a97cb635bcd7b960b9037f2c7
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20881
Tested-by: Hudson CI
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
IP-Clean: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
10 years agotmf: TmfStatisticsModule fixes
Alexandre Montplaisir [Fri, 7 Feb 2014 20:03:04 +0000 (15:03 -0500)] 
tmf: TmfStatisticsModule fixes

Following exta review comments on https://git.eclipse.org/r/#/c/19412/

Change-Id: Ie0200ee7beb6a69c450220ade97a7f5bfe570649
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21700
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
IP-Clean: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Hudson CI
10 years agoTMF: Renamed o.e.l.tmf.analysis.xml.core.tests stubs folder to common
Geneviève Bastien [Wed, 29 Jan 2014 20:08:28 +0000 (15:08 -0500)] 
TMF: Renamed o.e.l.tmf.analysis.xml.core.tests stubs folder to common

As mentioned as a last comment in the https://git.eclipse.org/r/#/c/19914/
patch, this folder contains test traces and not implementation stubs so
the name is more fit as "common".

Change-Id: Ia274cb4de2086a0311ffea4a1b95f6407d584b77
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/21294
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>

10 years agotmf: Store the ID in the state system itself
Alexandre Montplaisir [Tue, 4 Feb 2014 22:53:18 +0000 (17:53 -0500)] 
tmf: Store the ID in the state system itself

Many components already refer to state systems with an ID, might
as well store it in the state system object itself for better
encapsulation.

Beyond the SSID pun, I like having it *not* be getId(), because that
quickly becomes confusing with IAnalysisModule.getId() (even though
those two values are usually the same).

Change-Id: I51babc177f54b4f8af66544e6c75be53da56b6c4
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21540
Tested-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
10 years agotmf: Cleanup TmfStatisticsViewer
Alexandre Montplaisir [Mon, 3 Feb 2014 21:46:03 +0000 (16:46 -0500)] 
tmf: Cleanup TmfStatisticsViewer

Some elements were supposedly used "for streaming", but now we
actually support steaming, and it's done through the analysis
module, so we can remove them.

Change-Id: I1d4b5ed49c7dc112d1904f050be6145814b58924
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21538
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>

10 years agotmf: Add a waitForCompletion() with no parameter to analysis modules
Alexandre Montplaisir [Thu, 6 Feb 2014 16:16:28 +0000 (11:16 -0500)] 
tmf: Add a waitForCompletion() with no parameter to analysis modules

This avoids having to instantiate useless NullProgressMonitor's we
can't cancel anyway.

Change-Id: Ibe9464315c7d957722817f9332e1024ab18e9609
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21629

10 years agoTMF: Add memory usage chart for UST traces with libc events enabled
Geneviève Bastien [Tue, 14 Jan 2014 18:35:41 +0000 (13:35 -0500)] 
TMF: Add memory usage chart for UST traces with libc events enabled

It uses the date in the memory usage state system module to display in a xy
chart the memory used by the threads of the system.

Change-Id: Ifd435c318be20b19c8c1367a431c82f0a7152ea2
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20629
Tested-by: Hudson CI
10 years agotmf: Handle empty traces with the abstract state provider
Alexandre Montplaisir [Wed, 5 Feb 2014 19:20:31 +0000 (14:20 -0500)] 
tmf: Handle empty traces with the abstract state provider

Traces with state systems using the AbstractTmfStateProvider (ie,
all of them) would not get closed correctly if no event was ever
received in the provider - currentEvent would remain null, and the
closing step would be skipped.

This is probably an artifact back from the time where history backends
were optional. Now the closing step should always be run, and if we do
not have a valid end time to define, simply use 0. The dummy state
system will go from MIN_VALUE to 0, and since it will have absolutely
no data in it, it really doesn't matter.

Change-Id: Ia36d7bb2cce0b5712825043c7d9becd85cd7ec35
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21576
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>

10 years agotmf : fix for CtfIterator getCurrentEvent()
Florian Wininger [Thu, 6 Feb 2014 18:58:57 +0000 (13:58 -0500)] 
tmf : fix for CtfIterator getCurrentEvent()

This function is very costly and is called 3 times per event.
The previous CurrentEvent is cached to accelerate the process of building the state system

Benchmark for the TMF sample trace (13.4 Mo with 697343 events) :

Before :
Build of the state system : 8.896 s
Call of createEvent function : 2 091 982

After :
Build of the state system : 6.829 s
Call of createEvent function : 697 343

Benckmark with a 100Mo kernel trace :
Before : 48.1s
After : 38.0s

Possible gain of the state system building time : 23 %

Change-Id: Ibee6509dc378503ad672ca038b3ab17273a11966
Signed-off-by: Florian Wininger <florian.wininger@polymtl.ca>
Reviewed-on: https://git.eclipse.org/r/21480
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
IP-Clean: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Hudson CI
10 years agotmf: Correctly dispose sub-analyses in the statistics module
Alexandre Montplaisir [Wed, 5 Feb 2014 22:54:59 +0000 (17:54 -0500)] 
tmf: Correctly dispose sub-analyses in the statistics module

Change-Id: I459aed9a7b22173d996afffdb29530a5abb44740
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21591
Tested-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
IP-Clean: Genevieve Bastien <gbastien+lttng@versatic.net>

10 years agotmf: Avoid hanging when waiting on a cancelled analysis
Alexandre Montplaisir [Wed, 5 Feb 2014 22:09:25 +0000 (17:09 -0500)] 
tmf: Avoid hanging when waiting on a cancelled analysis

Also bumped the timeout on await() to 500 ms. It means that, on
average, the user will have to wait 250 ms after clicking on
the cancel button actually cancels the running analysis. 1 ms
was burning CPU cycles for nothing.

Change-Id: Id716c761a60b97d53d6809d0457e4f30b63f655e
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21590
Tested-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
IP-Clean: Genevieve Bastien <gbastien+lttng@versatic.net>

10 years agoTMF: Correction to the state system explorer to avoid AttributeNotFound
Geneviève Bastien [Wed, 5 Feb 2014 22:26:52 +0000 (17:26 -0500)] 
TMF: Correction to the state system explorer to avoid AttributeNotFound

The order of the state systems at creation is not the same as the order at
update, so a tree item was update with the wrong state system.

Change-Id: Ifa75109a1cfd7f47440bf364c11c56cc947a8523
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/21589
Reviewed-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
IP-Clean: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Tested-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Tested-by: Hudson CI
10 years agoTMF: Add the XML analysis module source
Florian Wininger [Wed, 6 Nov 2013 18:43:38 +0000 (13:43 -0500)] 
TMF: Add the XML analysis module source

This patch allows the importation of XML files from the TMF GUI. Analysis
modules described in those XML files will appear under the trace, if
applicable.

Change-Id: I0910946f35fe921c22b319b77ab2aefeb385edf3
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Signed-off-by: Florian Wininger <florian.wininger@polymtl.ca>
Reviewed-on: https://git.eclipse.org/r/20155
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>

10 years agoChange versions to be >= to 2.2.1 release
Marc-Andre Laperle [Wed, 5 Feb 2014 15:40:15 +0000 (10:40 -0500)] 
Change versions to be >= to 2.2.1 release

Change-Id: I852212efc92802fda0da2cfe86de0692704006b7
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/21569
Tested-by: Hudson CI
10 years agotmf: Fix AOOB exception in Import Trace Package
Marc-Andre Laperle [Fri, 31 Jan 2014 21:56:49 +0000 (16:56 -0500)] 
tmf: Fix AOOB exception in Import Trace Package

The exception would happen when canceling the overwrite prompt
(by clicking on the X in the dialog corner).

Change-Id: I070806b0221ef15c68c7973d777ff66487f57f78
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/21419
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>

10 years agoTmf: Add analysis module for memory usage with UST libc wrapper
Geneviève Bastien [Tue, 14 Jan 2014 18:33:36 +0000 (13:33 -0500)] 
Tmf: Add analysis module for memory usage with UST libc wrapper

An analysis builds a state system for the memory used per thread in a UST
trace with libc events enabled.

It is based on a draft by Matthew Khouzam.

Change-Id: I18566e0eb6cd87103571f17ce88006b6edc53fd5
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/19878
Tested-by: Hudson CI
10 years agoTMF: Add color alternance to xy line charts
Geneviève Bastien [Fri, 3 Jan 2014 21:36:29 +0000 (16:36 -0500)] 
TMF: Add color alternance to xy line charts

Change-Id: I99d97d9152e3057d1ddadcc05a32cbddf8ca2b89
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/20343
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Hudson CI
10 years agolttng: Add missing entry in swtbot tests' build.properties
Alexandre Montplaisir [Tue, 4 Feb 2014 22:55:10 +0000 (17:55 -0500)] 
lttng: Add missing entry in swtbot tests' build.properties

Change-Id: If0468136e5f5b44e97efd36bc2e2c2c0e6a3a0d2
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
10 years agotmf: Move TmfTraceType and custom parsers to tmf.core
Alexandre Montplaisir [Thu, 30 Jan 2014 23:36:14 +0000 (18:36 -0500)] 
tmf: Move TmfTraceType and custom parsers to tmf.core

This required splitting the UI-specific functionality in
TmfTraceType into a new TmfTraceTypeUiUtils, which remains
in the tmf.ui plugin.

Change-Id: I717cb1676fec530efa99be1056be4010b6ca8bd7
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21360
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>

10 years agolttng: Use switch-on-strings for the kernel state provider
Alexandre Montplaisir [Mon, 3 Feb 2014 23:53:31 +0000 (18:53 -0500)] 
lttng: Use switch-on-strings for the kernel state provider

Gogo Java 7!

Change-Id: Id293fd0b8c6af5f854f9f325de0da4443ef4e2bb
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21491
Tested-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
IP-Clean: Patrick Tasse <patrick.tasse@gmail.com>

10 years agotmf: Support live-reading in the Statistics View
Alexandre Montplaisir [Wed, 29 Jan 2014 20:59:42 +0000 (15:59 -0500)] 
tmf: Support live-reading in the Statistics View

Change-Id: If73fecccc2a889308343d7222f93e6b0bd3b4512
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21417
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>

10 years agotmf: Add a waitForInitialization() to TmfStatisticsModule
Alexandre Montplaisir [Wed, 29 Jan 2014 20:58:49 +0000 (15:58 -0500)] 
tmf: Add a waitForInitialization() to TmfStatisticsModule

Similar to the method in TmfStateSystemAnalysisModule.

Change-Id: I302bce5f46cf535d739ebf50d7abbd7cc5454ba8
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21416
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
10 years agolttng: Check the state system query results more rigorously
Alexandre Montplaisir [Mon, 3 Feb 2014 23:20:34 +0000 (18:20 -0500)] 
lttng: Check the state system query results more rigorously

Defensive programming dictates we should check for integrity,
correctness, etc. at different layers. And not just once and
assume it's safe at every other levels.

In this case, if we had a trace with a sched_process_free event
arriving first for a new TID, the CFV would assume the Exec_name
attribute would be already set, which was not the case.

Change-Id: I0489937be07282c236978a07e48c4221160bb1d9
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21490
Tested-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
IP-Clean: Patrick Tasse <patrick.tasse@gmail.com>

10 years agotmf: Make StateValueType and TimeRange exceptions into runtime ones
Alexandre Montplaisir [Mon, 3 Feb 2014 22:38:17 +0000 (17:38 -0500)] 
tmf: Make StateValueType and TimeRange exceptions into runtime ones

After much deliberating, here's a suggestion to make
StateValueTypeException and TimeRangeException subclasses of
RuntimeException instead.

The rationale is that it is possible to check for these in advance
(via ITmfStateValue.getType(), and ITmfStateSystem.getCurrentEndTime()).
If the caller does not do these checks correctly, he deserves getting
a runtime exception in the face.

In practice, somebody doing it correctly would always have to wrap it
in a redudant try/catch, saying "I checked for this, I know, throw new
IllegalStateException()", which kind of defeats the purpose of a
checked exception.

The existing code catching those exceptions will continue to work fine,
it remains possible to do so, but new code may decide to skip it.

Change-Id: I76210eef25a47d3f54c93d9e259c82fc99d80375
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21489
Tested-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
IP-Clean: Patrick Tasse <patrick.tasse@gmail.com>

10 years agotmf: Remove TmfStatsUpdatedSignal
Alexandre Montplaisir [Thu, 14 Nov 2013 04:55:08 +0000 (23:55 -0500)] 
tmf: Remove TmfStatsUpdatedSignal

Rework the Statistics view to not need a specially-crafted signal to get
its results. Just make it spawn a thread for queries, like every other
view does. This is now easier to do, due to the fact that we can
.waitForCompletion() on the statistics analysis module object.

Change-Id: I4a88146113fe7e8f951cc235940353310de2ec99
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/19413
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
10 years agotmf: Move the trace statistics to the analysis framework
Alexandre Montplaisir [Tue, 12 Nov 2013 00:47:03 +0000 (19:47 -0500)] 
tmf: Move the trace statistics to the analysis framework

By itself, this patch causes a bug where the Statistics view will not be
populated unless it is re-opened *after* the trace has been loaded.

The patch following this one fixes this (and unfortunately, that one
depends on changes from this one, so it wasn't trivial to re-order them).

Change-Id: I8b6c59d70e84fdc5971665e1e78d096e3abe30db
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/19412
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Hudson CI
10 years agotmf: Rework analysis-returning methods in ITmfTrace
Alexandre Montplaisir [Mon, 27 Jan 2014 19:33:20 +0000 (14:33 -0500)] 
tmf: Rework analysis-returning methods in ITmfTrace

Make the analysis accesses thread-safe: each access is now encased
in a synchronized block (or using the synchronizedMap wrapper).

This also implies exposing only Iterable's in the interface, which
is a good practice in general. If a caller could get a reference to
the map (even through unmodifiableMap), we'd have no guarantee that
they'd correctly lock their iterations, which could result in a
concurrent access error if the map is modified internally at the
same time.

Change-Id: Ibd2f1130ab9839ad20c3df3ac7c92119754ecc42
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21152
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
10 years agolttng: Support live updating of Control Flow view and Resources view
Patrick Tasse [Mon, 27 Jan 2014 22:20:13 +0000 (17:20 -0500)] 
lttng: Support live updating of Control Flow view and Resources view

- Update AbstractTimeGraphView to use a list as input element and to
support a time graph content provider.

- Update AbstractTimeGraphView to create one separate BuildThread per
trace in the trace set. Change buildEventList method to be called
independently for each trace in the trace set.

- Update AbstractTimeGraphView to use a CopyOnWriteArrayList for the
entry list of each trace, and stop exposing the entry list map to
subclasses. Add interface to add or remove a list of entries to/from the
entry list of a trace.

- Update AbstractTimeGraphView refresh method to refresh the time graph
combo or time graph viewer when possible and avoid calling setInput,
which resets all tree elements.

- Update AbstractTimeGraphView to perform packing of tree columns only
once.

- Add support in TimeGraphEntry to update the end time and to replace
the last event with an event starting at the same time.

- Fix TmfEventsEditor sending TmfTraceClosed with null trace.

- Update ControlFlowView and ResourcesView to build the event list for a
trace continuously in a loop until its state system build is complete.
Support continuous updating of the entry list and its tree structure,
and partial updating of the event list at each iteration.

- Update state system history range query to allow punctual time range.

Change-Id: I440c369ddef703f8fbceac221cfea0c0699348c0
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/21161
Tested-by: Hudson CI
Reviewed-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
10 years agotmf: Add support for time graph content provider
Patrick Tasse [Fri, 24 Jan 2014 18:01:06 +0000 (13:01 -0500)] 
tmf: Add support for time graph content provider

The time graph viewer now supports a time graph content provider. This
allows for the input to be something else than an array of
ITimeGraphEntry elements. The refresh method can now detect new or
removed root elements freshly derived from the input by the time graph
content provider.

Change-Id: I4aeaf670d5d459a5a176a6e12645932c13c59413
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/21160
Reviewed-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>

10 years agoTMF: Update the target platforms
Geneviève Bastien [Wed, 29 Jan 2014 17:22:50 +0000 (12:22 -0500)] 
TMF: Update the target platforms

Setting target platform in the most recent kepler caused problems because
some plugin references were updated. This patch fixes it.

Change-Id: Ie9fc5911a4104654d7e0022dd28c878a97311017
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/21282
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
IP-Clean: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Hudson CI
10 years agotmf: Move creation of timer to init method instead of constructor
Bernd Hufmann [Mon, 27 Jan 2014 14:04:46 +0000 (09:04 -0500)] 
tmf: Move creation of timer to init method instead of constructor

By the doing this, the timer is not running when creating trace
instances for validation.

Also, cancel timer when trace is disposed.

Change-Id: I4269ddb1faba771c039649d92f2e1477076668c8
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/21138
Reviewed-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Hudson CI
10 years agoFix building tmf/lttng help plugins using Luna platform
Marc-Andre Laperle [Tue, 28 Jan 2014 18:16:12 +0000 (13:16 -0500)] 
Fix building tmf/lttng help plugins using Luna platform

The ant tasks from Mylyn moved so the classpath needed
to be updated.

Change-Id: I92b7b96a3225712a80332f84ad6e589298eda710
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/21214
Tested-by: Hudson CI
Reviewed-by: Alexander Kurtakov <akurtako@redhat.com>
IP-Clean: Alexander Kurtakov <akurtako@redhat.com>
Tested-by: Alexander Kurtakov <akurtako@redhat.com>
10 years agotmf: Fix reading HTNodes while the tree is being built
Alexandre Montplaisir [Thu, 23 Jan 2014 05:16:03 +0000 (00:16 -0500)] 
tmf: Fix reading HTNodes while the tree is being built

A race condition could occur if a node would receive a query
after closeThisNode() was called, but before it was finished
writing itself to disk (in writeSelf()). It would result in
BufferUnderflowException's.

The important part of this patch is moving the "isDone" from
closeThisNode() to the end of writeSelf().

Also renamed the flag to isOnDisk, to reflect better what it
represents. It wouldn't even need to be written to the file,
but since a change in the file format is due soon-ish, might
as well change it all at the same time.

Change-Id: Ib22e3d56538057c7b3fd6655d32597b524fd8b28
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/20984
Tested-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
IP-Clean: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
10 years agotmf: Cleanup TmfEventProvider
Alexandre Montplaisir [Thu, 23 Jan 2014 20:50:59 +0000 (15:50 -0500)] 
tmf: Cleanup TmfEventProvider

* Move the fDataQueue, as well as the whole concept of queue size, to
  the test stub. it was only used by that.
* Make some protected fields private.
* Change the ArrayList of pending requests to a linked list. We never
  access a specific index directly, and insertions are faster in a
  linked list.
* Remove fireRequest() from the interface, it should only be used
  internally.
* Remove queueBackgroundRequest(), it's not used anymore (this also
  removes the need for the dispatchRequest() method).

Change-Id: Ie9d2706f90d0afec1b01a35f2684c00eb83217fe
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/20911
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>

10 years agotmf: Make TransientState really re-entrant
Alexandre Montplaisir [Thu, 23 Jan 2014 23:25:40 +0000 (18:25 -0500)] 
tmf: Make TransientState really re-entrant

Wrap all reading and writing methods under a reader-writer lock.
This will allow much better consistency when querying a state
system while it is being built.

It was also required to rework the hasInfoAbout() method. Since the
state of the TransientState can change between two method invocations,
it was prone to race conditions. Now it will return the interval it
had at the time, if there is one.

Change-Id: I1a34e410eea1a02288c5388d1983e9c16ce56f0f
Reviewed-on: https://git.eclipse.org/r/21019
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
IP-Clean: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
10 years agotmf: Dispose analysis modules when the trace is disposed
Alexandre Montplaisir [Fri, 24 Jan 2014 22:06:22 +0000 (17:06 -0500)] 
tmf: Dispose analysis modules when the trace is disposed

There was a dispose() method in the StateSystemAnalysisModule, but
it came from HistoryBuilder, and was about disposing the state provider
only (which we do once the event request is complete, since we will not
need to insert more events in it). It had nothing to do with
ITmfComponent.dispose().

Add a "real" dipose method to the state system module, which disposes
the state system that was built, if any. And then also call that dispose
from TmfTrace.dispose().

This way the analysis module should:
- Correctly deregister from the TmfSignalManager, to be eligible for
  garbage collection.
- Dispose the statesystem object it contains, correctly closing any
  backend files.

Change-Id: I5836009f7172ab4ef9a41e22b5dbc0ef2fccbe4e
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21072

10 years agotmf: Bug 426468: Wrong filter label provider in Control Flow view
Patrick Tasse [Thu, 23 Jan 2014 17:00:17 +0000 (12:00 -0500)] 
tmf: Bug 426468: Wrong filter label provider in Control Flow view

Change-Id: I328db35ffdcb8f872a3277eb309472fd311aab97
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/21005
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>

10 years agorcp: Add missing swtchart to RCP
Marc-Andre Laperle [Fri, 24 Jan 2014 16:55:35 +0000 (11:55 -0500)] 
rcp: Add missing swtchart to RCP

Change-Id: Ic24fa1f8c53ba6aa94b2c08290aebff6e82fc5d3
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/21066
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>

10 years agotmf: Synchronize interval accesses in InMemoryBackend
Alexandre Montplaisir [Fri, 24 Jan 2014 23:05:29 +0000 (18:05 -0500)] 
tmf: Synchronize interval accesses in InMemoryBackend

Should fix concurrency issues when doing construction + queries
simultaneously on an InMemoryBackend.

Change-Id: Ie6339d1c1e58f72991be7f594f9361943b2fb051
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21074
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>

10 years agotmf: Add a waitForInitialization() to the state system module
Alexandre Montplaisir [Fri, 24 Jan 2014 21:06:28 +0000 (16:06 -0500)] 
tmf: Add a waitForInitialization() to the state system module

With this, views and other components can be notified when the
underlying state system is instantiated and ready to be queried.

Change-Id: I0802d95b3311b1124803b55b3c5dd617e26afa48
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21069
Tested-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
IP-Clean: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
10 years agotmf: Enforce non-null state sytem backends
Alexandre Montplaisir [Thu, 23 Jan 2014 19:27:21 +0000 (14:27 -0500)] 
tmf: Enforce non-null state sytem backends

We now have a NullBackend for when we want a state system that
discards past intervals.

Change-Id: I8e62412ceac3c72c104cb512adb40b85b1ce9ce9
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/21018
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
10 years agoctf: Enable the CTF-testsuite tests
Alexandre Montplaisir [Thu, 23 Jan 2014 04:56:58 +0000 (23:56 -0500)] 
ctf: Enable the CTF-testsuite tests

But blacklist those we know we don't currently pass. At least this
allows us to run the ones we *do* pass in CI.

Change-Id: I020d9f1ddfa5537c6f65c5f497c080541e4fb1ba
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/20983
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
10 years agotmf: Change to timer based coalescing of background requests
Bernd Hufmann [Fri, 17 Jan 2014 20:19:26 +0000 (15:19 -0500)] 
tmf: Change to timer based coalescing of background requests

Coalescing of foreground requests are still based on signal
synchronization using start and end sync signal. Foreground requests
are meant for short and higher priority requests and need to be
processed right away.

Change-Id: Iae0cf886e4c932b1620a13057a9e1242702e2089
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20824
Tested-by: Hudson CI
Reviewed-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
IP-Clean: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Tested-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
10 years agoTMF: Add XML state provider analysis module and XML utilities
Florian Wininger [Tue, 14 Jan 2014 02:36:50 +0000 (21:36 -0500)] 
TMF: Add XML state provider analysis module and XML utilities

This patch adds an analysis module for an XML-defined state system. It does not
actually build the state system, the details will come in another patch.

It also contains the [stripped-down] XML schema definition and the methods to
read an XML file and validate it.

Change-Id: I2a3d322f96742d995912700d223e2ecb9e07d8f5
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Signed-off-by: Florian Wininger <florian.wininger@polymtl.ca>
Reviewed-on: https://git.eclipse.org/r/19914
Tested-by: Hudson CI
Reviewed-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
10 years agolttng: Don't use deprecated elements in poms.
Alexander Kurtakov [Wed, 22 Jan 2014 07:59:42 +0000 (09:59 +0200)] 
lttng: Don't use deprecated elements in poms.

Get rid of the "[WARNING] Parameter tasks is deprecated, use target
instead" from the build.

Change-Id: I69b3eac788f13dab3f20cb11e8c372833c03ba72
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
Reviewed-on: https://git.eclipse.org/r/20925
Tested-by: Hudson CI
10 years agotmf: Fix usage of readNode() method in HistoryTree
Alexandre Montplaisir [Tue, 21 Jan 2014 19:58:02 +0000 (14:58 -0500)] 
tmf: Fix usage of readNode() method in HistoryTree

Small fix to 726106b, the optimization to not look into the branch
in memory (when looking for a HTNode) should only be done when we
know the node is not in memory. The general case should use the
method from HistoryTree itself.

Change-Id: I3ce114f7f84f14f2dc892c400ab6aa768bab18fc
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/20902
Tested-by: Hudson CI
10 years agotmf: Don't return -1 for interval end times in the TransientState
Alexandre Montplaisir [Tue, 21 Jan 2014 21:09:36 +0000 (16:09 -0500)] 
tmf: Don't return -1 for interval end times in the TransientState

This might make sense locally to this class, but no other component
anywhere uses -1 for an end time value. Plus it breaks the contract
checked at construction that the end time should always be > the start
time.

Instead of returning a dummy -1, return the latest known end time. This
is just as "wrong", but eventually we could augment to API to indicate
if it read a real interval or a current state.

Change-Id: Ia9a23f990dce3301c721996e75219bc34ed1164f
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/20903
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
IP-Clean: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
10 years agotmf: Use a foreground request for partial history checkpoints
Alexandre Montplaisir [Mon, 20 Jan 2014 19:07:33 +0000 (14:07 -0500)] 
tmf: Use a foreground request for partial history checkpoints

This will ensure the checkpoint request does not get coalesced with
the "real" state history building request, as this would lead to
a deadlock.

Change-Id: I69f6ab52a75a3344a60869ac2b11332581afddd3
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/20836
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
IP-Clean: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Hudson CI
10 years agotmf: Change IAnalysisModule.getOutputs to return an Iterable
Alexandre Montplaisir [Fri, 17 Jan 2014 21:59:57 +0000 (16:59 -0500)] 
tmf: Change IAnalysisModule.getOutputs to return an Iterable

instead of a List, there is nothing that forces storing the
outputs as a list.

Change-Id: Id0a7105a3e2cce118cc0d48558a85ed2f5f85b0e
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/20777
Tested-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
IP-Clean: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
10 years agotmf: fix coalesced request handling with one request
Bernd Hufmann [Fri, 17 Jan 2014 20:17:47 +0000 (15:17 -0500)] 
tmf: fix coalesced request handling with one request

... and request with certain time stamp and certain number of events
requested. This will read less events than requested events.

This patch contains fix and test for it

Change-Id: I4a88308bccf858f9f8d112b8602cf80f02db06eb
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20771
Tested-by: Hudson CI
Reviewed-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
IP-Clean: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Tested-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
10 years agoTmf: Port the LTTng Kernel state system to an analysis module
Geneviève Bastien [Thu, 14 Nov 2013 16:47:11 +0000 (11:47 -0500)] 
Tmf: Port the LTTng Kernel state system to an analysis module

And update the views accordingly.

Change-Id: I90975b5772db24a784d99d2d0232f6f76a8e5e03
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/19432
Reviewed-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
IP-Clean: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Tested-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
10 years agotmf: Remove redundant CtfTmfEvent.getEventName() method
Alexandre Montplaisir [Fri, 17 Jan 2014 20:23:35 +0000 (15:23 -0500)] 
tmf: Remove redundant CtfTmfEvent.getEventName() method

ITmfEvent.getType().getName() does the same thing, and is in the
interface.

Change-Id: Ia19b190cda820863955504bf980139a17e1a7ded
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/20770
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Hudson CI
10 years agotmf: Send relevant signals in a separate thread
Bernd Hufmann [Mon, 13 Jan 2014 20:29:41 +0000 (15:29 -0500)] 
tmf: Send relevant signals in a separate thread

This reverts commit be7fc7f31ae52da752bf021e828b9992ebfc44e4.
Instead the TmfTraceUpdatedSignal is sent using the
broadcastAsync() method of the TmfComponent in the case
that the trace index already exists. This ensures that the
the TmfTraceRangeUpdatedSignal is handled by all signal
handlers before handling TmfTraceUpdateSignal.

Also, the TmfTraceRangeUpdated signal is sent using the
broadcastAsync() method instead of spawning an own thread.

Change-Id: Idfb6660da90cbe7f21db8d838e2f151c008756a0
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20591
Tested-by: Hudson CI
IP-Clean: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Tested-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
IP-Clean: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
10 years agotmf: Add asynchronous way of broadcasting signals
Bernd Hufmann [Mon, 13 Jan 2014 20:02:25 +0000 (15:02 -0500)] 
tmf: Add asynchronous way of broadcasting signals

For that the signal manager queues signals and executes them in order
of arrival in a separate thread.

Unit tests were added for the signal manager.

Change-Id: If3957bcdcc30dec3f25804586c6ee5aa10a102a1
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20590
Reviewed-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
IP-Clean: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Tested-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Tested-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
10 years ago[TMF] Optimize TimeGraphControl.drawState() method.
Xavier Raynaud [Thu, 16 Jan 2014 08:56:28 +0000 (09:56 +0100)] 
[TMF] Optimize TimeGraphControl.drawState() method.

Gain on Linux after optimization is about 25%.
Note that it changes a bit the way events are displayed.

Change-Id: I0ff437c0d4ba832de73d6deb04c381015393617d
Signed-off-by: Xavier Raynaud <xavier.raynaud@kalray.eu>
Reviewed-on: https://git.eclipse.org/r/20415
Tested-by: Hudson CI
10 years agoTMF: Add abstract XY line chart viewer on top of SWT chart
Geneviève Bastien [Wed, 24 Apr 2013 12:35:01 +0000 (08:35 -0400)] 
TMF: Add abstract XY line chart viewer on top of SWT chart

* Provides a viewer for line charts. With this viewer, all series will use
the same X axis data.
* It automatically creates series as values are provided for a key.
* A tooltip shows the values for each series at the selected x position.
* Series can also be manually added and the returned series can be modified,
so while "line chart" is the default representation, it can be used in other
ways.

Change-Id: I90b63e1dc87a1dbd49d37ff99fb22e04eecad2be
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/20342
Reviewed-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Tested-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
IP-Clean: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
10 years ago[TMF] add public getters for fields used in TimeGraphControl.drawState
Xavier Raynaud [Tue, 14 Jan 2014 08:56:36 +0000 (09:56 +0100)] 
[TMF] add public getters for fields used in TimeGraphControl.drawState

TimeGraphControl.drawState() is protected, and therefore can be overridden.
Unfortunately, this method uses two private fields: fEventColorMap and
fTimeGraphProvider. Therefore, in order to be able to override this method,
these two fields must have accessible getters.

Change-Id: Ia82d422f33b8a8c205b761104340b4d293fae33a
Signed-off-by: Xavier Raynaud <xavier.raynaud@kalray.eu>
Reviewed-on: https://git.eclipse.org/r/20424
Tested-by: Hudson CI
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
IP-Clean: Patrick Tasse <patrick.tasse@gmail.com>

10 years agotmf: Add a ITmfStateSystem.waitUntilBuilt() method with timeout
Alexandre Montplaisir [Wed, 15 Jan 2014 18:46:36 +0000 (13:46 -0500)] 
tmf: Add a ITmfStateSystem.waitUntilBuilt() method with timeout

This allows callers to "unblock" after a specified delay has elapsed.
Extremely simple to implement, as CountDownLatch already has a method
to do exactly this!

Change-Id: I1029729e8197b0f69af6072f4563145badeb3048
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/20678
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
IP-Clean: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Hudson CI
10 years agotmf: Split ITmfStateSystem.waitUntilBuilt() in separate methods
Alexandre Montplaisir [Wed, 15 Jan 2014 18:27:49 +0000 (13:27 -0500)] 
tmf: Split ITmfStateSystem.waitUntilBuilt() in separate methods

Decouple the return value of waitUntilBuilt() in a new isCancelled()
method, so that it can be checked independently.

This is because we are planning to add a new waitUntilBuilt(long) method
with a timeout, and that one will have to return a boolean to indicate
if it returned due to the thing being built, or due to the timeout.

We will still want to check for the cancellation state afterwards.
Furthermore, it would be very confusing if both methods (with and without
the timeout) returned a boolean that meant different things.

Change-Id: If7a954d2368d55c99e30e31e17e39b39bca5f432
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/20677
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
IP-Clean: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Hudson CI
10 years agoTMF: Add Analysis API documentation
Geneviève Bastien [Wed, 18 Dec 2013 14:46:38 +0000 (09:46 -0500)] 
TMF: Add Analysis API documentation

Change-Id: Ia8dfc072073555d4f969ec811c07c420fe3a60af
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/20125
Tested-by: Hudson CI
Reviewed-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
IP-Clean: Alexandre Montplaisir <alexmonthy@voxpopuli.im>

10 years agoLttng: smoke test
Matthew Khouzam [Wed, 6 Nov 2013 20:12:37 +0000 (15:12 -0500)] 
Lttng: smoke test

This is a sample of how to make a test using SWTBOT.
It should be a useful stepping stone to gain test
case coverage and control what we're reading.

The test features:
* opening a trace
* navigation in a trace
* testing lttng kernel perspective

What would be nice to have:
* closing a trace
* test views more thoroughly
* all the other functional test on all the trace types!

Change-Id: I2cb6b7a7f5a78206dfa8429f4e0111249ae9d933
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/18154

10 years agotmf: Work around SWTBot test hang in the presence of GTK3
Marc-Andre Laperle [Thu, 9 Jan 2014 05:31:00 +0000 (00:31 -0500)] 
tmf: Work around SWTBot test hang in the presence of GTK3

With GTK3, the SWTBot test hangs as soon as a Display.syncExec
is called on the swtbot thread (non-UI) which seems like a bug
in SWT. For now, GTK3 can be disabled by setting the SWT_GTK3
environment variable to 0. Note that for Kepler GTK2 is still
used by default so this is not a problem.

Change-Id: I4a5026f616ab032d95e90e4ad80cea665d552d3c
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20407
Tested-by: Hudson CI
10 years agotmf: Add proper API to statesystem.backends.historytree
Alexandre Montplaisir [Mon, 16 Dec 2013 23:04:25 +0000 (18:04 -0500)] 
tmf: Add proper API to statesystem.backends.historytree

Change-Id: If860d2ba73cb001eb72dedb95c3982604b4c1b8e
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/19885
Tested-by: Hudson CI
10 years agotmf: Deprecate TmfStateSystemFactory and HistoryBuilder
Alexandre Montplaisir [Fri, 3 Jan 2014 19:06:38 +0000 (14:06 -0500)] 
tmf: Deprecate TmfStateSystemFactory and HistoryBuilder

State systems should be built from the analysis module now.

Change-Id: I4230c6514e4f0810108c65364fc66f0aa71d20bd
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/20466
Tested-by: Hudson CI
10 years agotmf: add TmfTimestampFormat tests
Matthew Khouzam [Thu, 9 Jan 2014 15:27:49 +0000 (10:27 -0500)] 
tmf: add TmfTimestampFormat tests

test 07, 007, 0.07, .007, 0.007, 0.00000007 ...
Basic regression tests for the parser

Change-Id: I458828d3ae8c74214b2281d95ac1bb51c44eb40f
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20447
Tested-by: Hudson CI
10 years agoctf: Reformat and remove debugs in the CTF-Grammar
Etienne Bergeron [Fri, 6 Dec 2013 00:13:09 +0000 (19:13 -0500)] 
ctf: Reformat and remove debugs in the CTF-Grammar

This is mostly a grammar reformatting.
My plan is to change some rules in the grammar.
I prefer to land the reformatting before playing with the grammar.

The 'debug_print' is useless in the grammar.
Antlr (and antlrworks) provides a really good debugger for debugging
this kind of grammar.

Change-Id: I6e590a168d2e5ff4502c36ea2fd8523b723d4399
Signed-off-by: Etienne Bergeron <etienne.bergeron@gmail.com>
Reviewed-on: https://git.eclipse.org/r/19483
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
10 years agotmf: Add additional check for callsites
Matthew Khouzam [Thu, 19 Dec 2013 19:55:23 +0000 (14:55 -0500)] 
tmf: Add additional check for callsites

Change-Id: I41b4dfb24290a71ec33e4a57469dcf3e7739a481
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20074
Reviewed-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
IP-Clean: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Tested-by: Hudson CI
10 years agolttng: remove unnecessary slashes in session path for remote import
Bernd Hufmann [Wed, 8 Jan 2014 13:08:11 +0000 (08:08 -0500)] 
lttng: remove unnecessary slashes in session path for remote import

Bug 425082

Change-Id: Ie94e3d7125ce7ce1dc1ef2ab85a0d76738a67dae
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20377
Tested-by: Hudson CI
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
IP-Clean: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
10 years agotmf: Add missing UI test arg for SWTBot on Mac
Marc-Andre Laperle [Fri, 10 Jan 2014 20:11:02 +0000 (15:11 -0500)] 
tmf: Add missing UI test arg for SWTBot on Mac

Change-Id: I4a66d932ef93b24028d62117d620709d9b37f024
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20522
Tested-by: Hudson CI
10 years agotmf: Fix parsing bugs in TmfTimestampFormat
Patrick Tasse [Fri, 10 Jan 2014 19:25:08 +0000 (14:25 -0500)] 
tmf: Fix parsing bugs in TmfTimestampFormat

- Fix bug when parsing a string with no sub-second delimiter
- Fix bug when parsing when the pattern has no sub-second delimiter
- Fix bug when parsing a string starting with a period without seconds
- Fix bug when formatting Long.MIN_VALUE
- Simplify code by letting base class only format the date/time pattern
- Improve and correct Javadoc comments

Change-Id: I2d5bcde62cc8f173c1340e84decbd9d770fc723f
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/20520
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Hudson CI
10 years agotmf: Add proper public methods to internal.tmf.core.statesystem
Alexandre Montplaisir [Fri, 13 Dec 2013 22:01:09 +0000 (17:01 -0500)] 
tmf: Add proper public methods to internal.tmf.core.statesystem

Those are already in internal packages, so they will not be API methods,
but by making them public, it makes it possible to access them directly for
unit testing.

Change-Id: I320317302ed6d6ccfc414d3666d2b657c1cd3207
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/19884
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
IP-Clean: Matthew Khouzam <matthew.khouzam@ericsson.com>

10 years agotmf RCP: Rename extracted folder of the trace viewer
Simon Marchi [Wed, 8 Jan 2014 22:04:13 +0000 (17:04 -0500)] 
tmf RCP: Rename extracted folder of the trace viewer

It's good to have the directory named similarly to the archive.

Change-Id: I2654990b43025aadeba0e9f11fb483e5e039efd1
Signed-off-by: Simon Marchi <simon.marchi@polymtl.ca>
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/20406
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
10 years agoTMF: Add o.e.l.tmf.analysis.xml.[core|ui] to TMF feature
Geneviève Bastien [Tue, 19 Nov 2013 15:09:34 +0000 (10:09 -0500)] 
TMF: Add o.e.l.tmf.analysis.xml.[core|ui] to TMF feature

Change-Id: Ia53a49b162de2b0649721f158b24b746a2e93d6c
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/20132
Reviewed-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
IP-Clean: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
10 years agolttng: Use state system analysis module instead of factory in tests
Bernd Hufmann [Mon, 16 Dec 2013 15:31:45 +0000 (10:31 -0500)] 
lttng: Use state system analysis module instead of factory in tests

Change-Id: I2bb988f4476b71a48bedc71d8c3c4a8f87a61ea9
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/19867
Tested-by: Hudson CI
Reviewed-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
IP-Clean: Alexandre Montplaisir <alexmonthy@voxpopuli.im>

10 years agotmf: Merge HistoryBuilder into the state system analysis module
Bernd Hufmann [Thu, 5 Dec 2013 15:57:22 +0000 (10:57 -0500)] 
tmf: Merge HistoryBuilder into the state system analysis module

The state system analysis module acts as kind of a state system
factory. There is no need to have a separate TmfStateSystemFactory
and HistoryBuilder class anymore.

Merging the history builder functionality into the state system
analysis module also allows for better handling of requests to
analyze the trace. Now it's possible to cancel the analysis job.

Later on, when all state systems (e.g. statistic state systems) are
built using the state system analysis module, the TmfStateSystemFactory
and HistoryBuilder can be removed.

Change-Id: Ibb52b20b6fdb16b665ad318cda04cf92d19ccf72
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/19441
Tested-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
10 years agolttng: Inherit null annotations
Alexandre Montplaisir [Mon, 6 Jan 2014 21:35:39 +0000 (16:35 -0500)] 
lttng: Inherit null annotations

Maven does not do the "@NonNull -> unannotated" conversion automatically,
so it pretty much requires this setting to be enabled.

Change-Id: Ia99faebcaa127552dd5926d010d7cd2bad082d29
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/20309
Tested-by: Hudson CI
10 years agoUnify naming and bump releng-site version.
Alexander Kurtakov [Thu, 9 Jan 2014 13:57:56 +0000 (15:57 +0200)] 
Unify naming and bump releng-site version.

Change-Id: I98445db9d2c8ab6e3eaa018c169b010516021779
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
Reviewed-on: https://git.eclipse.org/r/20440
Tested-by: Hudson CI
10 years agoTMF: Add possibility to overwrite the path of the workspace root
Geneviève Bastien [Wed, 8 Jan 2014 19:20:45 +0000 (14:20 -0500)] 
TMF: Add possibility to overwrite the path of the workspace root

By setting the environment variable TRACING_RCP_ROOT on the command line,
it uses this path as the workspace root instead of the default user home
directory.

Change-Id: I3cadec5b162e1dac99c4b5b9f30308a21c351f50
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/20400
Tested-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
10 years agoTmf: Add the concept of module source to the Analysis API
Geneviève Bastien [Wed, 30 Oct 2013 16:33:07 +0000 (12:33 -0400)] 
Tmf: Add the concept of module source to the Analysis API

This allows for other ways to define analysis modules than having to describe
them in the plugin.xml file.  For example, an XML file can be the source of an
analysis module.

The source itself needs to be described in the plugin.xml, using another
element of the analysis extension point.

Each module source will typically have its matching helper class to create the
instance of a module when required and to be able to access available modules
for different trace types before the trace is instantiated.

A default implementation of the IAnalysisModuleSource interface and its helper
are provided for the modules advertised through the extension point: the
TmfAnalysisModuleSourceConfigElement and TmfAnalysisModuleHelperConfigElement.

Change-Id: Ia2c7142704aa6b2a326bba9d2bf0734954427b7e
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/19433
Tested-by: Hudson CI
Reviewed-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
IP-Clean: Alexandre Montplaisir <alexmonthy@voxpopuli.im>

10 years agoFix JDT Null annotations bug occuring in Luna builds.
Roland Grunberg [Wed, 8 Jan 2014 17:11:05 +0000 (12:11 -0500)] 
Fix JDT Null annotations bug occuring in Luna builds.

The JDT compiler fails when a method implemented from an interface whose
class is tagged with @NonNullByDefault, redefines @NonNull on the
parameter. It seems the interface itself must redundantly define
@NonNull for the condition to get carried over.

Change-Id: I8663c0ba9994466f1cb9f56b1746a59051b4c8ef

10 years agotmf: Fix NPE in TmfTraceType when refreshing custom trace types
Patrick Tasse [Thu, 19 Dec 2013 23:25:30 +0000 (18:25 -0500)] 
tmf: Fix NPE in TmfTraceType when refreshing custom trace types

Since custom trace types are dynamic, TmfTraceType is constantly
refreshing the list of custom trace types whenever the available trace
types are requested.

Before reloading the list, the current custom trace types are removed
from the list. Because this refresh can occur concurrently in different
threads, a NullPointerException can occur.

This patch ensures that the custom parser list is only populated once at
initialization. The list is then modified dynamically as custom parsers
are created, edited or removed.

The list of custom trace types therefore no longer needs to be refreshed
when getting the available trace types.

Change-Id: I08bd0c351b0f573fe36e0fa7fd1aad62de81f1e5
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/20093
Tested-by: Hudson CI
10 years agotmf: Tweak ITmfStateSystemAnalysisModule
Alexandre Montplaisir [Mon, 6 Jan 2014 20:12:42 +0000 (15:12 -0500)] 
tmf: Tweak ITmfStateSystemAnalysisModule

- Decouple it from TmfStateSystemAnalysisModule, rename it to
  ITmfAnalysisModuleWithStateSystems. An analysis module could
  expose state systems independently of using the abstract class
  or not.

- Change the Map return to separate methods. I'm not very happy
  about getStateSystemId(), but the State System Explorer currently
  needs it. Ideally, the ID could be stored in the state system itself,
  so that this method would not be needed.

Change-Id: I1fcf20384c00b47578309451691f59fd0f438053
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/20247
Tested-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
IP-Clean: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
10 years agotmf: add abstract bar chart viewer on top using swt chart
Bernd Hufmann [Thu, 19 Dec 2013 20:19:46 +0000 (15:19 -0500)] 
tmf: add abstract bar chart viewer on top using swt chart

It also adds a special histogram tooltip provider as well as an
example implementation (New Histogram view) that uses the swt chart
framework.

Change-Id: I03890eaf7a79ef7d9a48c23b26c49dca9544ea50
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20085
Tested-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
IP-Clean: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
10 years agotmf: add dragging support with middle mouse button
Bernd Hufmann [Thu, 2 Jan 2014 15:50:55 +0000 (10:50 -0500)] 
tmf: add dragging support with middle mouse button

This will update the current time window based on the new range.

Change-Id: If0f796d61c73d82294c832dacf9458e645e7b7ab
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20217
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
IP-Clean: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
10 years agotmf: add simple tooltip provider for swt charts
Bernd Hufmann [Thu, 19 Dec 2013 19:41:20 +0000 (14:41 -0500)] 
tmf: add simple tooltip provider for swt charts

Change-Id: Iaddea6d160fac65f781863b7f07a797cdbb3c072
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20156
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
IP-Clean: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
10 years agotmf: add mouse wheel zoom to swt charts
Bernd Hufmann [Thu, 19 Dec 2013 19:31:33 +0000 (14:31 -0500)] 
tmf: add mouse wheel zoom to swt charts

Change-Id: I3e53e76b98423c0ca938a530eb33358627f9852b
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20083
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
IP-Clean: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
10 years agotmf: add mouse drag zoom provider for swt charts
Bernd Hufmann [Thu, 19 Dec 2013 18:56:28 +0000 (13:56 -0500)] 
tmf: add mouse drag zoom provider for swt charts

Change-Id: Id9fb2b32f37953890f288c90c2f908d5d8b396dc
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20082
Tested-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
IP-Clean: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
10 years agotmf: add mouse selection provider for swt charts
Bernd Hufmann [Thu, 19 Dec 2013 18:42:15 +0000 (13:42 -0500)] 
tmf: add mouse selection provider for swt charts

Change-Id: Ibe73dfdea14354c149ae411e09f1f39a4a7a6220
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20081
Tested-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
IP-Clean: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
10 years agoTMF: Fix a bug in UI when refreshing analysis elements under traces
Geneviève Bastien [Tue, 17 Dec 2013 20:16:46 +0000 (15:16 -0500)] 
TMF: Fix a bug in UI when refreshing analysis elements under traces

As it was, each time we would get the available analysis of a trace, it was
constructing new objects and those objects were not the same as the trace
element's children.

Also, while implementing the XML analysis source, the analysis were not
refreshed when the trace didn't already have children.

This patch uses the refreshChildren method to refresh analysis and outputs and
makes new objects are not constructed every time.

Change-Id: Ia33f7e20fea918a76bb341b808d074d3b1e130f2
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/20004
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
IP-Clean: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Hudson CI
10 years agotmf: Refactor resource change listener in project model
Patrick Tasse [Mon, 16 Dec 2013 22:03:42 +0000 (17:03 -0500)] 
tmf: Refactor resource change listener in project model

- Move resource change listener from every project element to the
project registry

- Create project in a WorkspaceModifyOperation to combine the many
resource change events into one.

- Only refresh the projects affected by the resource change event

- Update the model in the current thread on refresh

- Move the refresh from the project element to the base model element

- Refreshing the model children moved from the navigator content
provider to each specific model element

- Change getChildren from navigator content provider to simply return
the children list, that is now updated separately (as described above)

- Remove project from the registry when it is deleted

- Modify project registry to populate the model when getting a project
element for the first time

- Remove various unnecessary refresh of the model accordingly

- Do all modifications from the rename trace handler in a single
workspace modify operation

- Refresh all affected projects in the select trace type handler

Change-Id: I7e080e6b10617786a715e3cb39bf297b79168998
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/19882
Tested-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
IP-Clean: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
10 years agotmf: add abstract view and viewer classes for generation of SWT charts
Bernd Hufmann [Thu, 19 Dec 2013 12:10:54 +0000 (07:10 -0500)] 
tmf: add abstract view and viewer classes for generation of SWT charts

Change-Id: I2d83280a63574727ceaf567db501119a7e0b2909
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20080
Tested-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
IP-Clean: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
10 years agotmf: Ensure order of trace updated and trace range updated signals
Bernd Hufmann [Thu, 2 Jan 2014 14:05:41 +0000 (09:05 -0500)] 
tmf: Ensure order of trace updated and trace range updated signals

When the trace index already exists and doesn't need to be build
from scratch the signal TmfTraceUpdatedSignal is sent once in the
method buildIndex() of the TmfCheckpointIndexer. However, buildIndex()
is called from the signal handler of class TmfTrace for the
signal TmfTraceRangeUpdatedSignal. That causes that signal
TmfTraceUpdatedSignal is sent before TmfTraceRangeUpdatedSignal
is processed by all other signal handlers. This causes problems
for example in the Histogram view where the trace end time is not
set correctly because this wrong order of signal handling.

This patch fixes that problem by wrapping the sending of signal
TmfTraceUpdatedSignal in a TmfEventRequest which is only dispatched
by the TmfEventProvider (=TmfTrace) after the first signal
(TmfTraceRangeUpdatedSignal) is processed by all signal handlers.

Change-Id: I96dfdb4cc678722ff5b48a8881c67f5a8c11ff36
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20216
Tested-by: Hudson CI
Reviewed-by: Genevieve Bastien <gbastien+lttng@versatic.net>
IP-Clean: Genevieve Bastien <gbastien+lttng@versatic.net>
Tested-by: Genevieve Bastien <gbastien+lttng@versatic.net>
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
10 years agolttng: Update drag&drop guide for unknown trace type icon
Bernd Hufmann [Fri, 3 Jan 2014 14:05:43 +0000 (09:05 -0500)] 
lttng: Update drag&drop guide for unknown trace type icon

Change-Id: Ibbdc22c69c2a84edfe6bdbb84a407547b9dc6303
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20235
Tested-by: Hudson CI
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
IP-Clean: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
10 years agolttng: Remove some unused images in help
Marc-Andre Laperle [Thu, 2 Jan 2014 20:22:59 +0000 (15:22 -0500)] 
lttng: Remove some unused images in help

Change-Id: I80555f91d737f8e007f89128f04abcf5215b25a9
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/20225
Tested-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
IP-Clean: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
10 years agotracing RCP: Build with Java 7
Alexandre Montplaisir [Thu, 2 Jan 2014 21:35:55 +0000 (16:35 -0500)] 
tracing RCP: Build with Java 7

Change-Id: I6135dccd6d0dce2182c839b9241b68a3d1705881
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/20230
Tested-by: Hudson CI
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
IP-Clean: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
10 years agogdbtrace: Build with Java 7
Alexandre Montplaisir [Thu, 2 Jan 2014 20:35:20 +0000 (15:35 -0500)] 
gdbtrace: Build with Java 7

Change-Id: I411bdd3cdc5ca6335fb8b8bfb95f8927f6235523
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/20228
Tested-by: Hudson CI
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
IP-Clean: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
This page took 0.06481 seconds and 5 git commands to generate.