You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "angela (JIRA)" <ji...@apache.org> on 2007/07/05 18:46:05 UTC

[jira] Created: (JCR-1011) JCR2SPI: add configurable cache for Item instances (ItemManager)

JCR2SPI: add configurable cache for Item instances (ItemManager)
----------------------------------------------------------------

                 Key: JCR-1011
                 URL: https://issues.apache.org/jira/browse/JCR-1011
             Project: Jackrabbit
          Issue Type: Improvement
          Components: SPI
            Reporter: angela


Currently the ItemManager implementation uses a simple map with weak keys (ItemState) and weak values (Item) as cache.
Marcel recently suggested to replace this with a more sophisticated cache mechanism that can be configured.

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


[jira] Commented: (JCR-1011) JCR2SPI: add configurable cache for Item instances (ItemManager)

Posted by "Marcel Reutegger (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/JCR-1011?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12556847#action_12556847 ] 

Marcel Reutegger commented on JCR-1011:
---------------------------------------

too bad, my previous comment to this issue was the last thing I did before I went on a two week vacation :-/
  
But you are right, this can also be added in the next release.

> JCR2SPI: add configurable cache for Item instances (ItemManager)
> ----------------------------------------------------------------
>
>                 Key: JCR-1011
>                 URL: https://issues.apache.org/jira/browse/JCR-1011
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-jcr2spi
>            Reporter: angela
>            Assignee: angela
>         Attachments: JCR-1011.patch
>
>
> Currently the ItemManager implementation uses a simple map with weak keys (ItemState) and weak values (Item) as cache.
> Marcel recently suggested to replace this with a more sophisticated cache mechanism that can be configured.

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


[jira] Commented: (JCR-1011) JCR2SPI: add configurable cache for Item instances (ItemManager)

Posted by "Marcel Reutegger (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/JCR-1011?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12553977 ] 

Marcel Reutegger commented on JCR-1011:
---------------------------------------

I consider this a very important improvement to jcr2spi. Without this patch the cache is basically useless because it only uses weak references to Item instances.

I suggest we include this in the 1.4 release.

> JCR2SPI: add configurable cache for Item instances (ItemManager)
> ----------------------------------------------------------------
>
>                 Key: JCR-1011
>                 URL: https://issues.apache.org/jira/browse/JCR-1011
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-jcr2spi
>            Reporter: angela
>            Assignee: angela
>         Attachments: JCR-1011.patch
>
>
> Currently the ItemManager implementation uses a simple map with weak keys (ItemState) and weak values (Item) as cache.
> Marcel recently suggested to replace this with a more sophisticated cache mechanism that can be configured.

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


[jira] Updated: (JCR-1011) JCR2SPI: add configurable cache for Item instances (ItemManager)

Posted by "angela (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-1011?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

angela updated JCR-1011:
------------------------

    Component/s:     (was: jackrabbit-spi)
                 jackrabbit-jcr2spi

> JCR2SPI: add configurable cache for Item instances (ItemManager)
> ----------------------------------------------------------------
>
>                 Key: JCR-1011
>                 URL: https://issues.apache.org/jira/browse/JCR-1011
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-jcr2spi
>            Reporter: angela
>
> Currently the ItemManager implementation uses a simple map with weak keys (ItemState) and weak values (Item) as cache.
> Marcel recently suggested to replace this with a more sophisticated cache mechanism that can be configured.

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


[jira] Updated: (JCR-1011) JCR2SPI: add configurable cache for Item instances (ItemManager)

Posted by "Jukka Zitting (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-1011?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jukka Zitting updated JCR-1011:
-------------------------------

    Fix Version/s:     (was: 1.4)

Dropping from 1.4, looks nice but probably not essential for this release.

> JCR2SPI: add configurable cache for Item instances (ItemManager)
> ----------------------------------------------------------------
>
>                 Key: JCR-1011
>                 URL: https://issues.apache.org/jira/browse/JCR-1011
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-jcr2spi
>            Reporter: angela
>            Assignee: angela
>         Attachments: JCR-1011.patch
>
>
> Currently the ItemManager implementation uses a simple map with weak keys (ItemState) and weak values (Item) as cache.
> Marcel recently suggested to replace this with a more sophisticated cache mechanism that can be configured.

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


[jira] Commented: (JCR-1011) JCR2SPI: add configurable cache for Item instances (ItemManager)

Posted by "Jukka Zitting (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/JCR-1011?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12554017 ] 

Jukka Zitting commented on JCR-1011:
------------------------------------

I'll include this if it's in svn trunk before the end of next week. :-)

I think the main focus for SPI in the 1.4 release is to introduce the jackrabbit-spi interfaces and to showcase the jcr2spi/spi2jcr stack. Optimum performance is IMHO a secondary concern for now, we can always improve on that in subsequent releases.

> JCR2SPI: add configurable cache for Item instances (ItemManager)
> ----------------------------------------------------------------
>
>                 Key: JCR-1011
>                 URL: https://issues.apache.org/jira/browse/JCR-1011
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-jcr2spi
>            Reporter: angela
>            Assignee: angela
>         Attachments: JCR-1011.patch
>
>
> Currently the ItemManager implementation uses a simple map with weak keys (ItemState) and weak values (Item) as cache.
> Marcel recently suggested to replace this with a more sophisticated cache mechanism that can be configured.

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


[jira] Commented: (JCR-1011) JCR2SPI: add configurable cache for Item instances (ItemManager)

