[ 
https://issues.apache.org/jira/browse/IGNITE-4103?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15606283#comment-15606283
 ] 

ASF GitHub Bot commented on IGNITE-4103:
----------------------------------------

GitHub user samaitra opened a pull request:

    https://github.com/apache/ignite/pull/1186

    IGNITE-4103 IgniteDataStreamer doesn't throw exception if cache is de…

    …stroyed

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/samaitra/ignite IGNITE-4103

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/ignite/pull/1186.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1186
    
----
commit 400ff7394a04bc4fbcd018d0aba468a42ccf5b50
Author: samaitra <saikat.mai...@gmail.com>
Date:   2016-10-25T19:46:40Z

    IGNITE-4103 IgniteDataStreamer doesn't throw exception if cache is destroyed

----


> IgniteDataStreamer doesn't throw exception if cache is destroyed
> ----------------------------------------------------------------
>
>                 Key: IGNITE-4103
>                 URL: https://issues.apache.org/jira/browse/IGNITE-4103
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>    Affects Versions: 1.7
>            Reporter: Valentin Kulichenko
>            Assignee: Saikat Maitra
>            Priority: Critical
>             Fix For: 1.8
>
>         Attachments: StreamerTest.java
>
>
> Test reproducing the issue is attached.
> When a streamer streams the data and someone concurrently destroys the cache, 
> {{addData}} doesn't throw an exception. Code continues to work and a lot of 
> messages like this appear in the log:
> {noformat}
> [12:20:38,451][ERROR][main][CacheObjectBinaryProcessorImpl] Failed to get 
> partition
> {noformat}
> The problematic code is in {{IgniteCacheObjectProcessorImpl.partition(...)}} 
> method:
> {code}
> try {
>     return cctx != null ?
>         cctx.affinity().partition(obj, false) :
>         ctx.kernalContext().affinity().partition0(ctx.cacheName(), obj, null);
> }
> catch (IgniteCheckedException e) {
>     U.error(log, "Failed to get partition");
>     return  -1;
> }
> {code}
> There are two issues here:
> # Exception is completely ignored, it's not even printed out in {{U.error}}.
> # The exception should be actually rethrown so that streamer can stop adding 
> data.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to