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

Valentin Kulichenko commented on IGNITE-2765:
---------------------------------------------

Anton,

I reviewed the changes and have couple of comments:

* When cache is recreated, it's possible that it lready has a different 
configuration than before. I think you should move all the code on lines 
239-265 to {{initCache()}} method and call it inside {{init()}}, as well as 
instead of {{reinitCache()}}.
* I don't like that we wait on reconnect and retry futures indefinitely. This 
can cause HTTP request to hang for a long time, or even forever. I think we 
should have a configurable time out there (e.g., 5sec by default). If it times 
out, we can throw the exception right away without retrying.

Otherwise looks good!

> WebSessionFilter doesn't survive client reconnect
> -------------------------------------------------
>
>                 Key: IGNITE-2765
>                 URL: https://issues.apache.org/jira/browse/IGNITE-2765
>             Project: Ignite
>          Issue Type: Bug
>          Components: websession
>    Affects Versions: 1.5.0.final
>            Reporter: Valentin Kulichenko
>            Assignee: Anton Vinogradov
>            Priority: Critical
>              Labels: community, customer, important
>             Fix For: 1.6
>
>
> If a {{WebSessionFilter}} is started with an embedded client, it is not 
> functional after the client disconnects and reconnects. Any operation throws 
> the exception below.
> {noformat}
> java.lang.IllegalStateException: Cache has been closed or destroyed: WebCache
>  at 
> org.apache.ignite.internal.processors.cache.GridCacheGateway.enter(GridCacheGateway.java:160)
>  at 
> org.apache.ignite.internal.processors.cache.IgniteCacheProxy.onEnter(IgniteCacheProxy.java:1958)
>  at 
> org.apache.ignite.internal.processors.cache.IgniteCacheProxy.get(IgniteCacheProxy.java:855)
>  at 
> org.apache.ignite.cache.websession.WebSessionFilter.doFilter0(WebSessionFilter.java:341)
> {noformat}
> We should get a new instance of the cache when the exception is thrown.



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

Reply via email to