Posted by "Julian Reschke (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/JCR-1011?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12566588#action_12566588 ] 

Julian Reschke commented on JCR-1011:
-------------------------------------

I have tested the patch with my SPI implementation and see no regressions. As it doesn't currently make any use of BatchRead, I'm not seeing performance changes either.

+1 for including it so more tests can be done.


> JCR2SPI: add configurable cache for Item instances (ItemManager)
> ----------------------------------------------------------------
>
>                 Key: JCR-1011
>                 URL: https://issues.apache.org/jira/browse/JCR-1011
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-jcr2spi
>            Reporter: angela
>            Assignee: angela
>         Attachments: JCR-1011.patch
>
>
> Currently the ItemManager implementation uses a simple map with weak keys (ItemState) and weak values (Item) as cache.
> Marcel recently suggested to replace this with a more sophisticated cache mechanism that can be configured.

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


[jira] Updated: (JCR-1011) JCR2SPI: add configurable cache for Item instances (ItemManager)

Posted by "angela (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-1011?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

angela updated JCR-1011:
------------------------

    Attachment: JCR-1011.patch

initial draft for an ItemCache interface and an example implementation that uses an LRUMap.
In addition the patch moves the ItemLifeCycleListening from the ItemManager to the ItemCache and enables the ItemManager to listen to creation of ItemStates. The latter would be required to take advantage of the Batch-Read mechanism, that not only creates ItemStates for the 'requested' Item. Up to now those states were created and attached to their hierarchy-entry (both only being addressed by weak references).

Apart from the tests present with the build, i didn't yet perform any sophisticated tests, that measure the effect of the ItemCache.

comments?

> JCR2SPI: add configurable cache for Item instances (ItemManager)
> ----------------------------------------------------------------
>
>                 Key: JCR-1011
>                 URL: https://issues.apache.org/jira/browse/JCR-1011
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-jcr2spi
>            Reporter: angela
>         Attachments: JCR-1011.patch
>
>
> Currently the ItemManager implementation uses a simple map with weak keys (ItemState) and weak values (Item) as cache.
> Marcel recently suggested to replace this with a more sophisticated cache mechanism that can be configured.

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


[jira] Resolved: (JCR-1011) JCR2SPI: add configurable cache for Item instances (ItemManager)

Posted by "angela (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-1011?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

angela resolved JCR-1011.
-------------------------

    Resolution: Fixed

ok. committed (hopefully same as patch...)

> JCR2SPI: add configurable cache for Item instances (ItemManager)
> ----------------------------------------------------------------
>
>                 Key: JCR-1011
>                 URL: https://issues.apache.org/jira/browse/JCR-1011
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-jcr2spi
>            Reporter: angela
>            Assignee: angela
>         Attachments: JCR-1011.patch
>
>
> Currently the ItemManager implementation uses a simple map with weak keys (ItemState) and weak values (Item) as cache.
> Marcel recently suggested to replace this with a more sophisticated cache mechanism that can be configured.

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


[jira] Updated: (JCR-1011) JCR2SPI: add configurable cache for Item instances (ItemManager)

Posted by "angela (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-1011?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

angela updated JCR-1011:
------------------------

    Fix Version/s: 1.4

scheduled for 1.4

> JCR2SPI: add configurable cache for Item instances (ItemManager)
> ----------------------------------------------------------------
>
>                 Key: JCR-1011
>                 URL: https://issues.apache.org/jira/browse/JCR-1011
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-jcr2spi
>            Reporter: angela
>             Fix For: 1.4
>
>         Attachments: JCR-1011.patch
>
>
> Currently the ItemManager implementation uses a simple map with weak keys (ItemState) and weak values (Item) as cache.
> Marcel recently suggested to replace this with a more sophisticated cache mechanism that can be configured.

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


[jira] Assigned: (JCR-1011) JCR2SPI: add configurable cache for Item instances (ItemManager)

Posted by "angela (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-1011?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

angela reassigned JCR-1011:
---------------------------

    Assignee: angela

> JCR2SPI: add configurable cache for Item instances (ItemManager)
> ----------------------------------------------------------------
>
>                 Key: JCR-1011
>                 URL: https://issues.apache.org/jira/browse/JCR-1011
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-jcr2spi
>            Reporter: angela
>            Assignee: angela
>             Fix For: 1.4
>
>         Attachments: JCR-1011.patch
>
>
> Currently the ItemManager implementation uses a simple map with weak keys (ItemState) and weak values (Item) as cache.
> Marcel recently suggested to replace this with a more sophisticated cache mechanism that can be configured.

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


[jira] Updated: (JCR-1011) JCR2SPI: add configurable cache for Item instances (ItemManager)

Posted by "Jukka Zitting (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-1011?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jukka Zitting updated JCR-1011:
-------------------------------

    Fix Version/s: 1.5

> JCR2SPI: add configurable cache for Item instances (ItemManager)
> ----------------------------------------------------------------
>
>                 Key: JCR-1011
>                 URL: https://issues.apache.org/jira/browse/JCR-1011
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-jcr2spi
>            Reporter: angela
>            Assignee: angela
>             Fix For: 1.5
>
>         Attachments: JCR-1011.patch
>
>
> Currently the ItemManager implementation uses a simple map with weak keys (ItemState) and weak values (Item) as cache.
> Marcel recently suggested to replace this with a more sophisticated cache mechanism that can be configured.

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