{"action":"created","issue":{"url":"https://api.github.com/repos/vert-x3/issues/issues/57","labels_url":"https://api.github.com/repos/vert-x3/issues/issues/57/labels{/name}","comments_url":"https://api.github.com/repos/vert-x3/issues/issues/57/comments","events_url":"https://api.github.com/repos/vert-x3/issues/issues/57/events","html_url":"https://github.com/vert-x3/issues/issues/57","id":107498867,"number":57,"title":"Cluster wide async maps not so useful for intended \"things like storing session state\"","user":{"login":"apatrida","id":182340,"avatar_url":"https://avatars.githubusercontent.com/u/182340?v=3","gravatar_id":"","url":"https://api.github.com/users/apatrida","html_url":"https://github.com/apatrida","followers_url":"https://api.github.com/users/apatrida/followers","following_url":"https://api.github.com/users/apatrida/following{/other_user}","gists_url":"https://api.github.com/users/apatrida/gists{/gist_id}","starred_url":"https://api.github.com/users/apatrida/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/apatrida/subscriptions","organizations_url":"https://api.github.com/users/apatrida/orgs","repos_url":"https://api.github.com/users/apatrida/repos","events_url":"https://api.github.com/users/apatrida/events{/privacy}","received_events_url":"https://api.github.com/users/apatrida/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-09-21T12:20:37Z","updated_at":"2015-09-21T12:24:55Z","closed_at":null,"body":"The docs for vert-x core state that cluster-wide async maps:\r\n\r\n\"This makes them really useful for things like storing session state \"\r\n\r\nBut really, if you cannot expire objects from these caches at the same time a session expires, they will continue to build up items in the maps.  There is no `TTL` for cleaning up values.\r\n\r\nAnd if you wanted session state, you would just put it in the clustered session manager.  \r\n\r\nSo then putting much into these maps is dangerous because there is no eviction policy.  You cannot list all items to write your own TTL / eviction handling.  You can only put/remove if you know the item exists.\r\n\r\nAdd `TTL` or other eviction policies like Guava caches have, then this seems useful.  Until then, is a big memory leaker."},"comment":{"url":"https://api.github.com/repos/vert-x3/issues/issues/comments/141956365","html_url":"https://github.com/vert-x3/issues/issues/57#issuecomment-141956365","issue_url":"https://api.github.com/repos/vert-x3/issues/issues/57","id":141956365,"user":{"login":"apatrida","id":182340,"avatar_url":"https://avatars.githubusercontent.com/u/182340?v=3","gravatar_id":"","url":"https://api.github.com/users/apatrida","html_url":"https://github.com/apatrida","followers_url":"https://api.github.com/users/apatrida/followers","following_url":"https://api.github.com/users/apatrida/following{/other_user}","gists_url":"https://api.github.com/users/apatrida/gists{/gist_id}","starred_url":"https://api.github.com/users/apatrida/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/apatrida/subscriptions","organizations_url":"https://api.github.com/users/apatrida/orgs","repos_url":"https://api.github.com/users/apatrida/repos","events_url":"https://api.github.com/users/apatrida/events{/privacy}","received_events_url":"https://api.github.com/users/apatrida/received_events","type":"User","site_admin":false},"created_at":"2015-09-21T12:24:55Z","updated_at":"2015-09-21T12:24:55Z","body":"Is the expected use of these maps that you would go and add Hazelcast configuration parameters to the map by name, setting the eviction policy there?  If so,  are the map name mangled in any way, or if I ask for async map \"Franky\" do I get \"Franky\" or \"vertxFranky1234\"?  "}}