[ https://issues.apache.org/jira/browse/DIRMINA-709?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Emmanuel Lecharny closed DIRMINA-709. ------------------------------------- > PENDING session is removed and added endlessly -- garbage allocation and > high CPU usage problem > ------------------------------------------------------------------------------------------------ > > Key: DIRMINA-709 > URL: https://issues.apache.org/jira/browse/DIRMINA-709 > Project: MINA > Issue Type: Bug > Components: Core > Affects Versions: 2.0.0-M4 > Environment: Debian Linux, kernel 2.6.24 > Reporter: Victor N > Assignee: Edouard De Oliveira > Fix For: 2.0.0-RC1 > > > (This problem was discussed in mail lists, I will copy it here). > Seems I have found a bug with IoSession - I can see that a "PREPARING" > session is not removed correctly from queue. > When some session is in PREPARING state, it is removed from > "removingSessions" queue but right after that it is added to this queue > again! So this session is added to the queue and removed from it until > forever. > As a result, this give us significant garbage allocation, so CPU spends most > of time in garbage collector (I can see this is JConsole). > I see comments there in AbstractPollingIoProcessor class: > private int remove() { > ... > case PREPARING: > // Retry later if session is not yet fully initialized. > // (In case that Session.close() is called before > addSession() is processed) > scheduleRemove(session); > return removedSessions; > ... > } > I have added logging to this code, and I can see that the SAME session is > removed and added again and again. > Can somebody explain this logic please? Why don't we remove the PENDING > session? Or maybe is there a workaround for this. > Sorry, I can not provide a test for this issue, but it is reproduced almost > every day at out production servers under some load. Maybe, you can reproduce > it by adding a delay in addSession() and then closing the session during this > delay. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.