You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Rob Davies (JIRA)" <ji...@apache.org> on 2007/02/25 08:14:04 UTC

[jira] Commented: (AMQ-1082) Improve Kaha freeList

    [ https://issues.apache.org/activemq/browse/AMQ-1082?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_38571 ] 

Rob Davies commented on AMQ-1082:
---------------------------------

Hi Albert,
Is this still the case ? I'm sure this was fixed a week or so ago

cheers,

Rob

> Improve Kaha freeList
> ---------------------
>
>                 Key: AMQ-1082
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1082
>             Project: ActiveMQ
>          Issue Type: Improvement
>    Affects Versions: 4.2.0
>            Reporter: jk@penguinsfan.com
>         Assigned To: Rob Davies
>             Fix For: 4.2.0
>
>
> This is in kaha.impl.index.IndexManager.java.
> The index currently maintains an in-memory free list.  Each entry costs at least 51 bytes of RAM.  Issue is that the more free space that there is in the file, the more RAM is used (oddly enough).
> I am worried about the case where suppose a producer enqueues millions of messages and then stops.  Now, suppose a consumer dequeues all of the messages (no producers are starting up during this time, so the free entries are not being reclaimed).  Seems like this could use a huge amount of memory.  Yes, 51 MB is not that much, but suppose there are a bunch of consumers and hence a ConsumerMessageRef for each one.  (Maybe I'm missing something....)
> Perhaps this linked list could be pushed into the Kaha store itself, by rewriting the IndexItems on disk to point previous/next free item, thus maintaining this on disk and in place.  For perf reasons, maybe supplement with some caching but that might not really be necessary because the OS cache should help out.
> A lot of the other places in Kaha (such as ListContainerImpl.java) have caches which limit to say 100 cached items, but the free list seems to obviate all of that stuff due to it being essentially unbounded.
> Any thoughts?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.