You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-commits@incubator.apache.org by "Maarten Coene (JIRA)" <ji...@apache.org> on 2007/10/22 21:36:50 UTC

[jira] Created: (IVY-628) split the cache into an downloaded artifacts cache and a metadata cache

split the cache into an downloaded artifacts cache and a metadata cache
-----------------------------------------------------------------------

                 Key: IVY-628
                 URL: https://issues.apache.org/jira/browse/IVY-628
             Project: Ivy
          Issue Type: Improvement
          Components: Core
            Reporter: Maarten Coene
             Fix For: 2.0


At the moment, the cache contains two types of data:
- downloaded artifacts (jars and ivy files)
- metadata files containing resolve results
It would be good if we could specify different cache locations for each type.

We could also for instance make these locations configurable with the following properties:
ivy.cache.artifacts
ivy.cache.metadata
The default for both properties could be the current Ivy cache directory.

Maarten

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


[jira] Assigned: (IVY-628) split the cache into an downloaded artifacts cache and a metadata cache

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

Xavier Hanin reassigned IVY-628:
--------------------------------

    Assignee: Xavier Hanin

> split the cache into an downloaded artifacts cache and a metadata cache
> -----------------------------------------------------------------------
>
>                 Key: IVY-628
>                 URL: https://issues.apache.org/jira/browse/IVY-628
>             Project: Ivy
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Maarten Coene
>            Assignee: Xavier Hanin
>             Fix For: 2.0
>
>
> At the moment, the cache contains two types of data:
> - downloaded artifacts (jars and ivy files)
> - metadata files containing resolve results
> It would be good if we could specify different cache locations for each type.
> We could also for instance make these locations configurable with the following properties:
> ivy.cache.artifacts
> ivy.cache.metadata
> The default for both properties could be the current Ivy cache directory.
> Maarten

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


[jira] Resolved: (IVY-628) split the cache into an downloaded artifacts cache and a metadata cache

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

Xavier Hanin resolved IVY-628.
------------------------------

       Resolution: Fixed
    Fix Version/s:     (was: 2.0)
                   2.0.0-beta-1

I've fixed the bug I found yesterday, and added some documentation. I marked this issue as fixed even though it may be improved as part of IVY-399 progress.

> split the cache into an downloaded artifacts cache and a metadata cache
> -----------------------------------------------------------------------
>
>                 Key: IVY-628
>                 URL: https://issues.apache.org/jira/browse/IVY-628
>             Project: Ivy
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Maarten Coene
>            Assignee: Xavier Hanin
>             Fix For: 2.0.0-beta-1
>
>
> At the moment, the cache contains two types of data:
> - downloaded artifacts (jars and ivy files)
> - metadata files containing resolve results
> It would be good if we could specify different cache locations for each type.
> We could also for instance make these locations configurable with the following properties:
> ivy.cache.artifacts
> ivy.cache.metadata
> The default for both properties could be the current Ivy cache directory.
> Maarten

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


[jira] Commented: (IVY-628) split the cache into an downloaded artifacts cache and a metadata cache

Posted by "Xavier Hanin (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/IVY-628?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12546907 ] 

Xavier Hanin commented on IVY-628:
----------------------------------

I've implemented a first version of this improvement, which seems to work properly, but I'm not happy with the implementation so far. 

The two parts of the cache are now:
- a repository cache, where Ivy caches data collected from dependency resolver, such as the downloaded artifacts and module descriptor, and meta information such as the artifact origin and resolver name
- a dependency resolution cache, where Ivy puts files with the result of a resolution process

I've created two interfaces corresponding to each kind of Cache, and tried to use these interfaces as often as possible. The main area where the two kind are needed together is for the resolve itself.

By default the two locations are still in the defaultCache, but one can use ivy.cache.repository and ivy.cache.resolution to choose a different root (relative to the base cache directory).

What I still don't like is how responsibilities are shared between cache and settings, and that a base cache directory can be defined almost in all tasks (see my e-mail on ivy-dev on this subject). I would really like to make CacheManager a first level citizen in Ivy realm, and configure cache per resolver (see IVY-399) or globally per settings, but outside the settings element, and rather in a cache element.

Thus I don't mark this issue as resolved yet, waiting for feedback about this kind of thing (and especially to remove base cache definition from everywhere but the settings).

> split the cache into an downloaded artifacts cache and a metadata cache
> -----------------------------------------------------------------------
>
>                 Key: IVY-628
>                 URL: https://issues.apache.org/jira/browse/IVY-628
>             Project: Ivy
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Maarten Coene
>            Assignee: Xavier Hanin
>             Fix For: 2.0
>
>
> At the moment, the cache contains two types of data:
> - downloaded artifacts (jars and ivy files)
> - metadata files containing resolve results
> It would be good if we could specify different cache locations for each type.
> We could also for instance make these locations configurable with the following properties:
> ivy.cache.artifacts
> ivy.cache.metadata
> The default for both properties could be the current Ivy cache directory.
> Maarten

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


[jira] Commented: (IVY-628) split the cache into an downloaded artifacts cache and a metadata cache

Posted by "Xavier Hanin (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/IVY-628?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12547518 ] 

Xavier Hanin commented on IVY-628:
----------------------------------

It seems that I need to add some unit test, the split in real life is not working properly due to a problem to produce the report in cache when resolution is changed. Shouldn't be too hard to fix though, I just don't have time right now

> split the cache into an downloaded artifacts cache and a metadata cache
> -----------------------------------------------------------------------
>
>                 Key: IVY-628
>                 URL: https://issues.apache.org/jira/browse/IVY-628
>             Project: Ivy
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Maarten Coene
>            Assignee: Xavier Hanin
>             Fix For: 2.0
>
>
> At the moment, the cache contains two types of data:
> - downloaded artifacts (jars and ivy files)
> - metadata files containing resolve results
> It would be good if we could specify different cache locations for each type.
> We could also for instance make these locations configurable with the following properties:
> ivy.cache.artifacts
> ivy.cache.metadata
> The default for both properties could be the current Ivy cache directory.
> Maarten

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