[
https://issues.apache.org/jira/browse/SHIRO-512?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Francois Papon resolved SHIRO-512.
----------------------------------
Assignee: Francois Papon
Resolution: Resolved
> Race condition in Shiro's web container session timeout handling
> ----------------------------------------------------------------
>
> Key: SHIRO-512
> URL: https://issues.apache.org/jira/browse/SHIRO-512
> Project: Shiro
> Issue Type: Bug
> Components: Authentication (log-in)
> Affects Versions: 1.2.2, 1.2.3
> Reporter: Lenny Primak
> Assignee: Francois Papon
> Priority: Minor
> Fix For: 2.0.0, 1.10.0
>
> Time Spent: 1h 50m
> Remaining Estimate: 0h
>
> I cannot find anywhere that Shiro uses HttpSessionListener to trap
> sessionDestroyed event from the container.
> I believe this is leading to a rare race condition in my application, as
> Shiro thinks the session is still active,
> but in reality, the web session has been destroyed.
> Code: SecurityUtils.getSubject().getPrincipal();
> Relevant bit of stack trace:
> Caused by: org.apache.shiro.session.InvalidSessionException:
> java.lang.IllegalStateException: PWC2778: getAttribute: Session already
> invalidated
> at
> org.apache.shiro.web.session.HttpServletSession.getAttribute(HttpServletSession.java:148)
>
> at
> org.apache.shiro.session.ProxiedSession.getAttribute(ProxiedSession.java:121)
> at
> org.apache.shiro.subject.support.DelegatingSubject.getRunAsPrincipalsStack(DelegatingSubject.java:469)
>
> at
> org.apache.shiro.subject.support.DelegatingSubject.getPrincipals(DelegatingSubject.java:153)
>
> at
> org.apache.shiro.subject.support.DelegatingSubject.getPrincipal(DelegatingSubject.java:149)
>
> Link to the mailing list thread:
> http://shiro-user.582556.n2.nabble.com/Possible-race-condition-in-Shiro-s-web-container-session-timeout-handling-td7580138.html
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]