ctf: Make CTFTrace and its reader classes AutoCloseable
authorAlexandre Montplaisir <alexmonthy@voxpopuli.im>
Thu, 10 Apr 2014 22:53:21 +0000 (18:53 -0400)
committerAlexandre Montplaisir <alexmonthy@voxpopuli.im>
Wed, 16 Apr 2014 22:35:36 +0000 (18:35 -0400)
commitdd9752d5687d4ab0608be303486d46483db70a3c
treea9d6534a88ce8f79213b09b92c6cceab68902fd2
parent91e7f94672f914dd2db6ad69451dc346628bbc41
ctf: Make CTFTrace and its reader classes AutoCloseable

Basically just replace their dipose() method with close(). This
small change allows us to benefit from the compiler warnings for
when a resource is allocated locally in a method but never disposed.

Which then allows to find leaks. Many leaks ! Many tests were leaking
CTFTraceReaders and the like, but the biggest offender is probably the
validation methods in LttngKernelTrace and LttngUstTrace: trying to
validate a non-CTF trace could potentially leak a number of file
descriptors equal to the number of files in that trace(!)

Change-Id: I7e54416b608992a14a7bfd3cd29ffb8dc3cee898
Signed-off-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Reviewed-on: https://git.eclipse.org/r/24986
Tested-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
17 files changed:
org.eclipse.linuxtools.ctf.core.tests/src/org/eclipse/linuxtools/ctf/core/tests/ctftestsuite/CtfTestSuiteTests.java
org.eclipse.linuxtools.ctf.core.tests/src/org/eclipse/linuxtools/ctf/core/tests/headless/ReadTrace.java
org.eclipse.linuxtools.ctf.core.tests/src/org/eclipse/linuxtools/ctf/core/tests/headless/ReadTraceBenchmark.java
org.eclipse.linuxtools.ctf.core.tests/src/org/eclipse/linuxtools/ctf/core/tests/trace/CTFTraceGrowingStreamTest.java
org.eclipse.linuxtools.ctf.core.tests/src/org/eclipse/linuxtools/ctf/core/tests/trace/CTFTraceGrowingTest.java
org.eclipse.linuxtools.ctf.core.tests/src/org/eclipse/linuxtools/ctf/core/tests/trace/IOstructgenTest.java
org.eclipse.linuxtools.ctf.core.tests/src/org/eclipse/linuxtools/ctf/core/tests/types/EventDeclarationTest.java
org.eclipse.linuxtools.ctf.core/src/org/eclipse/linuxtools/ctf/core/trace/CTFTrace.java
org.eclipse.linuxtools.ctf.core/src/org/eclipse/linuxtools/ctf/core/trace/CTFTraceReader.java
org.eclipse.linuxtools.ctf.core/src/org/eclipse/linuxtools/ctf/core/trace/StreamInputPacketReader.java
org.eclipse.linuxtools.ctf.core/src/org/eclipse/linuxtools/ctf/core/trace/StreamInputReader.java
org.eclipse.linuxtools.lttng2.kernel.core/src/org/eclipse/linuxtools/lttng2/kernel/core/trace/LttngKernelTrace.java
org.eclipse.linuxtools.lttng2.ust.core/src/org/eclipse/linuxtools/lttng2/ust/core/trace/LttngUstTrace.java
org.eclipse.linuxtools.tmf.ctf.core.tests/src/org/eclipse/linuxtools/tmf/ctf/core/tests/CtfIteratorTest.java
org.eclipse.linuxtools.tmf.ctf.core.tests/src/org/eclipse/linuxtools/tmf/ctf/core/tests/CtfTmfEventTest.java
org.eclipse.linuxtools.tmf.ctf.core/src/org/eclipse/linuxtools/tmf/ctf/core/CtfIterator.java
org.eclipse.linuxtools.tmf.ctf.core/src/org/eclipse/linuxtools/tmf/ctf/core/CtfTmfTrace.java
This page took 0.028099 seconds and 5 git commands to generate.