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

Robert Lazarski resolved RAMPART-337.
-------------------------------------
    Resolution: Fixed

  SimpleTokenStore.add() now opportunistically retires expired tokens
  — any token whose expiry elapsed more than a configurable grace
  period ago (default 5 min) is purged when a new token is added. This
  bounds the in-memory store under sustained STS/SecureConversation
  load (the OOM in the issue). The grace period deliberately keeps
  recently-expired tokens so an in-flight message still referencing
  one doesn't fail with "Unsupported key identification" — the exact
  failure the reporter hit when deleting expired tokens immediately.
  Tokens with no expiry are never purged.

  Added two tests (retirement + grace-period retention); full clean
  -Papache-release verify on JDK 25 passes (all modules + 9 samples).

> Possible memory leak in the STS implmentation due to the exisitng mechanism 
> of storing tokens.
> ----------------------------------------------------------------------------------------------
>
>                 Key: RAMPART-337
>                 URL: https://issues.apache.org/jira/browse/RAMPART-337
>             Project: Rampart
>          Issue Type: Improvement
>            Reporter: Hasini Gunasinghe
>            Assignee: Robert Lazarski
>            Priority: Major
>             Fix For: 2.0.0
>
>         Attachments: ASF.LICENSE.NOT.GRANTED--heap dump screenshot.jpg, 
> RAMPART-337.zip
>
>
> In the current implementation issued tokens are stored in a TokenStore and 
> retiring tokens from the token store is not taken into consideration which 
> can lead to an out of memory situation after sometime.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to