You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Maxim Muzafarov (Jira)" <ji...@apache.org> on 2019/10/08 13:17:00 UTC

[jira] [Updated] (IGNITE-9165) FindBugs: Methods may fail to close stream in core module

     [ https://issues.apache.org/jira/browse/IGNITE-9165?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Maxim Muzafarov updated IGNITE-9165:
------------------------------------
    Fix Version/s:     (was: 2.8)
                   2.9

> FindBugs: Methods may fail to close stream in core module
> ---------------------------------------------------------
>
>                 Key: IGNITE-9165
>                 URL: https://issues.apache.org/jira/browse/IGNITE-9165
>             Project: Ignite
>          Issue Type: Bug
>          Components: binary
>    Affects Versions: 2.6
>            Reporter: Nikolai Kulagin
>            Assignee: Nikolai Kulagin
>            Priority: Minor
>              Labels: newbie
>             Fix For: 2.9
>
>         Attachments: findbugs-result-apache-ignite[ignite-core]_2018_08_02_12_38_02.html
>
>
> The method creates an IO stream object, does not assign it to any fields, pass it to other methods that might close it, or return it, and does not appear to close the stream on all paths out of the method.  This may result in a file descriptor leak.
> Example:
>  
> {code:java}
> // GridCacheAbstractLoadTest#GridCacheAbstractLoadTest()
> try {
>  props.load(new FileReader(GridTestUtils.resolveIgnitePath(
>  "modules/tests/config/cache-load.properties")));
> }
> catch (IOException e) {
>  throw new RuntimeException(e);
> }{code}
>  
>  One of possible solutions:
> {code:java}
> try (Reader reader = new FileReader(GridTestUtils.resolveIgnitePath(
>     "modules/tests/config/cache-load.properties"))) {
>     props.load(reader);
> }
> catch (IOException e) {
>     throw new RuntimeException(e);
> }{code}
> List of classes in "core" module:
>   
>  +org.apache.ignite.internal:+   
>  * *BinaryContext*#classesInPackage(String)
>  * *GridClientJdkMarshaller*#marshal(Object, int)
>  * *IgniteExplicitImplicitDeploymentSelfTest*$GridDeploymentResourceTestJob#execute()
>  * *OptimizedObjectStreamSelfTest*#testReadLine()
>  * *PageIdDistributionTest*#_testRealHistory()
>  * *HttpIgniteUpdatesChecker*#getUpdates(boolean)
>  * *IpcSharedMemoryNativeLoaderSelfTest*#readStreams(Process)
> +org.apache.ignite:+
>  * *GridCacheAbstractLoadTest*#GridCacheAbstractLoadTest()
>  * *GridTestUtils*.sslContext()



--
This message was sent by Atlassian Jira
(v8.3.4#803005)